Azure Cosmos DB for NoSQL: Příklady sady Java SDK v4
PLATÍ PRO: NoSQL
Důležité
Další informace o sadě Java SDK v4 najdete v poznámkách k verzi sady Java SDK služby Azure Cosmos DB v4, úložišti Maven, tipech k výkonu sady Java SDK služby Azure Cosmos DB v4 a průvodci odstraňováním potíží se sadou Java SDK služby Azure Cosmos DB v4. Pokud aktuálně používáte starší verzi než v4, přečtěte si průvodce migrací na sadu Java SDK služby Azure Cosmos DB verze 4 , kde najdete pomoc s upgradem na verzi 4.
Důležité
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
- Můžete si aktivovat výhody pro předplatitele sady Visual Studio: Za své předplatné sady Visual Studio každý měsíc získáváte kredity, které můžete použít k placení za služby Azure.
Službu Azure Cosmos DB můžete vyzkoušet zdarma bez předplatného Azure a bez nutnosti závazku. Alternativně můžete vytvořit účet úrovně Free služby Azure Cosmos DB s prvních 1 000 RU/s a 25 GB úložiště zdarma. Emulátor služby Azure Cosmos DB můžete také použít s identifikátorem URI https://localhost:8081
služby . Klíč, který se má použít s emulátorem, najdete v tématu Ověřování požadavků.
Nejnovější ukázkové aplikace, které provádějí operace CRUD a další běžné operace s prostředky Azure Cosmos DB, jsou součástí úložiště GitHubu azure-cosmos-java-sql-api-samples . Tento článek obsahuje:
- Odkazy na úlohy v jednotlivých ukázkových souborech projektů v Javě.
- Odkazy na související referenční obsah rozhraní API
Požadavky
Ke spuštění této ukázkové aplikace budete potřebovat:
- Sadu Java Development Kit (JDK) 8
- Azure Cosmos DB Java SDK v4
Volitelně můžete pomocí Mavenu získat nejnovější binární soubory sady Java SDK služby Azure Cosmos DB verze 4 pro použití v projektu. Maven automaticky přidá všechny potřebné závislosti. Můžete taky přímo stáhnout závislosti uvedené v souboru pom.xml a přidat je do cesty sestavení.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-cosmos</artifactId>
<version>LATEST</version>
</dependency>
Spuštění ukázkových aplikací
Naklonování ukázkového úložiště:
$ git clone https://github.com/Azure-Samples/azure-cosmos-java-sql-api-samples.git
$ cd azure-cosmos-java-sql-api-samples
Ukázky můžete spustit pomocí integrovaného vývojového prostředí (Eclipse, IntelliJ nebo VS Code) nebo z příkazového řádku pomocí Mavenu.
Tyto proměnné prostředí musí být nastaveny.
ACCOUNT_HOST=your account hostname;ACCOUNT_KEY=your account primary key
abyste ukázkám poskytli přístup pro čtení a zápis k vašemu účtu.
Pokud chcete spustit ukázku, zadejte její hlavní třídu.
com.azure.cosmos.examples.sample.synchronicity.MainClass
kde sample.synchronicity.MainClass může být
- crudquickstart.sync.SampleCRUDQuickstart
- crudquickstart.async.SampleCRUDQuickstartAsync
- indexmanagement.sync.SampleIndexManagement
- indexmanagement.async.SampleIndexManagementAsync
- storedprocedure.sync.SampleStoredProcedure
- storedprocedure.async.SampleStoredProcedureAsync
- kanál změn. SampleChangeFeedProcessor (Changefeed má pouze asynchronní ukázku, žádný sync sample.) ... atd...
Poznámka:
Každá ukázka je samostatná, sama se nastaví a po ukončení příkladu vyčistí svoje prostředky. Ukázky vydávají více volání k vytvoření nebo CosmosContainer
CosmosAsyncContainer
. Pokaždé, když k tomu dojde, bude pro vaše předplatné účtována 1 hodina využití pro úroveň výkonu vytvořené kolekce.
Příklady pro databáze
Ukázkové soubory CRUD databáze pro synchronizaci a asynchronní synchronizaci ukazují, jak provádět následující úlohy. Další informace o databázích Azure Cosmos DB před spuštěním následujících ukázek najdete v koncepčním článku Práce s databázemi, kontejnery a položkami .
Úloha | Reference rozhraní API |
---|---|
Vytvořit databázi | CosmosClient.createDatabaseIfNotExists CosmosAsyncClient.createDatabaseIfNotExists |
Čtení databáze podle ID | CosmosClient.getDatabase CosmosAsyncClient.getDatabase |
Čtení všech databází | CosmosClient.readAllDatabases CosmosAsyncClient.readAllDatabases |
Odstranění databáze | CosmosDatabase.delete CosmosAsyncDatabase.delete |
Příklady pro kolekce
Soubory s ukázkami CRUD kolekce pro synchronizaci a asynchronní synchronizaci ukazují, jak provádět následující úlohy. Další informace o kolekcích Azure Cosmos DB před spuštěním následujících ukázek najdete v koncepčním článku Práce s databázemi, kontejnery a položkami .
Úloha | Reference rozhraní API |
---|---|
Vytvoření kolekce | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Změna konfigurovaného výkonu kolekce | CosmosContainer.replaceThroughput CosmosAsyncContainer.replaceProvisionedThroughput |
Získání kolekce podle ID | CosmosDatabase.getContainer CosmosAsyncDatabase.getContainer |
Čtení všech kolekcí v databázi | CosmosDatabase.readAllContainers CosmosAsyncDatabase.readAllContainers |
Odstranění kolekce | CosmosContainer.delete CosmosAsyncContainer.delete |
Příklady shromažďování automatického škálování
Další informace o automatickém škálování před spuštěním těchto ukázek najdete v těchto pokynech pro povolení automatického škálování v účtu a v databázích a kontejnerech.
Ukázkové soubory databáze automatického škálování pro synchronizaci a synchronizaci ukazují, jak provést následující úlohu.
Úloha | Reference rozhraní API |
---|---|
Vytvoření databáze se zadanou maximální propustností automatického škálování | CosmosClient.createDatabase CosmosAsyncClient.createDatabase |
Ukázkové soubory kolekce automatického škálování pro synchronizaci a asynchronní synchronizaci ukazují, jak provádět následující úlohy.
Úloha | Reference rozhraní API |
---|---|
Vytvoření kolekce se zadanou maximální propustností automatického škálování | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Změna nakonfigurované maximální propustnosti automatického škálování kolekce | CosmosContainer.replaceThroughput CosmosAsyncContainer.replaceThroughput |
Čtení konfigurace propustnosti automatického škálování kolekce | CosmosContainer.readThroughput CosmosAsyncContainer.readThroughput |
Příklady shromažďování analytických úložišť
Soubory CRUD kolekce analytického úložiště pro synchronizaci a asynchronní synchronizaci ukazují, jak provádět následující úlohy. Pokud se chcete seznámit s kolekcemi Azure Cosmos DB před spuštěním následujících ukázek, přečtěte si o synapse a analytickém úložišti Azure Cosmos DB.
Úloha | Reference rozhraní API |
---|---|
Vytvoření kolekce | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Příklady pro položky
Soubory s ukázkami CRUD dokumentu pro synchronizaci a synchronizaci ukazují, jak provádět následující úlohy. Další informace o dokumentech služby Azure Cosmos DB před spuštěním následujících ukázek najdete v koncepčním článku Práce s databázemi, kontejnery a položkami .
Poznámka:
Při provádění operací s konkrétní položkou je nutné zadat klíč oddílu.
Úloha | Reference rozhraní API |
---|---|
Vytvoření dokumentu | CosmosContainer.createItem CosmosAsyncContainer.createItem |
Čtení dokumentu podle ID | CosmosContainer.readItem CosmosAsyncContainer.readItem |
Dotazování dokumentů | CosmosContainer.queryItems CosmosAsyncContainer.queryItems |
Nahrazení dokumentu | CosmosContainer.replaceItem CosmosAsyncContainer.replaceItem |
Upsert dokumentu | CosmosContainer.upsertItem CosmosAsyncContainer.upsertItem |
Odstranění dokumentu | CosmosContainer.deleteItem CosmosAsyncContainer.deleteItem |
Nahrazení dokumentu podmíněnou kontrolou značky ETag | CosmosItemRequestOptions.setIfMatchETag (synchronizace) CosmosItemRequestOptions.setIfMatchETag (async) |
Čtení dokumentu pouze v případě, že došlo ke změně dokumentu | CosmosItemRequestOptions.setIfNoneMatchETag (synchronizace) CosmosItemRequestOptions.setIfNoneMatchETag (async) |
Částečná aktualizace dokumentů | CosmosContainer.patchItem |
Hromadná aktualizace dokumentu | Hromadné ukázky |
Transakční dávka | dávkové ukázky |
Příklady indexování
Soubor Ukázky kolekce CRUD ukazuje, jak provádět následující úlohy. Další informace o indexování ve službě Azure Cosmos DB před spuštěním následujících ukázek najdete v koncepčních článcích o zásadách indexování, typech indexování a cest indexování.
Úloha | Reference rozhraní API |
---|---|
Zahrnutí zadaných cest k dokumentům do indexu | IndexingPolicy.IncludedPaths |
Vyloučení zadaných cest k dokumentům z indexu | IndexingPolicy.ExcludedPaths |
Vytvoření složeného indexu | IndexingPolicy.setCompositeIndexes CompositePath |
Vytvoření geoprostorového indexu | IndexingPolicy.setSpatialIndexes SpatialSpec SpatialType |
Další informace o indexování najdete v tématu pojednávajícím o zásadách indexování služby Azure DB Cosmos.
Příklady dotazů
Soubory ukázek dotazů pro synchronizaci a asynchronní synchronizaci ukazují, jak provádět následující úlohy pomocí gramatiky dotazů SQL. Další informace o referenčních informacích k dotazům SQL ve službě Azure Cosmos DB před spuštěním následujících ukázek najdete v příkladech dotazů SQL pro Službu Azure Cosmos DB.
Příklady kanálů změn
Ukázkový soubor procesoru kanálu změn ukazuje, jak provádět následující úlohy. Další informace o kanálu změn ve službě Azure Cosmos DB před spuštěním následujících ukázek najdete v tématu Čtení kanálu změn a procesoru kanálu změn ve službě Azure Cosmos DB.
Úloha | Reference rozhraní API |
---|---|
Základní funkce kanálu změn | ChangeFeedProcessor.changeFeedProcessorBuilder |
Čtení kanálu změn od začátku | ChangeFeedProcessorOptions.setStartFromBeginning() |
Příklady programování na straně serveru
Ukázkový soubor Uložená procedura ukazuje, jak provádět následující úlohy. Další informace o programování na straně serveru ve službě Azure Cosmos DB před spuštěním následujících ukázek najdete v tématu Uložené procedury, triggery a uživatelem definované funkce.
Úloha | Reference rozhraní API |
---|---|
Vytvoření uložené procedury | CosmosScripts.createStoredProcedure |
Spuštění uložené procedury | CosmosStoredProcedure.execute |
Odstranění uložené procedury | CosmosStoredProcedure.delete |
Další kroky
Pokoušíte se naplánovat kapacitu migrace do služby Azure Cosmos DB? Informace o stávajícím databázovém clusteru můžete použít k plánování kapacity.
- Pokud víte, že je počet virtuálních jader a serverů ve vašem existujícím databázovém clusteru, přečtěte si o odhadu jednotek žádostí pomocí virtuálních jader nebo virtuálních procesorů.
- Pokud znáte typické sazby požadavků pro vaši aktuální úlohu databáze, přečtěte si informace o odhadu jednotek žádostí pomocí plánovače kapacity služby Azure Cosmos DB.