Aracılığıyla paylaş


NoSQL için Azure Cosmos DB: Spring Data Azure Cosmos DB v5 örnekleri

UYGULANANLAR: NoSQL

Önemli

Bu sürüm notları Spring Data Azure Cosmos DB'nin 5. sürümüne yöneliktir. Sürüm 3 için sürüm notlarını burada, sürüm 2'yi burada bulabilirsiniz.

Spring Data Azure Cosmos DB yalnızca NoSQL için API'yi destekler.

Diğer Azure Cosmos DB API'lerinde Spring Data hakkında bilgi için şu makalelere bakın:

Önemli

Azure aboneliğiniz yoksa başlamadan önce birücretsiz Azure hesabı oluşturun.

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:8081de 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-spring-boot-samples GitHub deposuna dahil edilir. Bu makalede aşağıdakiler sunulmaktadır:

  • Spring Data Azure Cosmos DB 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
  • Spring Data Azure Cosmos DB v5

İsteğe bağlı olarak Maven'ı kullanarak projenizde kullanmak üzere en son Spring Data Azure Cosmos DB v3 ikili dosyalarını alabilirsiniz. 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 bunları derleme yolunuza ekleyebilirsiniz.

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

Örnek uygulamaları çalıştırma

Örnek depoyu kopyalama:

$ git clone https://github.com/Azure-Samples/azure-spring-boot-samples

$ cd cosmos/azure-spring-data-cosmos/spring3-samples/cosmos-quickstart-samples

Örnekleri bir IDE (Eclipse, IntelliJ veya VS Code) kullanarak veya Maven kullanarak komut satırından çalıştırabilirsiniz.

application.properties içinde bu ortam değişkenleri ayarlanmalıdır

cosmos.uri=${ACCOUNT_HOST}
cosmos.key=${ACCOUNT_KEY}
cosmos.secondaryKey=${SECONDARY_ACCOUNT_KEY}

dynamic.collection.name=spel-property-collection
# Populate query metrics
cosmos.queryMetricsEnabled=true

örneklerine hesabınıza, veritabanlarınıza ve kapsayıcılarınıza okuma/yazma erişimi vermek için.

IDE'niz Spring Data örnek kodunu yürütme olanağı sağlayabilir. Aksi takdirde, örneği yürütmek için aşağıdaki terminal komutunu kullanabilirsiniz:

mvn spring-boot:run

Belge CRUD örnekleri

Örnek dosyası aşağıdaki görevlerin nasıl gerçekleştirileceklerini 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.

Görev API başvurusu
Belge oluşturma CosmosRepository.save
Kimliğe göre belgeyi okuma CosmosRepository.derivedQueryMethod
Tüm belgeleri silme CosmosRepository.deleteAll

Türetilmiş sorgu yöntemi örnekleri

Örnek dosyası aşağıdaki görevlerin nasıl gerçekleştirileceklerini gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB sorguları hakkında bilgi edinmek için Baeldung'un Spring'de Türetilmiş Sorgu Yöntemleri makalesini okumanız yararlı olabilir.

| Belgeler için sorgu | CosmosRepository.derivedQueryMethod |

Özel sorgu örnekleri

Örnek dosyası, 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.

Görev API başvurusu
Tüm belgeler için sorgu @Query ek açıklama
== kullanan eşitlik için sorgu @Query ek açıklama
!= ve NOT kullanan eşitsizlik için sorgu @Query ek açıklama
, , <=, <>= gibi >aralık işleçlerini kullanarak sorgulama @Query ek açıklama
Dizelere karşı aralık işleçlerini kullanarak sorgulama @Query ek açıklama
ORDER BY ile sorgulama @Query ek açıklama
DISTINCT ile sorgu @Query ek açıklama
Toplama işlevleriyle sorgulama @Query ek açıklama
alt belgelerle çalışma @Query ek açıklama
Belgeler arası Birleştirmeler ile sorgulama @Query ek açıklama
Dize, matematik ve dizi işleçleriyle sorgulama @Query ek açıklama

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