Démarrage rapide : créer une application console avec Java et Azure Cosmos DB for MongoDB
S’APPLIQUE À : MongoDB
Dans ce démarrage rapide, vous créerez et gérerez un compte Azure Cosmos DB for MongoDB à partir du Portail Azure. Vous ajouterez ensuite des données à l'aide d'une application Java SDK clonée sur GitHub. Azure Cosmos DB est un service de base de données multimodèle qui vous permet de créer et d’interroger rapidement des bases de données de documents, de tables, de paires clé/valeur et de graphes avec des capacités de distribution mondiale et de mise à l’échelle horizontale.
Prérequis
- Compte Azure avec un abonnement actif. Créez-en un gratuitement. Vous pouvez également essayez Azure Cosmos DB gratuitement sans abonnement Azure. Vous pouvez aussi utiliser l’émulateur Azure Cosmos DB avec la chaîne de connexion
.mongodb://localhost:C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==@localhost:10255/admin?ssl=true
. - Kit de développement Java (JDK), version 8.
- Maven. Ou exécutez
apt-get install maven
pour installer Maven. - Git.
Création d’un compte de base de données
Dans une nouvelle fenêtre du navigateur, connectez-vous au portail Azure.
Dans le menu de gauche, sélectionnez Créer une ressource.
Dans la page Nouveau, sélectionnez Bases de données>Azure Cosmos DB.
Dans la page Sélectionner une option d’API, sélectionnez Azure Cosmos DB for MongoDB>Créer.
L’API détermine le type de compte à créer. Sélectionnez Azure Cosmos DB for MongoDB, car vous allez créer une collection qui fonctionne avec MongoDB dans ce guide de démarrage rapide. Pour en savoir plus, consultez Vue d’ensemble d’Azure Cosmos DB for MongoDB.
Dans la page Créer un compte Azure Cosmos DB, entrez les paramètres du nouveau compte Azure Cosmos DB.
Paramètre valeur Description Abonnement Nom d’abonnement Sélectionnez l’abonnement Azure que vous souhaitez utiliser pour ce compte Azure Cosmos DB. Groupe de ressources Nom de groupe ressources Sélectionnez un groupe de ressources ou sélectionnez Créer, puis entrez un nom unique pour le nouveau groupe de ressources. Nom du compte Entrer un nom unique Entrez un nom unique pour identifier votre compte Azure Cosmos DB. L’URI de votre compte sera mongo.cosmos.azure.com apposé à votre nom de compte unique.
Le nom peut contenir uniquement des lettres minuscules, des chiffres et des traits d’union (-), et doit comporter entre 3 et 44 caractères.Emplacement La région la plus proche de vos utilisateurs Sélectionnez la zone géographique dans laquelle héberger votre compte Azure Cosmos DB. Utilisez l’emplacement le plus proche de vos utilisateurs pour leur donner l’accès le plus rapide possible aux données. Mode de capacité Débit approvisionné ou serverless Sélectionnez Débit approvisionné pour créer un compte dans mode de débit approvisionné. Sélectionnez serverless pour créer un compte en mode serverless.
Remarque : Seules les versions 4.2, 4.0 et 3.6 de l’API MongoDB sont prises en charge par les comptes serverless. Si vous choisissez la version 3.2, le compte sera forcé en mode de débit provisionné.Appliquer la remise de niveau gratuit Azure Cosmos DB Appliquer ou Ne pas appliquer Avec le niveau gratuit d’Azure Cosmos DB, vous recevez gratuitement 1 000 RU/s et 25 Go de stockage dans un compte. Découvrez-en plus sur le niveau gratuit. Version Choisir la version de serveur requise Azure Cosmos DB for MongoDB est compatible avec les versions serveur 4.2, 4.0, 3.6 et 3.2. Vous pouvez mettre à niveau ou rétrograder un compte après sa création. Notes
Vous pouvez avoir un seul compte Azure Cosmos DB de niveau gratuit par abonnement Azure et vous devez vous inscrire lors de la création du compte. Si vous ne voyez pas l’option permettant d’appliquer la remise de niveau gratuit, cela signifie qu’un autre compte dans l’abonnement a déjà été activé avec le niveau gratuit.
Sous l’onglet Distribution globale, configurez les informations suivantes. Dans le cadre de ce guide de démarrage rapide, vous pouvez conserver les valeurs par défaut :
Paramètre valeur Description Géoredondance Désactiver Activez ou désactivez la diffusion mondiale sur votre compte en appairant votre région avec une région correspondante. Vous pourrez ajouter d’autres régions à votre compte ultérieurement. Écritures multirégions Désactiver La fonctionnalité d’écritures multirégions vous permet de tirer parti du débit provisionné pour vos bases de données et conteneurs à travers le monde. Notes
Les options suivantes ne sont pas disponibles si vous sélectionnez Serverless comme Mode de capacité :
- Appliquer la remise de niveau gratuit
- Géo-redondance
- Écritures multirégions
Si vous le souhaitez, vous pouvez configurer des informations supplémentaires sous les onglets suivants :
- Réseau :configurez l’accès à partir d’un réseau virtuel.
- Stratégie de sauvegarde : configurez une stratégie de sauvegarde périodique ou continue.
- Chiffrement : utilisez une clé gérée par le service ou une clé gérée par le client.
- Étiquettes : les étiquettes sont des paires nom/valeur qui vous permettent de catégoriser les ressources et d’afficher une facturation centralisée en appliquant la même étiquette à plusieurs ressources et groupes de ressources.
Sélectionnez Revoir + créer.
La création du compte prend quelques minutes. Attendez que le portail affiche le message Félicitations ! Votre compte Azure Cosmos DB for MongoDB est prêt.
Ajouter une collection
Nommez votre nouvelle base de données db et votre nouvelle collection coll.
Il est maintenant possible d’utiliser l’outil Explorateur de données sur le Portail Azure afin de créer une API Azure Cosmos DB pour la base de données MongoDB et un conteneur.
Sélectionnez Explorateur de données>Nouveau conteneur.
La zone Ajouter un conteneur s’affiche à l’extrême droite : il peut donc être nécessaire de faire défiler à droite pour l’afficher.
Dans la page Ajouter un conteneur, entrez les paramètres du nouveau conteneur.
Paramètre Valeur suggérée Description ID de base de données db Entrez db comme nom de la nouvelle base de données. Les noms de base de données doivent comporter entre 1 et 255 caractères, et ne peuvent pas contenir les caractères /, \\, #, ?
, ni un espace de fin. Cochez l’option Provisionner le débit de base de données qui vous permet de partager le débit provisionné pour la base de données entre tous les conteneurs au sein de la base de données. Cette option permet également de réduire les coûts.Débit 400 Laissez le débit sur 400 unités de requête par seconde (RU/s). Si vous souhaitez réduire la latence, vous pourrez augmenter le débit par la suite. Vous pouvez également choisir le mode de mise à l’échelle automatique pour obtenir une plage de RU/s qui augmente et diminue de manière dynamique en fonction des besoins. ID de la collection coll Entrez coll
comme nom de votre nouveau conteneur. Les ID de conteneur sont soumis aux mêmes exigences en termes de caractères que les noms de base de données.Capacité de stockage Fixe (10 Go) Entrez Fixe (10 Go) pour cette application. Si vous sélectionnez Illimité, vous devez créer une Shard Key
, dont tous les éléments insérés auront besoin.Clé de partition /_id L’exemple décrit dans cet article n’utilise pas de clé de partition. Par conséquent, si ce paramètre a la valeur /_id, c’est le champ ID généré automatiquement qui est utilisé comme clé partition. Pour plus d’informations sur le sharding, également appelé partitionnement, consultez Partitionnement dans Azure Cosmos DB. Sélectionnez OK. L’Explorateur de données affiche la nouvelle base de données et le nouveau conteneur.
Clonage de l’exemple d’application
À présent, nous allons cloner une application à partir de GitHub, configurer la chaîne de connexion et l’exécuter. Vous verrez combien il est facile de travailler par programmation avec des données.
Ouvrez une invite de commandes, créez un nouveau dossier nommé git-samples, puis fermez l’invite de commandes.
md "C:\git-samples"
Ouvrez une fenêtre de terminal git comme Git Bash et utilisez la commande
cd
pour accéder au nouveau dossier d’installation pour l’exemple d’application.cd "C:\git-samples"
Exécutez la commande suivante pour cloner l’exemple de référentiel : Cette commande crée une copie de l’exemple d’application sur votre ordinateur.
git clone https://github.com/Azure-Samples/azure-cosmos-db-mongodb-java-getting-started.git
Ouvrez ensuite le code dans votre éditeur préféré.
Vérifier le code
Cette étape est facultative. Pour savoir comment les ressources de base de données sont créées dans le code, vous pouvez examiner les extraits de code suivants. Sinon, vous pouvez passer à l’étape Mise à jour de votre chaîne de connexion.
Tous les extraits de code suivants proviennent du fichier Program.java.
Cette application de console utilise le pilote Java MongoDB.
Le DocumentClient est initialisé.
MongoClientURI uri = new MongoClientURI("FILLME");` MongoClient mongoClient = new MongoClient(uri);
Une base de données et une collection ont été créées.
MongoDatabase database = mongoClient.getDatabase("db"); MongoCollection<Document> collection = database.getCollection("coll");
Certains documents sont intégrés à l’aide de
MongoCollection.insertOne
Document document = new Document("fruit", "apple") collection.insertOne(document);
Certaines requêtes sont effectuées à l’aide de
MongoCollection.find
Document queryResult = collection.find(Filters.eq("fruit", "apple")).first(); System.out.println(queryResult.toJson());
Mise à jour de votre chaîne de connexion
Maintenant, retournez dans le portail Azure afin d’obtenir les informations de votre chaîne de connexion et de les copier dans l’application.
À partir de votre compte Azure Cosmos DB, sélectionnez Démarrage rapide et Java, puis copiez la chaîne de connexion dans le Presse-papiers.
Ouvrez le fichier Program.java, puis remplacez l’argument au constructeur MongoClientURI par la chaîne de connexion. Vous venez de mettre à jour votre application avec toutes les informations nécessaires pour communiquer avec Azure Cosmos DB.
Exécution de l’application console
Exécutez
mvn package
dans un terminal pour installer les packages requisExécutez
mvn exec:java -D exec.mainClass=GetStarted.Program
sur un terminal pour démarrer votre application Java.
Vous pouvez maintenant utiliser Robomongo / Studio 3T pour interroger ces nouvelles données, pour les modifier, et pour travailler avec elles.
Vérification des contrats SLA dans le portail Azure
Le portail Azure surveille le débit, le stockage, la disponibilité, la latence et la cohérence de votre compte Azure Cosmos DB. Des graphiques de métriques associées à un contrat de niveau Service (SLA) Azure Cosmos DB montrent la valeur des contrats SLA par rapport aux performances réelles. Cette suite de métriques vous permet de superviser vos contrats SLA de manière transparente.
Pour consulter les métriques et les contrats SLA :
Sélectionnez Métriques dans le menu de navigation de votre compte Azure Cosmos DB.
Sélectionnez un onglet comme Latence, puis sélectionnez un intervalle de temps à droite. Comparez les lignes Réel et SLA des graphiques.
Consultez les métriques des autres onglets.
Nettoyer les ressources
Quand vous en avez terminé avec votre application et votre compte Azure Cosmos DB, vous pouvez supprimer les ressources Azure que vous avez créées afin d’éviter des frais supplémentaires. Pour supprimer les ressources :
Depuis la barre de recherche du portail Azure, recherchez et sélectionnez Groupes de ressources.
Dans la liste, sélectionnez le groupe de ressources créé pour ce guide de démarrage rapide.
Dans la page Vue d’ensemble du groupe de ressources, sélectionnez Supprimer un groupe de ressources.
Dans la fenêtre suivante, entrez le nom du groupe de ressources à supprimer, puis sélectionnez Supprimer.
Étapes suivantes
Dans ce guide de démarrage rapide, vous avez appris à créer un compte Azure Cosmos DB for MongoDB, à ajouter une base de données et un conteneur avec l’Explorateur de données et à ajouter des données avec une application console Java. Vous pouvez maintenant importer des données supplémentaires dans votre base de données Azure Cosmos DB.
Vous tentez d’effectuer une planification de la capacité pour une migration vers Azure Cosmos DB ? Vous pouvez utiliser les informations sur votre cluster de bases de données existant pour la planification de la capacité.
- Si vous ne connaissez que le nombre de vCores et de serveurs présents dans votre cluster de bases de données existant, lisez Estimation des unités de requête à l’aide de vCores ou de processeurs virtuels
- Si vous connaissez les taux de requêtes typiques de votre charge de travail de base de données actuelle, lisez la section concernant l’estimation des unités de requête à l’aide du planificateur de capacité Azure Cosmos DB