NoSQL için Azure Cosmos DB: Java SDK v4 örnekleri
UYGULANANLAR: NoSQL
Önemli
Java SDK v4 hakkında daha fazla bilgi edinmek için lütfen Daha fazla bilgi için Azure Cosmos DB Java SDK v4 Sürüm notları, Maven deposu, Azure Cosmos DB Java SDK v4 performans ipuçları ve Azure Cosmos DB Java SDK v4 sorun giderme kılavuzuna bakın . Şu anda v4'ten daha eski bir sürüm kullanıyorsanız v4'e yükseltme konusunda yardım için Bkz . Azure Cosmos DB Java SDK'sı v4'e geçiş kılavuzu.
Önemli
Azure aboneliğiniz yoksa başlamadan önce birücretsiz Azure hesabı oluşturun.
- Visual Studio abone avantajlarını etkinleştirebilirsiniz: Visual Studio aboneliğiniz, her ay size ücretli Azure hizmetleri için kullanabileceğiniz krediler verir.
Azure Cosmos DB'yi ücretsiz olarak, Azure aboneliği olmadan ve hiçbir taahhüt gerektirmeden deneyebilirsiniz. Alternatif olarak, ilk 1000 RU/sn ve 25 GB depolama alanı ücretsiz olarak bir Azure Cosmos DB ücretsiz katmanı hesabı oluşturabilirsiniz. Azure Cosmos DB öykünücüsünün URI'sini https://localhost:8081
de kullanabilirsiniz. Öykünücü ile kullanılacak anahtar için bkz . İsteklerin kimliğini doğrulama.
Azure Cosmos DB kaynaklarında CRUD işlemleri ve diğer yaygın işlemleri gerçekleştiren en son örnek uygulamalar, azure-cosmos-java-sql-api-samples GitHub deposuna dahildir. Bu makalede aşağıdakiler sunulmaktadır:
- Örnek Java proje dosyalarının her birindeki görevlere bağlantılar.
- İlgili API başvurusu içeriğine bağlantılar.
Önkoşullar
Bu örnek uygulamayı çalıştırmanız için aşağıdakiler gereklidir:
- Java Development Kit 8
- Azure Cosmos DB Java SDK v4
Projenizde kullanmak üzere en son Azure Cosmos DB Java SDK v4 ikili dosyalarını almak için isteğe bağlı olarak Maven kullanabilirsiniz. Maven tüm gerekli bağımlılıkları otomatik olarak ekler. Aksi takdirde, pom.xml dosyasında listelenen bağımlılıkları doğrudan indirebilir ve derleme yolunuza ekleyebilirsiniz.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-cosmos</artifactId>
<version>LATEST</version>
</dependency>
Örnek uygulamaları çalıştırma
Örnek depoyu kopyalama:
$ git clone https://github.com/Azure-Samples/azure-cosmos-java-sql-api-samples.git
$ cd azure-cosmos-java-sql-api-samples
Örnekleri bir IDE (Eclipse, IntelliJ veya VS Code) kullanarak veya Maven kullanarak komut satırından çalıştırabilirsiniz.
Bu ortam değişkenleri ayarlanmalıdır
ACCOUNT_HOST=your account hostname;ACCOUNT_KEY=your account primary key
örneklerine hesabınıza okuma/yazma erişimi vermek için.
Bir örneği çalıştırmak için Ana Sınıfını belirtin
com.azure.cosmos.examples.sample.synchronicity.MainClass
burada sample.synchronicity.MainClass olabilir
- crudquickstart.sync.SampleCRUDQuickstart
- crudquickstart.async.SampleCRUDQuickstartAsync
- indexmanagement.sync.SampleIndexManagement
- indexmanagement.async.SampleIndexManagementAsync
- storedprocedure.sync.SampleStoredProcedure
- storedprocedure.async.SampleStoredProcedureAsync
- değişiklik akışı. SampleChangeFeedProcessor (Changefeed yalnızca zaman uyumsuz bir örneğe sahip, eşitleme örneği yok.) ... ve saire...
Not
Örnekler birbirinden bağımsızdır; kendi kendine ayarlanır ve sonra kendini temizler. Örnekler, veya CosmosAsyncContainer
oluşturmak CosmosContainer
için birden çok çağrı oluşturur. Bu her yapıldığında, oluşturulan koleksiyonun performans katmanına karşılık aboneliğiniz 1 saatlik kullanım için faturalandırılır.
Veritabanı örnekleri
Eşitleme ve zaman uyumsuz veritabanı CRUD Örnek dosyaları aşağıdaki görevlerin nasıl gerçekleştirileceğini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB veritabanları hakkında bilgi edinmek için veritabanları, kapsayıcılar ve öğelerle çalışma kavramsal makalesine bakın.
Görev | API başvurusu |
---|---|
veritabanı oluşturun | CosmosClient.createDatabaseIfNotExists CosmosAsyncClient.createDatabaseIfNotExists |
Kimliğe göre veritabanını okuma | CosmosClient.getDatabase CosmosAsyncClient.getDatabase |
Tüm veritabanlarını okuma | CosmosClient.readAllDatabases CosmosAsyncClient.readAllDatabases |
Veritabanı silme | CosmosDatabase.delete CosmosAsyncDatabase.delete |
Koleksiyon örnekleri
Eşitleme ve zaman uyumsuz için Collection CRUD Örnekleri dosyaları aşağıdaki görevlerin nasıl gerçekleştirileceğini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB koleksiyonları hakkında bilgi edinmek için veritabanları, kapsayıcılar ve öğelerle çalışma kavramsal makalesine bakın.
Görev | API başvurusu |
---|---|
Koleksiyon oluşturma | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Bir koleksiyonun yapılandırılan performansını değiştirme | CosmosContainer.replaceThroughput CosmosAsyncContainer.replaceProvisionedThroughput |
Kimliğe göre koleksiyon alma | CosmosDatabase.getContainer CosmosAsyncDatabase.getContainer |
Veritabanındaki tüm koleksiyonları okuma | CosmosDatabase.readAllContainers CosmosAsyncDatabase.readAllContainers |
Koleksiyonu silme | CosmosContainer.delete CosmosAsyncContainer.delete |
Otomatik ölçeklendirme koleksiyonu örnekleri
Bu örnekleri çalıştırmadan önce otomatik ölçeklendirme hakkında daha fazla bilgi edinmek için, hesabınızda ve veritabanlarınızda ve kapsayıcılarınızda otomatik ölçeklendirmeyi etkinleştirmeye yönelik bu yönergelere göz atın.
Eşitleme ve zaman uyumsuz için otomatik ölçeklendirme veritabanı örnek dosyaları aşağıdaki görevin nasıl gerçekleştirileceğini gösterir.
Görev | API başvurusu |
---|---|
Belirtilen otomatik ölçeklendirme maksimum aktarım hızına sahip bir veritabanı oluşturma | CosmosClient.createDatabase CosmosAsyncClient.createDatabase |
Otomatik ölçeklendirme koleksiyonu, eşitleme ve zaman uyumsuz dosyalara örnek olarak aşağıdaki görevlerin nasıl gerçekleştirileceğini gösterir.
Görev | API başvurusu |
---|---|
Belirtilen otomatik ölçeklendirme maksimum aktarım hızına sahip bir koleksiyon oluşturma | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Bir koleksiyonun yapılandırılmış en yüksek aktarım hızını değiştirme | CosmosContainer.replaceThroughput CosmosAsyncContainer.replaceThroughput |
Koleksiyonun otomatik ölçeklendirme aktarım hızı yapılandırmasını okuma | CosmosContainer.readThroughput CosmosAsyncContainer.readThroughput |
Analitik depolama koleksiyonu örnekleri
Eşitleme ve zaman uyumsuz işlemler için Analiz depolama Koleksiyonu CRUD Örnekleri dosyaları aşağıdaki görevlerin nasıl gerçekleştirileceğini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB koleksiyonları hakkında bilgi edinmek için Azure Cosmos DB Synapse ve Analiz Deposu hakkında bilgi edinin.
Görev | API başvurusu |
---|---|
Koleksiyon oluşturma | CosmosDatabase.createContainerIfNotExists CosmosAsyncDatabase.createContainerIfNotExists |
Öğe örnekleri
Eşitleme ve zaman uyumsuz belge CRUD Örnekleri dosyaları aşağıdaki görevlerin nasıl gerçekleştirileceğini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB belgeleri hakkında bilgi edinmek için veritabanları, kapsayıcılar ve öğelerle çalışma kavramsal makalesine bakın.
Not
Belirli bir öğeye yönelik işlemler gerçekleştirirken bir bölüm anahtarı belirtmeniz gerekir.
Görev | API başvurusu |
---|---|
Belge oluşturma | CosmosContainer.createItem CosmosAsyncContainer.createItem |
Kimliğe göre belgeyi okuma | CosmosContainer.readItem CosmosAsyncContainer.readItem |
Belgeler için sorgu | CosmosContainer.queryItems CosmosAsyncContainer.queryItems |
Belgeyi değiştirme | CosmosContainer.replaceItem CosmosAsyncContainer.replaceItem |
Belgeyi upsert etme | CosmosContainer.upsertItem CosmosAsyncContainer.upsertItem |
Belgeyi silme | CosmosContainer.deleteItem CosmosAsyncContainer.deleteItem |
Belgeyi koşullu ETag denetimiyle değiştirme | CosmosItemRequestOptions.setIfMatchETag (eşitleme) CosmosItemRequestOptions.setIfMatchETag (zaman uyumsuz) |
Yalnızca belge değiştiğinde belgeyi okuma | CosmosItemRequestOptions.setIfNoneMatchETag (eşitleme) CosmosItemRequestOptions.setIfNoneMatchETag (async) |
Kısmi belge güncelleştirme | CosmosContainer.patchItem |
Toplu belge güncelleştirmesi | Toplu örnekler |
İşlem toplu işlemi | toplu iş örnekleri |
Dizin örnekleri
Collection CRUD Örnekleri dosyası aşağıdaki görevlerin nasıl gerçekleştirileceklerini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB'de dizin oluşturma hakkında bilgi edinmek için dizin oluşturma ilkeleri, dizin oluşturma türleri ve dizin oluşturma yolları kavramsal makalelerine bakın.
Görev | API başvurusu |
---|---|
Belirtilen belge yollarını dizine ekle | IndexingPolicy.IncludedPaths |
Belirtilen belge yollarını dizinden dışla | IndexingPolicy.ExcludedPaths |
Bileşik dizin oluşturma | IndexingPolicy.setCompositeIndexes Bileşik Yol |
Jeo-uzamsal dizin oluşturma | IndexingPolicy.setSpatialIndexes SpatialSpec SpatialType |
Dizin oluşturma hakkında daha fazla bilgi için bkz. Azure Cosmos DB dizin oluşturma ilkeleri.
Sorgu örnekleri
Eşitleme ve zaman uyumsuz için Sorgu Örnekleri dosyaları, SQL sorgu dil bilgisini kullanarak aşağıdaki görevlerin nasıl yapılacağını gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB'deki SQL sorgu başvurusu hakkında bilgi edinmek için bkz . Azure Cosmos DB için SQL sorgu örnekleri.
Akış örneklerini değiştirme
Değişiklik Akışı İşlemcisi Örnek dosyası aşağıdaki görevlerin nasıl yapılacağını gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB'deki değişiklik akışı hakkında bilgi edinmek için bkz. Azure Cosmos DB değişiklik akışını ve Değişiklik akışı işlemcisini okuma.
Görev | API başvurusu |
---|---|
Temel değişiklik akışı işlevselliği | ChangeFeedProcessor.changeFeedProcessorBuilder |
Değişiklik akışını baştan okuma | ChangeFeedProcessorOptions.setStartFromBeginning() |
Sunucu tarafı programlama örnekleri
Saklı Yordam Örnek dosyasında aşağıdaki görevlerin nasıl gerçekleştirileceği gösterilir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB'de sunucu tarafı programlama hakkında bilgi edinmek için bkz . Saklı yordamlar, tetikleyiciler ve kullanıcı tanımlı işlevler.
Görev | API başvurusu |
---|---|
Saklı yordam oluşturma | CosmosScripts.createStoredProcedure |
Saklı yordamı yürütme | CosmosStoredProcedure.execute |
Saklı yordamı silme | CosmosStoredProcedure.delete |
Sonraki adımlar
Azure Cosmos DB'ye geçiş için kapasite planlaması yapmaya mı çalışıyorsunuz? Kapasite planlaması için mevcut veritabanı kümeniz hakkındaki bilgileri kullanabilirsiniz.
- Tek bildiğiniz mevcut veritabanı kümenizdeki sanal çekirdek ve sunucu sayısıysa, sanal çekirdek veya vCPU kullanarak istek birimlerini tahmin etme hakkında bilgi edinin
- Geçerli veritabanı iş yükünüz için tipik istek oranlarını biliyorsanız Azure Cosmos DB kapasite planlayıcısı kullanarak istek birimlerini tahmin etme hakkında bilgi edinin