MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Premiers pas avec Python et MongoDB

ScaleGrid est un service d'hébergement et de gestion MongoDB pour les clouds publics et privés. MongoDB (de "humongo us") est une base de données NoSQL open source évolutive et hautes performances de 10gen.

ScaleGrid vous aide à provisionner, configurer la haute disponibilité et la reprise après sinistre, déprovisionner, surveiller, mettre à niveau, cloner, sauvegarder et restaurer vos déploiements, en prenant en charge MongoDB sur AWS, MongoDB sur Azure et MongoDB sur DigitalOcean. L'un des avantages de ScaleGrid est qu'il vous donne un accès SSH complet à vos instances, ce qui vous permet d'exécuter votre serveur Python sur la même machine que votre serveur MongoDB. Ceci est extrêmement utile pour les scénarios de développement et de test. En cinq étapes simples, vous pouvez être opérationnel avec votre code MongoDB et Python.

  1. Créez votre instance MongoDB sur ScaleGrid

    Suivez ces instructions de démarrage pour créer votre pool de machines, créer des instances MongoDB, récupérer des identifiants SSH et SSH dans l'instance, ou apprendre à créer un cluster MongoDB grâce à notre documentation d'aide.

  2. Connectez-vous à MongoDB et remplissez vos données

    SSH dans votre instance MongoDB. Connectez-vous à votre instance MongoDB locale à l'aide du client mongo intégré et lancez quelques requêtes :

    
    /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
    }
    

    Créons une base de données factice et insérons des données dans une collection. Les "Collections" sont l'équivalent des tables relationnelles et peuvent contenir de nombreux "documents" qui sont l'équivalent des lignes dans le monde relationnel :

    >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" }
    
  3. Configurer votre serveur Python

    Si vous avez déjà un serveur Python en cours d'exécution sur une machine, séparez-le de votre serveur MongoDB. Vous pouvez ensuite ignorer cette étape et passer à l'étape 4. Si vous ne disposez pas d'un serveur Python distinct, vous pouvez exécuter Python sur la machine MongoDB. C'est l'un des avantages d'avoir un accès SSH complet à vos machines MongoDB. Python 2.6.8 est installé par défaut sur les machines ScaleGrid.

  4. Installer PyMongo

    La prise en charge de MongoDB en Python se fait via PyMongo. Depuis la ligne de commande Python, saisissez la commande ci-dessous :

    >>> import pymongo
    
  5. Exécuter le code Python

    Récupérez la chaîne de connexion MongoDB à partir de la console ScaleGrid dans l'onglet des détails en bas de l'écran. Si vous exécutez votre code Python sur la même boîte, vous pouvez utiliser 127.0.0.1.

    Écrivons du code Python pour interroger les documents de la collection que nous venons de créer. Créez un fichier appelé test.py et placez le code ci-dessous dans le fichier. Exécutez le code en utilisant "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
    

Pour des instructions et des exemples plus détaillés, reportez-vous à la documentation 10gen sur l'utilisation de Python avec Mongo.