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
Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
- Aktiválhatja Visual Studio-előfizetői előnyeit: A Visual Studio-előfizetés minden hónapban biztosít Önnek jóváírást, amelyekkel fizetős Azure-szolgáltatásokat használhat.
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...
Feljegyzé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 CosmosAsyncContainer
tö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.
Feljegyzé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) |
Részleges dokumentumfrissítés | 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.
Példák lekérdezésekre
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.
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 |
Következő 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.
- Ha csak annyit tud, hogy hány virtuális mag és kiszolgáló található a meglévő adatbázisfürtben, olvassa el a kérelemegységek becslését virtuális magok vagy vCPU-k használatával
- Ha ismeri az aktuális adatbázis számítási feladataira vonatkozó tipikus kérési arányokat, olvassa el a kérelemegységek becslését az Azure Cosmos DB kapacitástervezővel