Azure Cosmos DB for NoSQL: Java SDK v4-példák

A KÖVETKEZŐRE VONATKOZIK: NoSQL

Fontos

A Java SDK 4-es verziójával kapcsolatos további információkért tekintse meg az Azure Cosmos DB Java SDK v4 kibocsátási megjegyzéseit, a Maven-adattárat, az Azure Cosmos DB Java SDK v4 teljesítménytippeket és az Azure Cosmos DB Java SDK v4 hibaelhárítási útmutatóját . Ha jelenleg a v4-es verziónál régebbi verziót használ, a v4-re való frissítésről a Migrálás az Azure Cosmos DB Java SDK v4-es verziójára című útmutatóban olvashat.

Fontos

If you don't have an Azure subscription, create an Azure free account before you begin.

Az Azure Cosmos DB ingyenesen, Azure-előfizetés nélkül és kötelezettségvállalás nélkül is kipróbálható. Másik lehetőségként létrehozhat egy ingyenes szintű Azure Cosmos DB-fiókot, amely az első 1000 RU/s és 25 GB tárterülettel rendelkezik ingyenesen. Az Azure Cosmos DB emulátort az URI-val is használhatja https://localhost:8081. Az emulátorhoz használandó kulcsról a kérelmek hitelesítése című témakörben olvashat.

Az azure-cosmos-java-sql-api-samples GitHub-adattár tartalmazza a CRUD-műveleteket és az Azure Cosmos DB-erőforrásokon végzett egyéb gyakori műveleteket végző legújabb mintaalkalmazásokat . Ez a cikk a következő információkat tartalmazza:

  • Az egyes Java-projektfájlokban lévő feladatok hivatkozásai.
  • A kapcsolódó API-referenciatartalmak hivatkozásai.

Előfeltételek

A mintaalkalmazás futtatásához a következőkre lesz szüksége:

  • Java fejlesztői készlet 8-as verziója
  • Azure Cosmos DB Java SDK v4

Ha szeretné, a Maven használatával lekérheti a legújabb Azure Cosmos DB Java SDK v4 bináris fájlokat a projektben való használatra. A Maven automatikusan hozzáadja az összes szükséges függőséget. Egyéb esetben közvetlenül letöltheti a pom.xml fájlban szereplő függőségeket, és az elérési úthoz adhatja őket.

<dependency>
	<groupId>com.azure</groupId>
	<artifactId>azure-cosmos</artifactId>
	<version>LATEST</version>
</dependency>

A mintaalkalmazások futtatása

A mintaadattár klónozása:

$ git clone https://github.com/Azure-Samples/azure-cosmos-java-sql-api-samples.git

$ cd azure-cosmos-java-sql-api-samples

A mintákat futtathatja IDE (Eclipse, IntelliJ vagy VS Code) vagy a parancssorból a Maven használatával.

Ezeket a környezeti változókat be kell állítani

ACCOUNT_HOST=your account hostname;ACCOUNT_KEY=your account primary key

annak érdekében, hogy a minták olvasási/írási hozzáférést kaphassanak a fiókjához.

Minta futtatásához adja meg annak főosztályát

com.azure.cosmos.examples.sample.synchronicity.MainClass

where sample.synchronicity.MainClass lehet

  • crudquickstart.sync.SampleCRUDQuickstart
  • crudquickstart.async.SampleCRUDQuickstartAsync
  • indexmanagement.sync.SampleIndexManagement
  • indexmanagement.async.SampleIndexManagementAsync
  • storedprocedure.sync.SampleStoredProcedure
  • storedprocedure.async.SampleStoredProcedureAsync
  • changefeed. SampleChangeFeedProcessor (A Changefeed csak aszinkron mintával rendelkezik, nincs szinkronizálási minta.) ... Stb...

Megjegyzés:

Minden minta önálló; magát állítja be, és törli önmagát. A minták több hívást is kiadnak egy CosmosContainer vagy CosmosAsyncContainertöbb hívás létrehozásához. Minden ilyen hívás esetén az előfizetésére 1 órányi használat terhelődik a létrehozott gyűjtemény teljesítményszintjének megfelelően.

Adatbázis-példák

