Schnellstart: Erstellen einer Konsolen-App mit Java und der MongoDB-API in Azure Cosmos DBQuickstart: Create a console app with Java and the MongoDB API in Azure Cosmos DB

In diesem Schnellstart verwenden Sie die Azure Cosmos DB-API für Mongo DB und Java SDK zum Erstellen einer Konsolen-Web-App.In this quickstart, you'll use the Azure Cosmos DB API for Mongo DB and Java SDK to create a console web app. In Azure Cosmos DB können Sie schnell Dokument-, Schlüssel/Wert- und Graph-Datenbanken erstellen und abfragen und dabei stets die Vorteile der globalen Verteilung und der horizontalen Skalierung nutzen, die Cosmos DB zugrunde liegen.Azure Cosmos DB allows you to quickly create and query document, key/value and graph databases, all of which benefit from the global distribution and horizontal scale capabilities at the core of Cosmos DB.

In diesem Schnellstart wird veranschaulicht, wie ein Cosmos-Konto mit der API für MongoDB von Azure Cosmos DB erstellt wird.This quickstart demonstrates how to create a Cosmos account with Azure Cosmos DB's API for MongoDB. Anschließend erstellen Sie eine Konsolen-App mit dem MongoDB Java-Treiber und stellen diese bereit.You'll then build and deploy a console app built using the MongoDB Java driver.

VoraussetzungenPrerequisites

Bevor Sie dieses Beispiel ausführen können, müssen folgende Voraussetzungen erfüllt sein:Before you can run this sample, you must have the following prerequisites:

Wenn Sie kein Azure-Abonnement besitzen, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.If you don't have an Azure subscription, create a free account before you begin.

Alternativ können Sie Azure Cosmos DB ohne Azure-Abonnement testen – kostenlos und ohne Verpflichtung.Alternatively, you can Try Azure Cosmos DB for free without an Azure subscription, free of charge and commitments. Oder Sie verwenden für dieses Tutorial den Azure Cosmos DB-Emulator mit der folgenden Verbindungszeichenfolge:Or you can use the Azure Cosmos DB Emulator for this tutorial with a connection string of

mongodb://localhost:C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==@localhost:10255/admin?ssl=true

Erstellen eines DatenbankkontosCreate a database account

  1. Melden Sie sich in einem neuen Fenster beim Azure-Portal an.In a new window, sign in to the Azure portal.

  2. Wählen Sie im linken Menü Ressource erstellen > Datenbanken und anschließend unter Azure Cosmos DB die Option Erstellen aus.In the left menu, select Create a resource, select Databases, and then under Azure Cosmos DB, select Create.

    Screenshot des Azure-Portals mit Hervorhebung von „Weitere Dienste“ und „Azure Cosmos DB“

  3. Geben Sie auf der Seite Azure Cosmos DB-Konto erstellen die Einstellungen für das neue Azure Cosmos DB-Konto ein.In the Create Azure Cosmos DB Account page, enter the settings for the new Azure Cosmos DB account.

    EinstellungSetting valueValue BeschreibungDescription
    SubscriptionSubscription Ihr AbonnementYour subscription Wählen Sie das Azure-Abonnement aus, das Sie für dieses Azure Cosmos DB-Konto verwenden möchten.Select the Azure subscription that you want to use for this Azure Cosmos DB account.
    RessourcengruppeResource Group Neu erstellenCreate new

    Derselbe eindeutige Name wie für die IDThen enter the same unique name as provided in ID
    Wählen Sie Neu erstellen.Select Create new. Geben Sie dann einen neuen Ressourcengruppenname für Ihr Konto ein.Then enter a new resource-group name for your account. Verwenden Sie der Einfachheit halber denselben Namen wie bei Ihrer ID.For simplicity, use the same name as your ID.
    KontonameAccount Name Geben Sie einen eindeutigen Namen ein.Enter a unique name Geben Sie einen eindeutigen Namen ein, der Ihr Azure Cosmos DB-Konto identifiziert.Enter a unique name to identify your Azure Cosmos DB account. Da mongo.cosmos.azure.com an die ID angefügt wird, die Sie für die URI-Erstellung angeben, muss die ID eindeutig sein.Because mongo.cosmos.azure.com is appended to the ID that you provide to create your URI, use a unique ID.

    Die ID darf nur Kleinbuchstaben, Zahlen und den Bindestrich (-) enthalten.The ID can use only lowercase letters, numbers, and the hyphen (-) character. Sie muss zwischen 3 und 31 Zeichen lang sein.It must be between 3 and 31 characters in length.
    APIAPI Azure Cosmos DB-API für MongoDBAzure Cosmos DB's API for MongoDB Die API bestimmt den Typ des zu erstellenden Kontos.The API determines the type of account to create. Azure Cosmos DB stellt fünf APIs bereit: Kern-API (SQL) für Dokumentdatenbanken, Gremlin-API für Graphdatenbanken, API für MongoDB von Azure Cosmos DB für Dokumentdatenbanken, Azure Table und Cassandra.Azure Cosmos DB provides five APIs: Core (SQL) for document databases, Gremlin for graph databases, Azure Cosmos DB's API MongoDB for document databases, Azure Table, and Cassandra. Derzeit müssen Sie ein separates Konto für jede API erstellen.Currently, you must create a separate account for each API.

    Wählen Sie MongoDB aus, da Sie mit dieser Schnellstartanleitung eine Sammlung erstellen, die mit MongoDB verwendet werden kann.Select MongoDB because in this quickstart you are creating a collection that works with MongoDB.
    LocationLocation Wählen Sie die Region aus, die Ihren Benutzern am nächsten liegt.Select the region closest to your users Wählen Sie einen geografischen Standort aus, an dem Ihr Azure Cosmos DB-Konto gehostet werden soll.Select a geographic location to host your Azure Cosmos DB account. Verwenden Sie einen Standort, der Ihren Benutzern am nächsten liegt, um ihnen einen schnellen Zugriff auf die Daten zu gewähren.Use the location that's closest to your users to give them the fastest access to the data.
    VersionVersion 3.63.6 Wählen Sie die Wire Protocol-Version 3.6 von MongoDB bzw. aus Gründen der Abwärtskompatibilität Version 3.2 aus.Select the MongoDB wire protocol version 3.6 or for backwards compatibility, select 3.2.

    Wählen Sie Bewerten + erstellen aus.Select Review+Create. Sie können die Abschnitte Netzwerk und Tags überspringen.You can skip the Network and Tags section.

    Die Seite „Neues Konto“ für Azure Cosmos DB

  4. Die Kontoerstellung dauert einige Minuten.The account creation takes a few minutes. Warten Sie, bis das Portal die Seite Herzlichen Glückwunsch! Ihr Cosmos-Konto mit Wire Protocol-Kompatibilität für MongoDB ist bereit anzeigt.Wait for the portal to display the Congratulations! Your Cosmos account with wire protocol compatibility for MongoDB is ready page.

    Der Bereich „Benachrichtigungen“ im Azure-Portal

