Azure Cosmos DB for NoSQL: Contoh Java SDK v4

BERLAKU UNTUK: NoSQL

Penting

Untuk mempelajari lebih lanjut tentang Java SDK v4, silakan lihat Catatan rilis Azure Cosmos DB Java SDK v4, repositori Maven, tips kinerja Azure Cosmos DB Java SDK v4, dan panduan pemecahan masalah Azure Cosmos DB Java SDK v4 untuk informasi lebih lanjut. Jika saat ini Anda menggunakan versi yang lebih lama dari v4, lihat panduan Migrasi ke Azure Cosmos DB Java SDK v4 untuk bantuan peningkatan ke v4.

Penting

Jika Anda tidak memiliki Langganan Azure, buat Akun gratis Azure sebelum memulai.

Anda dapat mencoba Azure Cosmos DB secara gratis, tanpa langganan Azure, dan tanpa penerapan. Atau, Anda dapat membuat akun tingkat gratis Azure Cosmos DB dengan 1000 RU/dtk dan penyimpanan 25 GB pertama secara gratis. Anda juga dapat menggunakan emulator Azure Cosmos DB dengan URI https://localhost:8081. Agar kunci dapat digunakan dengan emulator, lihat Mengautentikasi permintaan.

Aplikasi sampel terbaru yang melakukan operasi CRUD dan operasi umum lainnya pada sumber daya Azure Cosmos DB disertakan dalam repositori GitHub azure-spring-data-cosmos-java-sql-api-sampels. Artikel ini menyediakan:

  • Tautan ke tugas di setiap file proyek contoh Java.
  • Tautan ke konten referensi API terkait.

Prasyarat

Anda memerlukan hal berikut ini untuk menjalankan aplikasi sampel ini:

  • Kit Pengembangan Java 8
  • Azure Cosmos DB Java SDK v4

Anda dapat secara opsional menggunakan Maven untuk mendapatkan biner Azure Cosmos DB Java SDK v4 terbaru untuk digunakan dalam proyek Anda. Maven secara otomatis menambahkan dependensi yang diperlukan. Jika tidak, Anda dapat langsung mengunduh dependensi yang tercantum di file pom.xml dan menambahkannya ke jalur build Anda.

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

Menjalankan aplikasi sampel

Mengkloning repo sampel:

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

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

Anda dapat menjalankan sampel menggunakan IDE (Eclipse, IntelliJ, atau VS Code) atau dari baris perintah menggunakan Maven.

Variabel lingkungan ini harus ditetapkan

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

untuk memberikan sampel akses baca/tulis ke akun Anda.

Untuk menjalankan sampel, tentukan Kelas Utamanya

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

di mana sample.synchronicity.MainClass dapat diletakkan

  • crudquickstart.sync.SampleCRUDQuickstart
  • crudquickstart.async.SampleCRUDQuickstartAsync
  • indexmanagement.sync.SampleIndexManagement
  • indexmanagement.async.SampleIndexManagementAsync
  • storedprocedure.sync.SampleStoredProcedure
  • storedprocedure.async.SampleStoredProcedureAsync
  • changefeed.SampleChangeFeedProcessor (Changefeed hanya memiliki satu sampel asinkron, tidak ada sampel sinkronisasi.) ... Dll...

Catatan

Setiap sampel mandiri; sampel mengatur dan membersihkan dirinya sendiri. Sampel membuat beberapa panggilan untuk membuat CosmosContainer atau CosmosAsyncContainer. Setiap kali hal ini dilakukan, langganan Anda akan ditagih selama 1 jam penggunakan untuk tingkat performa kumpulan yang sedang dibuat.

Contoh database

File Sampel CRUD Database untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut. Untuk mempelajari tentang database Azure Cosmos DB sebelum menjalankan sampel berikut, lihat Artikel konseptual bekerja dengan database, kontainer, dan item .

Task Referensi API
Membuat database CosmosClient.createDatabaseIfNotExists
CosmosAsyncClient.createDatabaseIfNotExists
Baca database menurut ID CosmosClient.getDatabase
CosmosAsyncClient.getDatabase
Membaca semua database CosmosClient.readAllDatabases
CosmosAsyncClient.readAllDatabases
Menghapus database CosmosDatabase.delete
CosmosAsyncDatabase.delete

Contoh koleksi

File Sampel CRUD Koleksi untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut. Untuk mempelajari tentang koleksi Azure Cosmos DB sebelum menjalankan sampel berikut, lihat Artikel konseptual Bekerja dengan database, kontainer, dan item .

Task Referensi API
Membuat kumpulan CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
Mengubah performa kumpulan yang dikonfigurasi CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceProvisionedThroughput
Mendapatkan kumpulan menurut ID CosmosDatabase.getContainer
CosmosAsyncDatabase.getContainer
Membaca semua kumpulan dalam database CosmosDatabase.readAllContainers
CosmosAsyncDatabase.readAllContainers
Menghapus kumpulan CosmosContainer.delete
CosmosAsyncContainer.delete

Contoh kumpulan skala otomatis

Untuk mempelajari selengkapnya tentang autoscale sebelum menjalankan sampel ini, lihat instruksi ini untuk mengaktifkan autoscale di akun Anda dan di database dan kontainer Anda.

File sampel database penskalaan otomatis untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut.

Task Referensi API
Membuat database dengan throughput maks skala otomatis yang ditentukan CosmosClient.createDatabase
CosmosAsyncClient.createDatabase

File sampel koleksi penskalaan otomatis untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut.