A szinkronizáláshoz és aszinkron adatbázis CRUD-mintafájljai a következő feladatok elvégzését mutatják be. Az Alábbi minták futtatása előtt az Azure Cosmos DB-adatbázisokról további információt az adatbázisok, tárolók és elemek használata című témakörben talál.

Task API-referencia
-adatbázis létrehozása CosmosClient.createDatabaseIfNotExists
CosmosAsyncClient.createDatabaseIfNotExists
Adatbázis beolvasása azonosító alapján CosmosClient.getDatabase
CosmosAsyncClient.getDatabase
Az összes adatbázis olvasása CosmosClient.readAllDatabases
CosmosAsyncClient.readAllDatabases
Adatbázis törlése CosmosDatabase.delete
CosmosAsyncDatabase.delete

Gyűjteménypéldák

A crud-minták gyűjteményének szinkronizálási és aszinkron fájljai az alábbi feladatok elvégzését mutatják be. Az Alábbi minták futtatása előtt az Azure Cosmos DB-gyűjteményekkel kapcsolatos további információkért tekintse meg az adatbázisok, tárolók és elemek használatának elméleti cikkét.

Task API-referencia
Gyűjtemény létrehozása CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
Gyűjtemény konfigurált teljesítményének módosítása CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceProvisionedThroughput
Gyűjtemény lekérése azonosító alapján CosmosDatabase.getContainer
CosmosAsyncDatabase.getContainer
Egy adatbázisban lévő összes gyűjtemény olvasása CosmosDatabase.readAllContainers
CosmosAsyncDatabase.readAllContainers
Gyűjtemény törlése CosmosContainer.delete
CosmosAsyncContainer.delete

Példák az automatikus skálázási gyűjteményre

Ha többet szeretne megtudni az automatikus skálázásról a minták futtatása előtt, tekintse meg ezeket az utasításokat az automatikus skálázás engedélyezéséhez a fiókjában , illetve az adatbázisokban és a tárolókban.

A szinkronizáláshoz és aszinkronhoz tartozó automatikus skálázási adatbázis-mintafájlok bemutatják, hogyan hajthatja végre a következő feladatot.

Task API-referencia
Adatbázis létrehozása megadott automatikus skálázási maximális átviteli sebességgel CosmosClient.createDatabase
CosmosAsyncClient.createDatabase

Az automatikus skálázási gyűjtemény a szinkronizáláshoz és az aszinkronhoz tartozó fájlokat mutatja be, hogyan hajthatja végre a következő feladatokat.

Task API-referencia
Gyűjtemény létrehozása megadott automatikus skálázási maximális átviteli sebességgel CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
A gyűjtemények maximális átviteli sebességének konfigurált automatikus skálázási sebességének módosítása CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceThroughput
Gyűjtemény automatikus skálázási átviteli sebességének konfigurálása CosmosContainer.readThroughput
CosmosAsyncContainer.readThroughput

Elemzési tárgyűjteményi példák

Az elemzési tárgyűjtemény CRUD-mintáinak szinkronizálási és aszinkron fájljai a következő feladatok elvégzését mutatják be. Az Azure Cosmos DB-gyűjteményekről az alábbi minták futtatása előtt az Azure Cosmos DB Synapse és az Elemzési tár című témakörben olvashat.

Task API-referencia
Gyűjtemény létrehozása CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists

Példák elemekre

A crud-minták szinkronizálási és aszinkron dokumentumfájljai az alábbi feladatok elvégzését mutatják be. Az Alábbi minták futtatása előtt az Azure Cosmos DB-dokumentumok megismeréséhez tekintse meg az adatbázisok, tárolók és elemek használatának elméleti cikkét.

Megjegyzés:

Egy partíciókulcsot kell megadnia, amikor műveleteket hajt végre egy adott elemen.