Hinzufügen einer SammlungAdd a collection

Geben Sie Ihrer neuen Datenbank den Namen db und der neuen Sammlung den Namen coll.Name your new database, db, and your new collection, coll.

Sie können nun mithilfe des Daten-Explorer-Tools im Azure-Portal eine Datenbank und einen Container erstellen.You can now use the Data Explorer tool in the Azure portal to create a database and container.

  1. Wählen Sie Daten-Explorer > Neuer Container aus.Select Data Explorer > New Container.

    Der Bereich Container hinzufügen wird ganz rechts angezeigt. Möglicherweise müssen Sie nach rechts scrollen, damit Sie ihn sehen.The Add Container area is displayed on the far right, you may need to scroll right to see it.

    Daten-Explorer im Azure-Portal, Bereich „Container hinzufügen“

  2. Geben Sie auf der Seite Container hinzufügen die Einstellungen für den neuen Container ein.In the Add container page, enter the settings for the new container.

    EinstellungSetting Empfohlener WertSuggested value BESCHREIBUNGDescription
    Datenbank-IDDatabase ID AufgabenTasks Geben Sie ToDoList als Namen für die neue Datenbank ein.Enter ToDoList as the name for the new database. Datenbanknamen müssen zwischen 1 und 255 Zeichen lang sein und dürfen weder /, \\, #, ? noch nachgestellte Leerzeichen enthalten.Database names must contain from 1 through 255 characters, and they cannot contain /, \\, #, ?, or a trailing space. Aktivieren Sie die Option Provision database throughput (Datenbankdurchsatz bereitstellen). Diese Option ermöglicht es Ihnen, den für die Datenbank bereitgestellten Durchsatz auf alle Container in der Datenbank zu verteilen.Check the Provision database throughput option, it allows you to share the throughput provisioned to the database across all the containers within the database. Darüber hinaus hilft sie Ihnen dabei, Kosten zu sparen.This option also helps with cost savings.
    DurchsatzThroughput 400400 Belassen Sie den Durchsatz bei 400 Anforderungseinheiten pro Sekunde (RU/s).Leave the throughput at 400 request units per second (RU/s). Sie können den Durchsatz später zentral hochskalieren, wenn Sie Wartezeiten reduzieren möchten.If you want to reduce latency, you can scale up the throughput later.
    Container-IDContainer ID ItemsItems Geben Sie Items als Namen für den neuen Container ein.Enter Items as the name for your new container. Für Container-IDs gelten dieselben Zeichenanforderungen wie für Datenbanknamen.Container IDs have the same character requirements as database names.
    PartitionsschlüsselPartition key /category/category Das in diesem Artikel beschriebene Beispiel verwendet /category als Partitionsschlüssel.The sample described in this article uses /category as the partition key.

    Zusätzlich zu den zuvor beschriebenen Einstellungen können Sie optional auch eindeutige Schlüssel für den Container hinzufügen.In addition to the preceding settings, you can optionally add Unique keys for the container. In diesem Beispiel lassen wir das Feld leer.Let's leave the field empty in this example. Eindeutige Schlüssel bieten Entwicklern die Möglichkeit, ihrer Datenbank eine zusätzliche Datenintegritätsebene hinzuzufügen.Unique keys provide developers with the ability to add a layer of data integrity to the database. Durch das Erstellen einer Richtlinie für eindeutige Schlüssel beim Erstellen eines Containers wird die Eindeutigkeit von einem oder mehreren Werten pro Partitionsschlüssel gewährleistet.By creating a unique key policy while creating a container, you ensure the uniqueness of one or more values per partition key. Weitere Informationen finden Sie im Artikel Eindeutige Schlüssel in Azure Cosmos DB.To learn more, refer to the Unique keys in Azure Cosmos DB article.

    Klicken Sie auf OK.Select OK. Im Daten-Explorer werden die neue Datenbank und der neue Container angezeigt.The Data Explorer displays the new database and container.

