MongoDB

MongoDB est devenu populaire à la fois dans le milieu universitaire et professionnel. L'utilisation de ce système de base de données permet de stocker des données non structurées de manière très simple. Généralement, ce type de base de données doit être situé dans un environnement facilement accessible.
Pour l'article complet sur MongoDB ...

Afficher le filtre
Filtres d'hébergement
A2 Themes & Host Me Filter

Le système d'exploitation

Espace disque

Mémoire RAM

Type de disque

Cœurs de processeur

Trier

Pilote de confiance Dream VPS
Score - 8.6
Dream VPS Logo
Dream VPS

VPS de rêve

STARTER
$3.75 /Mensuel

Avis 7


Emplacements des serveurs


Dream VPS Servers in Hong KongHong Kong Dream VPS Servers in Santa Clara Dream VPS Servers in New YorkÉtats Unis Dream VPS Servers in LondonRoyaume-Uni Dream VPS Servers in AmsterdamPays-Bas Dream VPS Servers in FrankfurtAllemagne Dream VPS Servers in IsraelIsraël
Comparer
Score - 0
Heroku Logo
Heroku

Heroku

Hobby
$7 /Mensuel


Emplacements des serveurs


Heroku Servers in United StatesÉtats Unis
Comparer
Score - 0
Infra Networking Logo
Infra Networking

Réseau infra

ALFA
$4.19 /Mensuel


Emplacements des serveurs


Infra Networking Servers in JakartaIndonésie Infra Networking Servers in DallasÉtats Unis Infra Networking Servers in DublinIrlande Infra Networking Servers in LondonRoyaume-Uni Infra Networking Servers in Frankfurt am MainAllemagne Infra Networking Servers in SingaporeSingapour Infra Networking Servers in AmsterdamPays-Bas Infra Networking Servers in UruguayUruguay
Comparer

Hébergement de bases de données MongoDB

 

MongoDB

 

Ces dernières années, MongoDB est devenu populaire à la fois dans le milieu universitaire et professionnel. L'utilisation de ce système de base de données permet de stocker des données non structurées de manière très simple.

 

En général, ce type de base de données doit être situé dans un environnement facilement accessible, car les applications qui utilisent cette base de données doivent généralement le faire dans des emplacements physiquement éloignés. Compte tenu de ce besoin, cet article présente un moyen de stocker et d'effectuer des opérations de base dans MongoDB à l'aide d'un service d'hébergement Web. La discussion de ce sujet est utile pour ceux qui souhaitent savoir comment créer et gérer des bases de données MongoDB dans le cloud. Afin de proposer des solutions pour gérer ce type de base de données, l'article indique également des outils graphiques pour son administration. Tout au long de l'article, l'accent sera mis sur les technologies de développement d'applications Web utilisant le langage de programmation Java.

 

Pour accéder à la base de données, un service Web sera développé, qui sera hébergé sur un hébergeur gratuit. Pour tester le service, une application console en langage Java sera développée. Enfin, l'article vous montre comment tester et surveiller le service Web et la base de données MongoDB.

 

Le terme NoSQL signifie non seulement SQL, c'est-à-dire pas seulement SQL. D'autres significations ont été initialement proposées, mais la plus adoptée par la communauté était celle-ci. Les bases de données NoSQL ont vu le jour pour faciliter le stockage et le traitement des données en gros volumes, offrant une structure permettant une grande évolutivité.

 

Il existe actuellement environ 150 bases de données NoSQL différentes. MongoDB a gagné de nouveaux adeptes grâce à sa vaste documentation et à sa communauté impliquée.

 

Le mouvement MongoDB a commencé début 2009 et depuis lors, plus de fonctionnalités ont été ajoutées à MongoDB, telles que la prise en charge sans schéma, une réplication facile, une API simple, des pilotes pour différents langages, des outils de manipulation, des mises à jour de fonctions, et bien plus encore.

 

Le groupe de bases de données NoSQL se compose de bases de données orientées applications qui gèrent de gros volumes de données, adoptent des fonctionnalités d'évolutivité, le protocole REST, MapReduce (lire la BOÎTE 1) et d'autres fonctionnalités hautes performances.

 

ENCADRÉ 1: MapReduce

 

MapReduce est un modèle de programmation introduit par Google dans le but de supporter le traitement parallèle sur des ensembles de données répartis sur plusieurs ordinateurs (cluster). Le fonctionnement de ce modèle repose sur deux caractéristiques: la carte et la réduction. Afin de réaliser des consolidations de recherche dont les données sont regroupées, le demandeur envoie sa recherche à plusieurs ordinateurs simultanément.

 

A ce moment, la cartographie (map) est faite entre le demandeur et le cluster, puis les données issues de la recherche sont regroupées (réduire) générant le résultat de la recherche à délivrer au demandeur.

 