Task Referensi API
Membuat kumpulan dengan throughput maks skala otomatis yang ditentukan CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists
Mengubah throughput maks skala otomatis yang dikonfigurasi dari kumpulan CosmosContainer.replaceThroughput
CosmosAsyncContainer.replaceThroughput
Membaca konfigurasi throughput skala otomatis dari kumpulan CosmosContainer.readThroughput
CosmosAsyncContainer.readThroughput

Contoh kumpulan penyimpanan analitis

File Sampel CRUD Koleksi penyimpanan Analitik untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut. Untuk mempelajari tentang koleksi Azure Cosmos DB sebelum menjalankan sampel berikut, baca tentang Azure Cosmos DB Synapse dan Analytical Store.

Task Referensi API
Membuat kumpulan CosmosDatabase.createContainerIfNotExists
CosmosAsyncDatabase.createContainerIfNotExists

Contoh item

File Sampel CRUD Dokumen untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut. Untuk mempelajari tentang dokumen Azure Cosmos DB sebelum menjalankan sampel berikut, lihat Artikel konseptual Bekerja dengan database, kontainer, dan item .

Catatan

Anda harus menentukan kunci partisi saat melakukan operasi terhadap item tertentu.

Task Referensi API
Buat dokumen CosmosContainer.createItem
CosmosAsyncContainer.createItem
Baca dokumen menurut ID CosmosContainer.readItem
CosmosAsyncContainer.readItem
Kueri untuk dokumen CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Mengganti dokumen CosmosContainer.replaceItem
CosmosAsyncContainer.replaceItem
Upsert dokumen CosmosContainer.upsertItem
CosmosAsyncContainer.upsertItem
Hapus dokumen CosmosContainer.deleteItem
CosmosAsyncContainer.deleteItem
Mengganti dokumen dengan pemeriksaan ETag kondisional CosmosItemRequestOptions.setIfMatchETag (sinkronisasi)
CosmosItemRequestOptions.setIfMatchETag (async)
Membaca dokumen hanya jika dokumen telah berubah CosmosItemRequestOptions.setIfNoneMatchETag (sinkronisasi)
CosmosItemRequestOptions.setIfNoneMatchETag (async)
Pembaruan dokumen parsial CosmosContainer.patchItem
Pembaruan dokumen massal Sampel massal
Batch transaksional sampel batch

Contoh pengindeksan

File Sampel CRUD Kumpulan memperlihatkan cara melakukan tugas berikut. Untuk mempelajari tentang pengindeksan di Azure Cosmos DB sebelum menjalankan sampel berikut, lihat artikel konseptual kebijakan pengindeksan, jenis pengindeksan, dan jalur pengindeksan.

Task Referensi API
Sertakan jalur dokumen tertentu dalam indeks IndexingPolicy.IncludedPaths
Mengecualikan jalur dokumen tertentu dari indeks IndexingPolicy.ExcludedPaths
Membuat indeks komposit IndexingPolicy.setCompositeIndexes
CompositePath
Membuat indeks geospasial IndexingPolicy.setSpatialIndexes
SpatialSpec
SpatialType

Untuk informasi selengkapnya tentang pengindeksan, lihat kebijakan pengindeksan Azure Cosmos DB.

Contoh kueri

File Sampel Kueri untuk sinkronisasi dan asinkron menunjukkan cara melakukan tugas berikut dengan menggunakan tata bahasa kueri SQL. Untuk mempelajari tentang referensi kueri SQL di Azure Cosmos DB sebelum Anda menjalankan contoh berikut, lihat contoh kueri SQL untuk Azure Cosmos DB.

Task Referensi API
Kueri untuk semua dokumen CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri untuk kesetaraan menggunakan == CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri untuk kesetaraan menggunakan == CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri menggunakan operator rentang seperti >, <, >=, <= CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri menggunakan operator rentang terhadap string CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan URUTAN BERDASARKAN CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan BERBEDA CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan fungsi agregat CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Bekerja dengan subdokumen CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan Gabungan intra-dokumen CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan operator string, matematika, dan array CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan SQL parameter menggunakan SqlQuerySpec CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri dengan penomoran eksplisit CosmosContainer.queryItems
CosmosAsyncContainer.queryItems
Kueri yang dipartisi koleksi secara paralel CosmosContainer.queryItems
CosmosAsyncContainer.queryItems

Contoh umpan perubahan

File Ubah Sampel Prosesor Umpan memperlihatkan cara melakukan tugas berikut. Untuk mempelajari tentang umpan perubahan di Azure Cosmos DB sebelum Anda menjalankan sampel berikut, lihat Membaca umpan perubahan Azure Cosmos DB dan Prosesor umpan perubahan.

Task Referensi API
Fungsionalitas umpan perubahan dasar ChangeFeedProcessor.changeFeedProcessorBuilder
Baca umpan perubahan dari awal ChangeFeedProcessorOptions.setStartFromBeginning()

Contoh pemrograman sisi server

File Sampel Prosedur Tersimpan memperlihatkan cara melakukan tugas berikut ini. Untuk mempelajari tentang pemrograman sisi server di Azure Cosmos DB sebelum menjalankan sampel berikut ini, lihat Prosedur tersimpan, pemicu, dan fungsi yang ditentukan pengguna.

Task Referensi API
Membuat prosedur tersimpan CosmosScripts.createStoredProcedure
Menjalankan prosedur tersimpan CosmosStoredProcedure.execute
Menghapus prosedur tersimpan CosmosStoredProcedure.delete

Langkah berikutnya

Mencoba melakukan perencanaan kapasitas untuk migrasi ke Azure Cosmos DB? Anda dapat menggunakan informasi tentang kluster database Anda yang ada saat ini untuk membuat perencanaan kapasitas.