ScaleGrid je služba pro hostování a správu MongoDB pro veřejné a soukromé cloudy. MongoDB (z „humongo us“) je škálovatelná, vysoce výkonná, open source databáze NoSQL od 10gen.
ScaleGrid pomáhá zajišťovat, konfigurovat vysokou dostupnost a obnovení po havárii, zrušit, monitorovat, upgradovat, klonovat, zálohovat a obnovovat vaše nasazení, podporuje MongoDB na AWS, MongoDB na Azure a MongoDB na DigitalOcean. Jednou z výhod ScaleGrid je, že vám poskytuje plný přístup SSH k vašim instancím, což vám umožňuje provozovat server Python na stejném počítači jako server MongoDB. To je velmi užitečné pro vývojové a testovací scénáře. V pěti snadných krocích můžete spustit svůj MongoDB a Python kód.
-
Vytvořte svou instanci MongoDB na ScaleGrid
Postupujte podle těchto pokynů pro začátek a vytvořte si fond počítačů, vytvořte instance MongoDB, načtěte přihlašovací údaje SSH a SSH do instance nebo se v naší dokumentaci nápovědy naučte, jak vytvořit cluster MongoDB.
-
Připojte se k MongoDB a vyplňte svá data
SSH do vaší instance MongoDB. Připojte se k místní instanci MongoDB pomocí vestavěného klienta mongo a spusťte nějaké dotazy:
/usr/bin/mongo MongoDB shell version: 2.0.7 connecting to: test >show dbs config (empty) local (empty) >db.version() 2.0.7 >db.stats() { "db" : "test", "collections" : 0, "objects" : 0, "avgObjSize" : 0, "dataSize" : 0, "storageSize" : 0, "numExtents" : 0, "indexes" : 0, "indexSize" : 0, "fileSize" : 0, "nsSizeMB" : 0, "ok" : 1 }
Pojďme vytvořit fiktivní databázi a vložit některá data do kolekce. „Kolekce“ jsou ekvivalentem relačních tabulek a mohou obsahovat mnoho „dokumentů“, což je ekvivalent řádků v relačním světě:
>use testdb switched to db testdb >db.testcollection.insert({"name":"blah", "value":"humbug"}); >db.testcollection.insert({"name":"blah1", "value":"humbug1"}); >db.find(); { "_id" : ObjectId("50db292013d7f5d141a9cbfb"), "name" : "blah", "value" : "humbug" } { "_id" : ObjectId("50db292913d7f5d141a9cbfc"), "name" : "blah1", "value" : "humbug1" }
-
Nastavení serveru Python
Pokud již na počítači běží server Python, oddělte jej od serveru MongoDB. Poté můžete tento krok přeskočit a přejít ke kroku 4. Pokud nemáte samostatný server Python, můžete spustit Python na počítači MongoDB. Toto je jedna z výhod plného přístupu SSH k vašim strojům MongoDB. Počítače ScaleGrid mají ve výchozím nastavení nainstalovaný Python 2.6.8.
-
Nainstalujte PyMongo
Podpora MongoDB v Pythonu je přes PyMongo. Z příkazového řádku Pythonu zadejte následující příkaz:
>>> import pymongo
-
Spusťte kód Pythonu
Načtěte připojovací řetězec MongoDB z konzoly ScaleGrid na kartě podrobností ve spodní části obrazovky. Pokud používáte svůj Python kód na stejném boxu, můžete použít 127.0.0.1.
Napišme nějaký kód Pythonu pro dotazování dokumentů v kolekci, kterou jsme právě vytvořili. Vytvořte soubor s názvem test.py a vložte do něj níže uvedený kód. Spusťte kód pomocí „python test.py“.
from pymongo import Connection connection = Connection() connection = Connection('localhost', 27017) db = connection.testdb collection = db.testcollection for post in collection.find(): print post
Podrobnější pokyny a příklady naleznete v dokumentaci 10gen o používání Pythonu s Mongo.