Bagikan melalui


Membuat database di Azure Cosmos DB untuk NoSQL menggunakan Python

BERLAKU UNTUK: NoSQL

Database di Azure Cosmos DB adalah unit manajemen untuk satu kontainer atau lebih. Sebelum dapat membuat atau mengelola kontainer, Anda harus membuat database terlebih dahulu.

Memberi nama database

Di Azure Cosmos DB, database dianalogikan dengan namespace layanan. Saat Anda membuat database, nama database membentuk segmen URI yang digunakan untuk mengakses sumber daya database dan sumber daya turunan apa pun.

Berikut beberapa aturan cepat saat memberi nama database:

  • Menjaga panjang nama database antara 3 dan 63 karakter
  • Nama database hanya boleh berisi huruf kecil, angka, atau karakter tanda hubung (-).
  • Nama kontainer harus diawali dengan huruf kecil atau angka.

Setelah dibuat, URI untuk database berada dalam format ini:

https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>

Membuat database

Untuk membuat database, panggil salah satu metode berikut:

Membuat database

Contoh berikut membuat database dengan CosmosClient.create_database metode . Metode ini melemparkan pengecualian jika database dengan nama yang sama ada.

try:
    database = client.create_database(id=DATABASE_ID)
    print(f"Database created: {database.id}")

except CosmosResourceExistsError:
    print("Database already exists.")

Membuat database jika belum ada

Contoh berikut membuat database dengan CosmosClient.create_database_if_not_exists metode . Jika database ada, metode ini mengembalikan pengaturan database. Dibandingkan dengan metode buat sebelumnya, metode ini tidak melemparkan pengecualian jika database sudah ada. Metode ini berguna untuk menghindari kesalahan jika Anda menjalankan kode yang sama beberapa kali.

try:
    database = client.create_database_if_not_exists(id=DATABASE_ID)
    print(f"Database created or returned: {database.id}")

except CosmosHttpResponseError:
    print("Request to the Azure Cosmos database service failed.")

Membuat database secara asinkron

Anda juga dapat membuat database secara asinkron menggunakan objek dan metode serupa di namespace azure.cosmos.aio . Misalnya, gunakan CosmosClient.create_database metode atau metode 'CosmoClient.create_database_if_not_exists .

Bekerja secara asinkron berguna ketika Anda ingin melakukan beberapa operasi secara paralel. Untuk informasi selengkapnya, lihat Menggunakan klien asinkron.

Mengurai respons

Dalam contoh di atas, respons dari permintaan adalah DatabaseProxy, yang merupakan antarmuka untuk berinteraksi dengan database tertentu. Dari proksi, Anda dapat mengakses metode untuk melakukan operasi pada database.

Contoh berikut menunjukkan metode create_database_if_not_exists mengembalikan objek database .

database = client.create_database_if_not_exists(id=DATABASE_ID)
for container in database.list_containers():
    print(f'Container name: {container["id"]}')

Langkah berikutnya

Sekarang setelah Anda membuat database, gunakan panduan berikutnya untuk membuat kontainer.