Klonen der BeispielanwendungClone the sample application

Klonen Sie jetzt eine App aus GitHub, legen Sie die Verbindungszeichenfolge fest, und führen Sie die App aus.Now let's clone an app from GitHub, set the connection string, and run it. Sie werden feststellen, wie einfach Sie programmgesteuert mit Daten arbeiten können.You'll see how easy it is to work with data programmatically.

  1. Öffnen Sie eine Eingabeaufforderung, erstellen Sie einen neuen Ordner namens „git-samples“, und schließen Sie die Eingabeaufforderung.Open a command prompt, create a new folder named git-samples, then close the command prompt.

    md "C:\git-samples"
    
  2. Öffnen Sie ein Git-Terminalfenster (z.B. git bash), und verwenden Sie den Befehl cd, um in den neuen Ordner zu gelangen und dort die Beispiel-App zu installieren.Open a git terminal window, such as git bash, and use the cd command to change to the new folder to install the sample app.

    cd "C:\git-samples"
    
  3. Führen Sie den folgenden Befehl aus, um das Beispielrepository zu klonen.Run the following command to clone the sample repository. Dieser Befehl erstellt eine Kopie der Beispiel-App auf Ihrem Computer.This command creates a copy of the sample app on your computer.

    git clone https://github.com/Azure-Samples/azure-cosmos-db-mongodb-java-getting-started.git
    
  4. Öffnen Sie dann den Code in Ihrem bevorzugten Editor.Then open the code in your favorite editor.

Überprüfen des CodesReview the code

Dieser Schritt ist optional.This step is optional. Wenn Sie erfahren möchten, wie die Datenbankressourcen im Code erstellt werden, können Sie sich die folgenden Codeausschnitte ansehen.If you're interested in learning how the database resources are created in the code, you can review the following snippets. Andernfalls können Sie mit Aktualisieren der Verbindungszeichenfolge fortfahren.Otherwise, you can skip ahead to Update your connection string.