L'acronyme REST signifie transfert d'état de représentation. C'est une technique largement utilisée dans les systèmes de manipulation de données distribuées (CRUD) utilisant uniquement des appels HTTP. Ce type d'appel simplifie la programmation, résumant les tâches de bas niveau au programmeur, permettant la mise en œuvre de différentes routines dans les services Web. Les appels effectués concernent essentiellement l'insertion de données (POST), la requête de données (GET), la mise à jour des données (PUT) et la suppression de données (DELETE).

 

MongoDB

 

La première chose à laquelle il faut penser lors du démarrage avec NoSQL est comparative. Comme nous ne pouvions manquer de parler, nous passons à la comparaison des principaux termes par rapport aux banques relationnelles.

Dans MongoDB, chaque document peut être complètement distinct d'un autre document de la même collection, ce qui n'est pas vrai dans le modèle relationnel. Habituellement, les données sont écrites au format BSON (Binary JSON).

 

Pour suivre les étapes présentées dans la section suivante, il n'est pas nécessaire d'installer MongoDB sur l'ordinateur local.

 

L'installation sur l'ordinateur local est uniquement destinée à des tests plus rapides et plus simples. Si le lecteur souhaite installer MongoDB sur son ordinateur et le manipuler, voici quelques commandes initiales qui peuvent être utiles. Pour exécuter le service (démon), vous devez considérer la commande suivante: / mongo. Avec le service en cours d'exécution, nous pouvons démarrer l'interpréteur de commandes: / mongo, les commandes de base pour lister les bases de données sont: show DBS ou show databases. Pour choisir une base de données à utiliser (si elle n'existe pas, la base de données sera créée sqlMagazine): utilisez sqlMagazine il est important d'être conscient du fait que les lettres majuscules et minuscules sont différentes, attention à ce détail.

 

Outils MongoDB

 

Après tant de commandes, nous avons déjà une base pour avancer. Connaître les commandes est essentiel pour développer des applications, cependant, pour l'administration, il existe d'autres outils graphiques qui sont de bons alliés. Par exemple, les figures 1 et 2 ont été capturées à partir du logiciel MongoHub.

 

Il existe d'autres outils pour accéder à MongoDB, tels que RockMongo et MongoVUE. L'outil RockMongo nécessite d'autres services (PHP et Apache), en plus d'activer le module MongoDB dans la configuration PHP. Cet outil est adopté comme standard dans OpenShift, il est donc bon d'en avoir une connaissance.

 

L'outil MongoVUE est uniquement destiné aux ordinateurs dotés de systèmes d'exploitation Microsoft Windows. Il offre de bonnes fonctionnalités.

 

Pour les utilisateurs du système d'exploitation Apple (Mac OS 10.6.x ou supérieur), il existe l'outil MongoHub. Bien qu'il existe un site Web spécifique pour cet outil.

 

Créer un compte pour héberger l'application

 

L'objectif est de rendre la base de données disponible sur le Web et d'en permettre l'accès par une application qui se trouve également sur le Web ou par une application installée sur un autre ordinateur. Le service choisi pour héberger la base de données était OpenShift. En cela, l'utilisateur peut créer jusqu'à trois applications et dans chacune d'elles, il est possible de créer plusieurs services, tels que des applications Java, PHP, Phyton, Ruby, entre autres.

 

Si vous souhaitez créer plus d'applications sur le même compte ou même engager d'autres services et ressources d'évolutivité, vous devez créer un compte payant. OpenShift propose une plateforme en tant que service, identifiée par l'acronyme PaaS. Passons en revue les étapes nécessaires pour créer un compte.

 

Au départ, l'utilisateur doit se rendre à l'adresse du port OpenShift: et choisir l'option. L'écran d'enregistrement apparaîtra, comme le montre la figure.

 

mongodb

 

Entrez simplement les données et cliquez sur & ldquo; Inscription & rdquo ;. Un email sera envoyé pour confirmer l'inscription, il faut cliquer sur le lien dans cet email pour activer l'inscription et être a pour créer les candidatures.

 

Lors de l'accès à votre compte OpenShift, il est possible de créer les services souhaités, des instructions sont également proposées pour accéder aux applications par ligne de commande, utilisez le JBossDeveloper Studio IDE et une multitude d'autres ressources. Afin de faciliter cette étape par étape, nous créerons l'application automatiquement après l'avoir développée localement.

Certains paramètres doivent être définis dans notre compte OpenShift. Après avoir accédé au compte, nous devons aller dans les & ldquo; Paramètres & rdquo; section, comme le montre la figure.

 

mongodb

 

Dans la zone de texte & ldquo; Nom de domaine & rdquo; il faut taper le nom du domaine souhaité, dans ce test on tape & ldquo; SQL magazine & rdquo ;. Ce nom (le nombre maximum de caractères est de 16) est libre de choisir, cependant, il est important car il sera utilisé dans notre projet Java. Cliquez ensuite sur le bouton & ldquo; Enregistrer & rdquo; option.

 

Une fois cette étape terminée, nous pouvons revenir aux & ldquo; Applications & rdquo; et cliquez sur l'onglet & ldquo; Créez votre première application maintenant & rdquo; option. Une liste apparaîtra avec différents services que nous pouvons créer. Choisissons & ldquo; JBoss Application Server 7 & rdquo ;. Ensuite, la fenêtre de choix du nom de l'application s'affiche

 

Ce nom est également libre de choisir, mais il devrait être facile à retenir, car nous en aurons besoin immédiatement. Pour ce test, nous tapons & ldquo; MongoDB & rdquo ;.

 

L'étape suivante consiste à cliquer sur & ldquo; Créer une application & rdquo ;. Ce processus peut prendre quelques secondes voire quelques minutes, attendez que le processus soit terminé. Nous pouvons maintenant revenir aux & ldquo; Applications & rdquo; et cliquez sur l'application créée.

 

À ce stade, nous allons ajouter MongoDB à notre application. Pour ce faire, cliquez simplement sur l'application, dans cet exemple & ldquo; mongodb & rdquo; puis cliquez sur & ldquo; Ajouter MongoDB 2.4 & rdquo;,. Si vous ouvrez une fenêtre contenant des informations et des instructions, cliquez sur le lien & ldquo; Continuer vers la page de présentation de l'application & rdquo; sera affiché, sur lequel il faut cliquer, puis il sera possible de cliquer sur & ldquo; Ajouter MongoDB 2.4 & rdquo ;.

 

Cliquez ensuite sur & ldquo; Ajouter une cartouche & rdquo;. Ce processus peut également prendre quelques secondes. Un écran apparaîtra alors avec des informations importantes pour accéder à la base de données, il est important d'enregistrer ces informations car elles seront utilisées dans les étapes suivantes. Les informations sont le nom d'utilisateur, le mot de passe et le nom de la base de données.

 

En ce moment, nous avons déjà un serveur (JBoss Application Server) à notre disposition et une base de données NoSQL (MongoDB). Maintenant, créez simplement un service Web pour accéder à cette banque et un projet pour accéder à ce service Web.

 

Développement d'applications

 

En gros, nous aurons deux applications et une base de données. La première application sera chargée de faire les demandes pour la base de données. Cette application servira d'exemple très simple, juste pour tester le fonctionnement du service web. La deuxième application (service Web) sera chargée de recevoir les demandes de la première et d'accéder à la base de données.

 

Passons à la première application. Ses prérequis sont Eclipse Kepler et deux bibliothèques d'API (Application Program Interface) Jersey (jersey-client et jersey-core). Afin de faciliter et de simplifier l'étape par étape décrite ici, nous allons créer une application Java dans Eclipse Kepler.

 

Les images pour illustrer étape par étape ont été obtenues à l'aide du système d'exploitation Mac OS 10.9.3, cependant, le lecteur peut utiliser Microsoft Windows ou même une distribution Linux.

 

Dans l'accès Eclipse: Fichier, Nouveau, Projet. Dans la fenêtre suivante, choisissez & ldquo; Java Project & rdquo; et cliquez sur & ldquo; Suivant & rdquo ;. Ensuite, entrez un nom pour le projet et choisissez l'option & ldquo; Terminer & rdquo ;.

Nous devons maintenant créer une classe dans le projet. Pour ce faire, faites un clic droit sur & ldquo; src & rdquo ;, & ldquo; Nouveau & rdquo ;, & ldquo; Classe & rdquo ;.

 

Sur l'écran suivant, nous devons taper un nom pour la classe et cocher l'option & ldquo; Créer la méthode principale & rdquo; & ldquo; public static void main (String [] args) & rdquo ;, et cliquez sur & ldquo; Finish & rdquo ;,

Ce projet Java vise à enregistrer des informations dans une base de données MongoDB qui sera hébergée sur le Web. Le type d'hébergement utilisé permet un accès externe à la base de données, c'est-à-dire que les applications de n'importe où peuvent accéder au serveur de base de données, cependant, il est nécessaire de rediriger les ports sur la machine locale.

 

Comme cela peut devenir une chose très complexe à faire lorsqu'il s'agit d'ordinateurs hors de notre contrôle ou même d'ordinateurs qui doivent continuer à accéder aux ports locaux, ou même lorsqu'il s'agit d'appareils mobiles, la redirection de port n'est pas le meilleur moyen. De cette façon, notre projet Java accédera à la base de données via un service Web.

 

Avant de saisir les codes, ajoutons deux bibliothèques pour travailler avec les services Web. Les deux bibliothèques que nous utiliserons proviennent de l'API Jersey 1.18. Pour les ajouter au projet, après le téléchargement, copiez-les simplement dans le dossier du projet et faites un clic droit sur le nom du projet, puis choisissez les propriétés.

 

Dans la fenêtre "Propriétés", sélectionnez l'option "Chemin de construction Java" puis "Bibliothèques". Cliquez ensuite sur & ldquo; Ajouter un pot externe & rdquo;.

 

Maintenant que nous avons ajouté l'API Jersey à notre projet, nous pouvons coder un peu.

 

Dans cet extrait de code initial, nous créons simplement un client URL. Dans les premières lignes (3 et 4), nous avons l'importation pour utiliser les méthodes du & ldquo; Jersey & rdquo; bibliothèque. Aux lignes 9 et 10, nous créons un objet pour se connecter à l'URL du service Web. Notez que l'URL du service Web est composée du nom complet de notre compte OpenShift avec le mot repos et publication, indiquant que le service Web a un emplacement pour les méthodes, appelé repos et une méthode appelée publication. Ensuite, créons des informations à envoyer à la base de données

 

Le but de l'extrait de code présenté dans cette liste est d'assembler une chaîne de caractères obéissant à la norme JSON à envoyer à la base de données MongoDB. Enfin, le fichier à envoyer au serveur. Passons maintenant au dernier extrait de code du projet Java.

 

Cet extrait de code nécessitera une autre importation pour notre projet.

 

Envoi vers le cloud

 

Nous pouvons maintenant envoyer notre service Web à OpenShift. Dans Eclipse, choisissez la perspective JBoss et cliquez sur OpenShift Application.

 

Les identifiants de compte (email et mot de passe) définis lors de l'inscription seront demandés. Entrez simplement les détails de votre compte et cliquez sur "Suivant". La première fois que vous vous connectez, vous êtes invité à créer des clés SSH.

 

nous devons cocher l'option & ldquo; Utilisez une application existante & rdquo ;. En cochant cette option, l'écran de choix de l'application créée précédemment s'affichera. Choisissez l'application et cliquez sur "Suivant".

 

Sur l'écran suivant, il vous sera demandé si nous voulons créer un projet à envoyer à notre serveur ou utiliser un projet existant. Nous utiliserons un projet existant, dans ce cas, notre nouveau service Web. Pour ce faire, désélectionnez l'option & ldquo; Créer un nouveau projet & rdquo ;, cliquez sur & ldquo; Explorez & rdquo; et choisissez le projet jboss-as-helloworld-rs.

 

Finalisez le processus. Il vous sera demandé de confirmer l'utilisation de la clé SSH, cliquez sur & ldquo; Oui & rdquo ;. Encore une fois & ldquo; Oui & rdquo; pour confirmer l'envoi du service Web. Après cette étape, nous pouvons publier notre service Web. Pour ce faire, allez dans Eclipse et ouvrez l'onglet "Serveurs", cliquez pour développer l'onglet serveur, en l'occurrence "mongodb at OpenShift". Le nom de notre service Web jboss-as-helloworld-rs apparaîtra, cliquez dessus avec le bouton droit de la souris et choisissez l'option & ldquo; Publication complète & rdquo; ou & ldquo; Publication complète & rdquo ;.

 

Vérifiez si l'application a déjà été créée sur le serveur OpenShift. Pour ce faire, allez dans le navigateur et accédez à votre compte OpenShift sur les & ldquo; Applications & rdquo; onglet et cliquez sur l'application. Dans l'exemple de ce tutoriel, & ldquo; mongodb & rdquo ;, et confirmez qu'il a déjà été construit.

 

Si cela prend trop de temps (plus de trois minutes), il peut être nécessaire de redémarrer l'application. Pour ce faire, utilisez l'icône correspondante à droite de l'écran.

 

Tests finaux

 

Maintenant que nous avons un serveur avec MongoDB à notre disposition, un projet pour envoyer des données au serveur et un service Web pour réunir les deux, nous pouvons commencer les tests.

 

Un allié important pour vérifier le fonctionnement est Rock Mongo. Il peut être activé dans OpenShift très simplement, il suffit de cliquer sur & ldquo; Ajoutez Rock Mongo 1.1 & rdquo; dans le & ldquo; Application s & rdquo; languette.

 

Une autre caractéristique importante est les & ldquo; Fichiers de queue & rdquo ;, qui peuvent être activés sur la console. Accédez à la console Eclipse et cliquez sur OpenShift Explorer, développez toutes les options jusqu'à ce que vous atteigniez l'application, dans notre cas & ldquo; mongodb & rdquo ;. Cliquez avec le bouton droit et choisissez le & ldquo; Fichiers de queue & rdquo; option.