Task API-referencia
Dokumentum létrehozása CosmosContainer.createItem
CosmosAsyncContainer.createItem
Dokumentum olvasása ID (azonosító) alapján CosmosContainer.readItem
CosmosAsyncContainer.readItem
Dokumentumok lekérdezése CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Egy dokumentum lecserélése CosmosContainer.replaceItem
CosmosAsyncContainer.replaceItem
Dokumentum frissítése és beszúrása CosmosContainer.upsertItem
CosmosAsyncContainer.upsertItem
Dokumentum törlése CosmosContainer.deleteItem
CosmosAsyncContainer.deleteItem
Dokumentum cseréje feltételes ETag-ellenőrzésre CosmosItemRequestOptions.setIfMatchETag (szinkronizálás)
CosmosItemRequestOptions.setIfMatchETag (async)
Dokumentum olvasása csak a dokumentum módosítása esetén CosmosItemRequestOptions.setIfNoneMatchETag (szinkronizálás)
CosmosItemRequestOptions.setIfNoneMatchETag (async)
Partial document update CosmosContainer.patchItem
Tömeges dokumentumfrissítés Tömeges minták
Tranzakciós köteg kötegminták

Indexelési példák

A Collection CRUD Samples fájl bemutatja, hogyan hajthatja végre a következő feladatokat. Az alábbi minták futtatása előtt az Azure Cosmos DB-ben történő indexelésről az indexelési szabályzatok, az indexelési típusok és az indexelési útvonalak elméleti cikkeiben olvashat.

Task API-referencia
Megadott dokumentumok elérési útjainak belefoglalása az indexbe IndexingPolicy.IncludedPaths
A megadott dokumentumok elérési útjainak kizárása az indexből IndexingPolicy.ExcludedPaths
Összetett index létrehozása IndexelésPolicy.setCompositeIndexes
CompositePath
Térinformatikai index létrehozása IndexingPolicy.setSpatialIndexes
SpatialSpec
SpatialType

További információ az indexelésről: Azure Cosmos DB indexelési szabályzat.

Query examples

A szinkronizáláshoz és aszinkron lekérdezésmintákhoz tartozó fájlok bemutatják, hogyan végezheti el a következő feladatokat az SQL-lekérdezés nyelvhelyességi használatával. Az Azure Cosmos DB SQL-lekérdezési referenciájáról az alábbi minták futtatása előtt az Azure Cosmos DB SQL-lekérdezési példáiban olvashat.

Task API-referencia
Az összes dokumentum lekérdezése CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Egyenlőség lekérdezése == használatával CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Egyenlőtlenség lekérdezése != és NOT használatával CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés tartomány operátorokkal, például >: , <>=, <= CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés tartományi operátorokkal sztringekben CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés ORDER BY használatával CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés a DISTINCT használatával CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés összesítő függvényekkel CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Aldokumentumok használata CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés dokumentumon belüli illesztésekkel CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés sztring-, matematikai és tömb operátorokkal CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés paraméteres SQL-lel az SqlQuerySpec használatával CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Lekérdezés explicit lapozással CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Particionált gyűjtemények lekérdezése párhuzamosan CosmosContainer.queryItems
CosmosAsyncContainer.queryItems

Változáscsatornák példái

A Változáscsatorna-feldolgozó mintafájl a következő feladatok elvégzését mutatja be. Az Alábbi minták futtatása előtt az Azure Cosmos DB változáscsatornájának megismeréséhez olvassa el az Azure Cosmos DB változáscsatornájának és változáscsatorna-feldolgozójának olvasását.

Task API-referencia
Alapvető változáscsatorna-funkciók ChangeFeedProcessor.changeFeedProcessorBuilder
Változáscsatorna olvasása az elejétől ChangeFeedProcessorOptions.setStartFromBeginning()

Kiszolgálóoldali programozási példák

A Tárolt eljárás mintafájl a következő feladatok elvégzését mutatja be. Ha a következő minták futtatása előtt szeretne többet megtudni a kiszolgálóoldali programozásról az Azure Cosmos DB-ben, tekintse meg a tárolt eljárásokat, az eseményindítókat és a felhasználó által definiált függvényeket.

Task API-referencia
Tárolt eljárás létrehozása CosmosScripts.createStoredProcedure
Tárolt eljárás végrehajtása CosmosStoredProcedure.execute
Tárolt eljárás törlése CosmosStoredProcedure.delete

További lépések

Kapacitástervezést szeretne végezni az Azure Cosmos DB-be való migráláshoz? A kapacitástervezéshez használhatja a meglévő adatbázisfürt adatait.