Die folgenden Codeausschnitte stammen alle aus der Datei „Program.java“.The following snippets are all taken from the Program.java file.

  • Der DocumentClient wird initialisiert.The DocumentClient is initialized.

    MongoClientURI uri = new MongoClientURI("FILLME");`
    
    MongoClient mongoClient = new MongoClient(uri);            
    
  • Es werden eine neue Datenbank und eine neue Sammlung erstellt.A new database and collection are created.

    MongoDatabase database = mongoClient.getDatabase("db");
    
    MongoCollection<Document> collection = database.getCollection("coll");
    
  • Einige Dokumente werden mit MongoCollection.insertOne eingefügtSome documents are inserted using MongoCollection.insertOne

    Document document = new Document("fruit", "apple")
    collection.insertOne(document);
    
  • Einige Abfragen werden mit MongoCollection.find durchgeführtSome queries are performed using MongoCollection.find

    Document queryResult = collection.find(Filters.eq("fruit", "apple")).first();
    System.out.println(queryResult.toJson());       
    

Aktualisieren der VerbindungszeichenfolgeUpdate your connection string

Wechseln Sie nun zurück zum Azure-Portal, um die Informationen der Verbindungszeichenfolge abzurufen und in die App zu kopieren.Now go back to the Azure portal to get your connection string information and copy it into the app.

  1. Wählen Sie auf der Kontoseite Schnellstart und dann Java aus, und kopieren Sie anschließend die Verbindungszeichenfolge in die Zwischenablage.From the Account, select Quick Start, select Java, then copy the connection string to your clipboard.

  2. Öffnen Sie die Datei Program.java, und ersetzen Sie das Argument des MongoClientURI-Konstruktors durch die Verbindungszeichenfolge.Open the Program.java file, replace the argument to the MongoClientURI constructor with the connection string. Sie haben die App nun mit allen erforderlichen Informationen für die Kommunikation mit Azure Cosmos DB aktualisiert.You've now updated your app with all the info it needs to communicate with Azure Cosmos DB.

Ausführen der KonsolenanwendungRun the console app

  1. Führen Sie mvn package in einem Terminal aus, um erforderliche NPM-Module zu installierenRun mvn package in a terminal to install required npm modules

  2. Führen Sie mvn exec:java -D exec.mainClass=GetStarted.Program in einem Terminal aus, um Ihre Java-Anwendung zu starten.Run mvn exec:java -D exec.mainClass=GetStarted.Program in a terminal to start your Java application.

Jetzt können Sie Robomongo / Studio 3T verwenden, um Ihre neuen Daten abzufragen, anzupassen und mit diesen zu arbeiten.You can now use Robomongo / Studio 3T to query, modify, and work with this new data.

Überprüfen von SLAs im Azure-PortalReview SLAs in the Azure portal

Im Azure-Portal werden Durchsatz, Speicher, Verfügbarkeit, Wartezeit und Konsistenz Ihres Cosmos DB-Kontos überwacht.The Azure portal monitors your Cosmos DB account throughput, storage, availability, latency, and consistency. Diagramme für Metriken einer Azure Cosmos DB-SLA (Service Level Agreement, Vereinbarung zum Servicelevel) zeigen den SLA-Wert im Vergleich zur tatsächlichen Leistung.Charts for metrics associated with an Azure Cosmos DB Service Level Agreement (SLA) show the SLA value compared to actual performance. Diese Sammlung von Metriken macht die Überwachung Ihrer SLAs transparent.This suite of metrics makes monitoring your SLAs transparent.

So überprüfen Sie Metriken und SLAs:To review metrics and SLAs:

  1. Wählen Sie im Navigationsmenü Ihres Cosmos DB-Kontos die Option Metrik aus.Select Metrics in your Cosmos DB account's navigation menu.

  2. Wählen Sie eine Registerkarte (etwa Wartezeit) und auf der rechten Seite einen Zeitraum aus.Select a tab such as Latency, and select a timeframe on the right. Vergleichen Sie Zeilen Tatsächlich und SLA in den Diagrammen.Compare the Actual and SLA lines on the charts.

    Azure Cosmos DB-Metriken

  3. Überprüfen Sie die Metriken auf den anderen Registerkarten.Review the metrics on the other tabs.

Bereinigen von RessourcenClean up resources

Wenn Sie Ihre Web-App und das Azure Cosmos DB-Konto fertiggestellt haben, können Sie die erstellten Azure-Ressourcen löschen, damit keine weiteren Gebühren anfallen.When you're done with your web app and Azure Cosmos DB account, you can delete the Azure resources you created so you don't incur more charges. So löschen Sie die Ressourcen:To delete the resources:

  1. Wählen Sie ganz links im Azure-Portal Ressourcengruppen aus.In the Azure portal, select Resource groups on the far left. Wenn das linke Menü reduziert ist, wählen Sie die Schaltfläche Erweitern aus, um es zu erweitern.If the left menu is collapsed, select Expand button to expand it.

  2. Wählen Sie die Ressourcengruppe aus, die Sie für diesen Schnellstart erstellt haben.Select the resource group you created for this quickstart.

    Auswählen der zu löschenden Ressourcengruppe

  3. Wählen Sie im neuen Fenster Ressourcengruppe löschen aus.In the new window, select Delete resource group.

    Löschen der Ressourcengruppe

  4. Geben Sie in dem nächsten Fenster den Namen der zu löschenden Ressourcengruppe ein, und wählen Sie dann Löschen aus.In the next window, enter the name of the resource group to delete, and then select Delete.

Nächste SchritteNext steps

In dieser Schnellstartanleitung haben Sie gelernt, wie Sie ein Cosmos-Konto erstellen, eine Sammlung erstellen und eine Konsolen-App ausführen.In this quickstart, you've learned how to create a Cosmos account, create a collection and run a console app. Jetzt können Sie zusätzliche Daten in Ihre Cosmos-Datenbank importieren.You can now import additional data to your Cosmos database.