Python için NoSQL SDK'sı için Azure Cosmos DB örnekleri
UYGULANANLAR: NoSQL
Azure Cosmos DB kaynaklarında CRUD işlemleri ve diğer yaygın işlemler gerçekleştiren örnek çözümler, azure/azure-sdk-for-python GitHub deposunun klasörüne eklenirmain/sdk/cosmos
. Bu makalede aşağıdakiler sunulmaktadır:
- Python örnek proje dosyalarının her birindeki görevlere bağlantılar.
- İlgili API başvurusu içeriğine bağlantılar.
Önkoşullar
- Azure Cosmos DB Hesabı. Seçenekleriniz şunlardır:
- Azure etkin aboneliğinde:
- Ücretsiz Azure Hesabı oluşturma veya mevcut aboneliğinizi kullanma
- Visual Studio Aylık Kredileri
- Azure Cosmos DB Ücretsiz Katmanı
- Azure etkin aboneliği olmadan:
- Azure etkin aboneliğinde:
- Python 3.7+ ve içinde yürütülebilir dosya bulunur
python
PATH
. (Daha fazla bilgi için bkz. Azure SDK'ları Python sürümü destek ilkesi.) - Visual Studio Code.
- Visual Studio Code için Python uzantısı.
- Git.
- Python için NoSQL sdk'sı için Azure Cosmos DB
Veritabanı örnekleri
database_management.py Python örneği, CosmosClient yöntemlerini kullanarak aşağıdaki görevlerin nasıl yapılacağını 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şturma | CosmosClient.create_database |
Kimliğe göre veritabanını okuma | CosmosClient.get_database_client |
Veritabanlarını sorgulama | CosmosClient.query_databases |
Hesabın veritabanlarını listeleme | CosmosClient.list_databases |
Veritabanı silme | CosmosClient.delete_database |
Kapsayıcı örnekleri
container_management.py Python örneği, DatabaseProxy yöntemlerini kullanarak aşağıdaki görevlerin nasıl yapılacağını 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 |
---|---|
Kapsayıcı sorgusu | database.query_containers |
Kapsayıcı oluşturma | database.create_container |
Veritabanındaki tüm kapsayıcıları listeleme | database.list_containers |
Kimliğine göre kapsayıcı alma | database.get_container_client |
Kapsayıcının sağlanan aktarım hızını yönetme | container.replace_throughput |
Kapsayıcı silme | database.delete_container |
Öğe örnekleri
document_management.py ve change_feed_management.py Python örnekleri, ContainerProxy yöntemlerini kullanarak aşağıdaki görevlerin nasıl yapılacağını gösterir. Aşağıdaki örnekleri çalıştırmadan önce Azure Cosmos DB öğeleri hakkında bilgi edinmek için veritabanları, kapsayıcılar ve öğelerle çalışma kavramsal makalesine bakın.
Görev | API başvurusu |
---|---|
Kapsayıcıda öğe oluşturma | container.create_item |
Öğeyi kimliğine göre okuma | container.read_item |
Kapsayıcıdaki tüm öğeleri okuma | container.read_all_items |
Öğeyi kimliğine göre sorgulama | container.query_items |
Bir öğeyi değiştirme | container.replace_item |
Öğeyi yukarı ekleme | container.upsert_item |
Öğeyi silme | container.delete_item |
Kapsayıcıdaki öğelerin değişiklik akışını alma | container.query_items_change_feed |
Dizin örnekleri
index_management.py Python örneği aşağıdaki görevlerin nasıl yapılacağını 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 |
---|---|
Belirli bir öğeyi dizin oluşturmanın dışında tutma | evrak.Dizin OluşturmaDirective. Dışlamak |
Belirli öğeler dizinlenmiş olarak el ile dizin oluşturmayı kullanma | evrak. IndexingDirective.Include |
Dizin oluşturmanın yollarını dışlama | IndexingPolicy özelliğinde hariç tutulacak yolları tanımlama |
Dizelerde aralık dizinlerini kullanma | Dize veri türünde aralık dizinleriyle dizin oluşturma ilkesini tanımlayın. 'kind': documents.IndexKind.Range , 'dataType': documents.DataType.String |
Dizin dönüştürme gerçekleştirme | veritabanı. replace_container (güncelleştirilmiş dizin oluşturma ilkesini kullanın) |
Yolda yalnızca karma dizin mevcut olduğunda taramaları kullanma | enable_scan_in_query=True öğeleri sorgularken ve enable_cross_partition_query=True değerini ayarlayın |
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 çekirdekleri veya vCPU'ları 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