Snabbstart: Skapa en konsolapp med Java och Azure Cosmos DB för MongoDB
GÄLLER FÖR: MongoDB
I den här snabbstarten skapar och hanterar du ett Azure Cosmos DB för MongoDB-konto från Azure-portalen och lägger till data med hjälp av en Java SDK-app som klonas från GitHub. Azure Cosmos DB är en databastjänst med flera modeller som gör att du snabbt kan skapa och fråga efter dokument-, tabell-, nyckelvärde- och grafdatabaser med globala distributions- och vågräta skalningsfunktioner.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa en kostnadsfritt. Eller prova Azure Cosmos DB kostnadsfritt utan en Azure-prenumeration. Du kan också använda Azure Cosmos DB-emulatorn med niska veze
.mongodb://localhost:C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==@localhost:10255/admin?ssl=true
. - Java Development Kit (JDK) version 8.
- Maven. Eller kör
apt-get install maven
för att installera Maven. - Git.
Skapa ett databaskonto
Logga in på Azure Portal i ett nytt webbläsarfönster.
I den vänstra menyn väljer du Skapa en resurs.
På sidan Nytt väljer du Databaser>Azure Cosmos DB.
På sidan Välj API-alternativ väljer du Azure Cosmos DB för MongoDB>Create.
API:et avgör vilken typ av konto som skapas. Välj Azure Cosmos DB för MongoDB eftersom du skapar en samling som fungerar med MongoDB i den här snabbstarten. Mer information finns i Översikt över Azure Cosmos DB för MongoDB.
På sidan Skapa Azure Cosmos DB-konto anger du inställningarna för det nya Azure Cosmos DB-kontot.
Inställning Värde beskrivning Prenumeration Prenumerationsnamn Välj den Azure-prenumeration som du vill använda för det här Azure Cosmos DB-kontot. Resursgrupp Namn på resursgrupp Välj en resursgrupp eller välj Skapa ny och ange sedan ett unikt namn för den nya resursgruppen. Kontonamn Ange ett unikt namn Ange ett unikt namn som identifierar ditt Azure Cosmos DB-konto. Konto-URI:n läggs mongo.cosmos.azure.com till ditt unika kontonamn.
Kontonamnet kan bara använda gemener, siffror och bindestreck (-) och måste vara mellan 3 och 44 tecken långt.Plats Den region som är närmast dina användare Välj en geografisk plats som värd för ditt Azure Cosmos DB-konto. Använd den plats som är närmast dina användare för att ge dem så snabb åtkomst till data som möjligt. Kapacitetsläge Etablerat dataflöde eller serverlöst Välj Etablerat dataflöde för att skapa ett konto i etablerat dataflödesläge . Välj Serverlös för att skapa ett konto i serverlöst läge.
Obs! Endast API för MongoDB-versionerna 4.2, 4.0 och 3.6 stöds av serverlösa konton. Om du väljer 3.2 som version framtvingas kontot i etablerat dataflödesläge.Tillämpa rabatt på den kostnadsfria Azure Cosmos DB-nivån Tillämpa eller tillämpa inte Med den kostnadsfria Azure Cosmos DB-nivån får du de första 1 000 RU/s och 25 GB lagringsutrymme kostnadsfritt på ett konto. Lär dig mer om kostnadsfri nivå. Version Välj den serverversion som krävs Azure Cosmos DB för MongoDB är kompatibelt med serverversion 4.2, 4.0, 3.6 och 3.2. Du kan uppgradera eller nedgradera ett konto när det har skapats. Kommentar
Du kan högst ha ett Azure Cosmos DB-konto med kostnadsfri nivå per Azure-prenumeration och du måste välja det när du skapar kontot. Om du inte ser alternativet att tillämpa rabatten för kostnadsfri nivå betyder det att ett annat konto i prenumerationen redan har aktiverats med kostnadsfri nivå.
På fliken Global distribution konfigurerar du följande information. Du kan lämna standardvärdena i den här snabbstarten:
Inställning Värde beskrivning Geo-redundans Inaktivera Aktivera eller inaktivera global distribution på ditt konto genom att para ihop din region med en parregion. Du kan lägga till fler regioner i ditt konto senare. Skrivåtgärder för flera regioner Inaktivera Med skrivfunktioner i flera regioner kan du dra nytta av det etablerade dataflödet för dina databaser och containrar över hela världen. Kommentar
Följande alternativ är inte tillgängliga om du väljer Serverlös som kapacitetsläge:
- Tillämpa rabatt för kostnadsfri nivå
- Geo-redundans
- Skrivåtgärder för flera regioner
Du kan också konfigurera ytterligare information på följande flikar:
- Nätverk – Konfigurera åtkomst från ett virtuellt nätverk.
- Säkerhetskopieringsprincip – Konfigurera antingen periodisk eller kontinuerlig säkerhetskopieringsprincip.
- Kryptering – Använd antingen tjänsthanterad nyckel eller en kundhanterad nyckel.
- Taggar – Taggar är namn/värde-par som gör att du kan kategorisera resurser och visa konsoliderad fakturering genom att tillämpa samma tagg på flera resurser och resursgrupper.
Välj Granska + skapa.
Det tar några minuter att skapa kontot. Vänta tills portalen visar Grattis! Ditt Azure Cosmos DB for MongoDB-konto är redo .
Lägga till en samling
Namnge din nya databasdatabas och din nya samlingssortering.
Nu kan du använda datautforskaren i Azure-portalen för att skapa en Azure Cosmos DB-API för MongoDB-databas och container.
Välj Datautforskaren>Ny container.
Området Lägg till container visas längst till höger. Du kan behöva rulla åt höger för att se det.
På sidan Lägg till container anger du inställningarna för den nya containern.
Inställning Föreslaget värde beskrivning Databas-ID Db Ange db som namn på den nya databasen. Databasnamn måste innehålla 1–255 tecken och får inte innehålla /, \\, #, ?
, eller avslutande blanksteg. Kontrollera alternativet Etablera databasdataflöde. Det gör att du kan dela det dataflöde som har etablerats till databasen över alla containrar i databasen. Det här alternativet hjälper också till med kostnadsbesparingar.Dataflöde 400 Lämna dataflödet på 400 enheter för begäran per sekund (RU/s). Du kan skala upp dataflödet senare om du vill minska svarstiden. Du kan också välja Autoskalningsläge, vilket ger dig ett antal RU/s som dynamiskt ökar och minskar efter behov. Samlings-ID saml Ange coll
som namn på den nya containern. För container-ID:n gäller samma teckenkrav som för databasnamn.Lagringskapacitet Fast (10 GB) Ange Fast (10 GB) för det här programmet. Om du väljer Obegränsat måste du skapa en Shard Key
, som alla infogade objekt kräver.Shard-nyckel /_Id Exemplet som beskrivs i den här artikeln använder inte en Shard-nyckel, så om du anger den till /_id används det automatiskt genererade ID-fältet som shardnyckel. Läs mer om partitionering, även kallat partitionering, i Partitionering i Azure Cosmos DB Välj OK. Datautforskaren visar den nya databasen och containern.
Klona exempelprogrammet
Nu ska vi klona en app från GitHub, ange anslutningssträngen och köra appen. Du kommer att se hur lätt det är att arbeta med data programmässigt.
Öppna en kommandotolk, skapa en ny mapp som heter git-samples och stäng sedan kommandotolken.
md "C:\git-samples"
Öppna ett git-terminalfönster, t.ex. git bash, och använd kommandot
cd
för att ändra till den nya mappen där du vill installera exempelappen.cd "C:\git-samples"
Klona exempellagringsplatsen med följande kommando. Detta kommando skapar en kopia av exempelappen på din dator.
git clone https://github.com/Azure-Samples/azure-cosmos-db-mongodb-java-getting-started.git
Öppna sedan koden i det redigeringsprogram du föredrar.
Granska koden
Steget är valfritt. Om du vill lära dig hur databasresurserna skapas i koden kan du granska följande kodavsnitt. Annars kan du gå vidare till Uppdatera din anslutningssträng.
Följande kodfragment hämtas alla från filen Program.java .
Den här konsolappen använder MongoDB Java-drivrutinen.
DocumentClient initieras.
MongoClientURI uri = new MongoClientURI("FILLME");` MongoClient mongoClient = new MongoClient(uri);
En ny databas och samling skapas.
MongoDatabase database = mongoClient.getDatabase("db"); MongoCollection<Document> collection = database.getCollection("coll");
Några dokument infogas med
MongoCollection.insertOne
Document document = new Document("fruit", "apple") collection.insertOne(document);
Några frågor körs med
MongoCollection.find
Document queryResult = collection.find(Filters.eq("fruit", "apple")).first(); System.out.println(queryResult.toJson());
Uppdatera din anslutningssträng
Gå nu tillbaka till Azure-portalen för att hämta information om din anslutningssträng och kopiera den till appen.
Från ditt Azure Cosmos DB-konto väljer du Snabbstart, Java och kopierar sedan niska veze till Urklipp.
Öppna filen Program.java och ersätt argumentet med MongoClientURI-konstruktorn med niska veze. Du har nu uppdaterat appen med all information som behövs för kommunikation med Azure Cosmos DB.
Kör konsolappen
Kör
mvn package
i en terminal för att installera nödvändiga paketKör
mvn exec:java -D exec.mainClass=GetStarted.Program
i en terminal för att starta Java-programmet.
Nu kan du använda Robomongo / Studio 3T till att ställa frågor mot, ändra och arbeta med dessa nya data.
Granska serviceavtal i Azure Portal
Azure-portalen övervakar dataflödet, lagringen, tillgängligheten, svarstiden och konsekvensen för ditt Azure Cosmos DB-konto. Diagram för mått som är associerade med ett serviceavtal för Azure Cosmos DB (SLA) visar SLA-värdet jämfört med faktiska prestanda. Den här måttsviten gör övervakningen av serviceavtalen transparent.
Så här granskar du mått och serviceavtal:
Välj Mått i ditt Azure Cosmos DB-kontos navigeringsmeny.
Välj en flik, till exempel Svarstid, och välj en tidsram till höger. Jämför linjerna Actual och SLA i diagrammen.
Granska måtten på de andra flikarna.
Rensa resurser
När du är klar med appen och Azure Cosmos DB-kontot kan du ta bort de Azure-resurser som du skapade så att du inte debiteras fler avgifter. Ta bort resurser:
I sökfältet i Azure-portalen söker du efter och väljer Resursgrupper.
I listan väljer du den resursgrupp som du skapade för den här snabbstarten.
På sidan Översikt för resursgrupp väljer du Ta bort resursgrupp.
I nästa fönster anger du namnet på resursgruppen som ska tas bort och väljer sedan Ta bort.
Nästa steg
I den här snabbstarten har du lärt dig hur du skapar ett Azure Cosmos DB för MongoDB-konto, lägger till en databas och container med datautforskaren och lägger till data med hjälp av en Java-konsolapp. Nu kan du importera ytterligare data till din Azure Cosmos DB-databas.
Försöker du planera kapacitet för en migrering till Azure Cosmos DB? Du kan använda information om ditt befintliga databaskluster för kapacitetsplanering.
- Om allt du vet är antalet virtuella kärnor och servrar i ditt befintliga databaskluster läser du om att uppskatta enheter för begäranden med virtuella kärnor eller virtuella kärnor
- Om du känner till vanliga begärandefrekvenser för din aktuella databasarbetsbelastning kan du läsa om att uppskatta enheter för begäranden med azure Cosmos DB-kapacitetshanteraren