Table des matières
Le Bases de données NoSQL ils ont pris une grande importance ces dernières années. Leur conception évolutive et la possibilité de gérer les structures de manière indépendante en font une alternative aux nouvelles formes de développement qui prennent place dans le monde.C'est pourquoi nous devons garder à l'esprit que c'est une réalité que nous devrons bientôt savoir comment les gérer comme nous savons maintenant comment les gérer. Base de données langues traditionnelles, pour cela, nous devrons nous y connecter par le biais de langues traditionnelles, telles que le très connu PHP.
L'un des moteurs de Bases de données NoSQL le plus populaire est mongoDB, en raison de sa facilité d'installation et d'une communauté en développement qui nous permet d'apprendre beaucoup en peu de temps avec de simples recherches sur Internet.
Installation de MongoDBLa première chose à faire est d'installer le serveur mongoDB, avec cela nous obtiendrons le moteur de Base de données pouvoir gérer nos nouvelles bases NoSQL. Comme il s'agit d'un nouveau moteur, il a été conçu pour pouvoir être installé sur différentes plateformes. Nous allons expliquer comment le faire dans deux des systèmes d'exploitation les plus importants d'aujourd'hui les fenêtres Oui Linux dans ta version Ubuntu.
Pour installer mongoDB dans Ubuntu Nous devons suivre quelques étapes simples pour activer le package, une fois ces étapes terminées, nous pouvons utiliser apt-get install normalement, voyons voir.
1- Nous devons d'abord importer la clé publique, pour cela nous allons ouvrir une nouvelle console ou un nouveau terminal et écrire la commande suivante :
sudo apt-key adv --keyserver hkp: / /keyserver.ubuntu.com:80 --recv 7F0CEB10
2- Ensuite, nous devons ajouter un fichier de liste à mongoDB, pour cela, nous devons procéder comme suit :
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
3- Maintenant nous pouvons enfin installer le service, pour cela nous allons d'abord mettre à jour nos dépendances puis installer le package :
sudo apt-get mise à jour
Une fois que tout a été mis à jour, nous passons la commande pour effectuer l'installation et avec cela nous aurons le service disponible mongoDB dans notre système :
sudo apt-get install -y mongodb-org
Installation dans les fenêtres est plus simple, nous devons juste nous assurer que nous avons Windows Vista ou quelque chose de plus récent, puisque malheureusement la dernière version de mongoDB non compatible avec Windows XP.
Ensuite, nous visitons le site officiel de mongoDB et choisissons la version qui correspond le mieux à la configuration de notre système d'exploitation :
AGRANDIR
Une fois l'exécutable téléchargé, nous l'installons puis nous effectuerons les étapes suivantes afin que le service puisse démarrer correctement :1- Nous devons créer un dossier de données où mongoDB peut stocker les collections de documents de nos bases de données, pour cela depuis la console de commande, avec des autorisations d'administrateur, nous allons nous localiser dans le répertoire approprié et créer un nouveau dossier. Pour cela, nous utilisons les éléments suivants :
md \ données \ db
2- Après avoir créé le dossier, nous devons démarrer le service mongoDB nous le faisons lors de l'exécution mongod.exe, le chemin doit être similaire au suivant, selon l'endroit où nous avons installé et la version de mongoDB que nous avons:
C:\Program Files\MongoDB 2.6 Standard\bin\mongod.exe
Voyons dans l'image suivante où l'on se rend compte que tout s'est bien passé lorsque la console nous dit que mongoDB attendre de nouvelles connexions :
Depuis que nous avons installé avec succès notre service mongoDB, maintenant nous devons dire PHP comment vous devez communiquer avec lui, pour cela, nous devons télécharger le pilote approprié et l'activer dans le php.ini comme une extension.
À les fenêtres nous pouvons télécharger le pilote à partir du référentiel officiel de mongoDB dans le chemin suivant : s3.amazonaws.com/drivers.mongodb.org/php/index.html où nous aurons plusieurs options, nous devons sélectionner la plus récente et la plus stable.
Identifier l'extensionUne fois le fichier téléchargé, nous décompressons et recherchons l'extension qui convient à notre version de PHP, dans mon cas comment j'exécute le version 5.4 j'utiliserai php_mongo-1.6.0RC2-5.4-vc9.dll et nous le renommons en php_mongo.dll.
Ensuite il faut déplacer le fichier dans le répertoire de nos extensions qui serait :
C:\wamp\bin\php\php5.4.12\ext
Avec l'extension ajoutée, nous n'aurions qu'à ajouter dans le php.ini la ligne suivante : extension = php_mongo.dll
Finalement nous redémarrons notre serveur Apache et nous exécutons phpinfo() Pour vérifier que l'extension est activée, nous recherchons avec CTRL + F mot mongo et nous verrons les informations de notre extension :
AGRANDIR
Une fois ceci vérifié, nous serons prêts à travailler avec PHP Oui mongoDB dans notre environnement les fenêtres.À Linux cela prend quelques étapes supplémentaires, nous devons d'abord installer Poire, pour cela, nous allons effectuer les opérations suivantes dans la console ou le terminal :
sudo apt-get install php5-dev php5-cli php-pear
Ensuite, nous procédons à l'installation du pilote, pour ce faire à partir de la console ou du terminal, nous exécuterons l'instruction suivante :
sudo pecl installer mongo
Enfin, nous devons ouvrir notre php.ini et activez l'extension :
extension = mongo.so
Avec cela, nous pouvons redémarrer notre serveur Apache et nous serons prêts à commencer à travailler sur Linux.
Nous avons déjà effectué suffisamment de réglages techniques pour que vous puissiez mongoDB Oui PHP peut communiquer, cependant il faut voir un peu comment fonctionne ce moteur Base de données pour avoir une idée de ce que nous pouvons réaliser avec le NoSQL.
Recueils et documentsTout d'abord il faut savoir qu'il n'y a pas de tables mais collections et vous n'êtes pas des enregistrements stockés mais documents, cela nous donne la liberté qu'il n'est pas nécessaire de suivre une structure rigide et que chaque document peut contenir toutes les données dont vous avez besoin.
Un exemple classique est celui de auteurs et leurs livres, dans une Base de données relationnel, nous devons créer un tableau des auteurs, alors nous devons créer un table de livre et dans ce dernier, nous devons avoir un champ où nous associons l'identifiant ou l'identifiant unique de l'auteur à chaque livre, il n'y a rien d'enthousiasmant et c'est tout à fait fonctionnel.
Comment fonctionne mongoDB ?Dans mongoDB nous allons simplement créer un collection appelés auteurs et chacun document sera auteur, mongoDB est responsable de la création automatique d'un identifiant unique, mais nous pouvons ajouter une propriété qui nous aide à identifier correctement chaque auteur, puis nous pouvons créer au sein de chaque auteur un nouvelle propriété appelés livres et là nous stockerons tous leurs titres, donc si nous voulons un auteur qui n'a pas de livres, nous consultons simplement le document qui n'a pas la propriété books au sein de la collection.
Cela montre qu'il n'y a pas de relation établie pour les auteurs et les livres, il y a simplement un document qui peut ou non contenir cette partie, en fait il est si polyvalent que nous pouvons créer un auteur qui contient une propriété appelée Les livres pour enfants et que d'autres auteurs n'ont pas, de cette façon nous n'aurons pas à créer de nouvelles relations ou tables, simplement le document de collection l'aura.
Ayant déjà couvert les bases appropriées de tout ce que nous devons savoir avant de pouvoir nous connecter avec PHP, passons en revue ce dont nous avons besoin :
- Un serveur à exécuter PHP, par exemple Apache.
- Le service mongoDB installé et actif en attente de connexions.
- Avoir installé le pilote PHP à mongoDB.
- Un éditeur de texte brut et la possibilité de fonctionner sur notre serveur PHP code que nous écrivons.
La première chose que nous devons faire est de créer un objet de la classe MongoClient, cela ne devrait pas poser de problèmes si nous avons installé le pilote correctement, alors avec cet objet nous établissons le nom de notre Base de données, dans ce cas on pose une bibliothèque, puis nous définissons le nom de la collection et maintenant nous pouvons insérer des données, voyons le code source de cet exemple :
une bibliothèque; $ collection = $ db-> auteurs; $ author = array ('autorid' => 1, 'name' => 'Dan Brown'); $ collection-> insérer ($ auteur); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ collection-> insérer ($ auteur); $ author = array ('autorid' => 3, 'name' => 'Max Brooks'); $ collection-> save ($ auteur); ?> var13 ->
Nous voyons comment chacun des enregistrements qui sont réellement documents à partir de notre collection, nous les construisons sous forme de déployer dans notre programme, alors nous passons simplement ce tableau à l'objet collection et on exécute la méthode insérer, cela nous donne facilement le moyen d'insérer des données dans notre collection dans mongoDB, voyons dans l'image suivante comment après avoir exécuté notre code sur notre serveur, notre Base de données appel une bibliothèque:
AGRANDIR
Puisque nous avons vu avec quelle facilité nous insérons les données, nous allons maintenant faire une petite requête, de cette manière nous allons montrer comment fonctionne l'extraction des données des documents.Pour cela nous allons refaire les connexions nécessaires comme dans l'exemple précédent, mais maintenant nous allons utiliser la méthode trouver un () avec l'objet collection, de cette façon, nous pouvons rechercher n'importe quelle propriété de document dans la collection, telle que le auteur que nous avions créé, voyons le code :
une bibliothèque; $ collection = $ db-> auteurs; $ author = array ('autorid' => 1, 'name' => 'Dan Brown'); $ collection-> insérer ($ auteur); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ collection-> insérer ($ auteur); $ author = array ('autorid' => 3, 'name' => 'Max Brooks'); $ collection-> save ($ auteur); $ documents = $ collection-> findOne (array ('autorid' => 2)); echo "Données de requête :
"; chassèrent "Clé primaire Mongo : {$ documents ['_ id']}
"; chassèrent "Le nom de l'auteur: {$ documents ['nom']} ";?> var13 ->
Enfin, nous pouvons parcourir les résultats comme s'il s'agissait d'un tableau et indiquer simplement l'index de chaque propriété que nous devons imprimer. De plus, nous avons inclus la propriété dans l'exemple. _identifiant afin que nous puissions visualiser comment mongoDB génère le champ de clé primaire ou d'identifiant unique. Voyons le résultat dans notre navigateur lorsque nous exécutons notre code :
Il existe des outils que nous pouvons utiliser pour gérer nos pages Web. Base de données dans mongoDB.
L'un d'eux est Gengis, pour cela nous pouvons simplement télécharger ou cloner le projet dans notre répertoire www ou équivalent où l'on peut soulever une page dans hôte local et nous pouvons voir notre installation de mongoDB et vos données, pour finir voyons à quoi ressemble cet outil utile :
AGRANDIR
Avec cela, nous avons terminé ce tutoriel, nous avons déjà une base pour pouvoir entrer dans le monde de NoSQL, qui est dans la tendance actuelle de gestion de grandes collections de données, beaucoup peuvent se demander comment faire le lien dans PHP avoir des alternatives comme node.js, la réponse est simple, car il existe de nombreux systèmes de back-end faites dans cette langue et avec cette connaissance, nous pourrons réutiliser nos codes de toujours tout en nous mettant à jour avec les nouvelles technologies.