Kuota layanan Azure Cosmos DB

BERLAKU UNTUK: SQL API Cassandra API Gremlin API Table API Azure Cosmos DB API for MongoDB

Artikel ini memberikan ringkasan kuota default yang ditawarkan ke sumber daya yang berbeda di Azure Cosmos DB.

Operasi penyimpanan dan database

Setelah membuat akun Azure Cosmos DB berdasarkan langganan Azure, Anda bisa mengelola data di akun Anda dengan membuat database, kontainer, dan item.

Throughput yang disediakan

Anda dapat menyediakan throughput pada tingkat kontainer atau tingkat database dalam hal unit permintaan (RU/dtk atau RUs). Tabel berikut ini mencantumkan batas untuk penyimpanan dan throughput per kontainer/database. Penyimpanan mengacu pada jumlah gabungan data dan penyimpanan indeks.

Sumber daya Batas default
RUs maksimum per kontainer (mode yang disediakan throughput khusus) 1.000.000 secara default. Anda dapat meningkatkannya dengan mengajukan tiket dukungan Azure
RUs maksimum per database (mode yang disediakan throughput bersama) 1.000.000 secara default. Anda dapat meningkatkannya dengan mengajukan tiket dukungan Azure
RUs maksimum per partisi (logis & fisik) 10.000
Penyimpanan maksimum di semua item per partisi (logis) 20 GB
Jumlah maksimum tombol partisi berbeda (logika) Tidak Terbatas
Penyimpanan maksimum per kontainer Tidak Terbatas
Penyimpanan maksimum per database Tidak Terbatas
Ukuran lampiran maksimum per Akun (fitur Lampiran tidak digunakan lagi) 2 GB
RU/dtk minimum diperlukan per 1 GB 10 RU/dtk
Catatan: minimum ini dapat diturunkan jika akun Anda memenuhi syarat untuk program "penyimpanan tinggi/throughput rendah" kami

Catatan

Untuk mempelajari tentang praktik terbaik untuk mengelola beban kerja yang memiliki kunci partisi yang membutuhkan batas penyimpanan atau throughput yang lebih tinggi, lihat Membuat kunci partisi sintetis.

Batas throughput minimum

Kontainer Cosmos (atau database throughput bersama) harus memiliki throughput minimum 400 RU/dtk. Ketika kontainer tumbuh, Cosmos DB membutuhkan throughput minimum untuk memastikan database atau kontainer memiliki sumber daya yang cukup untuk operasinya.

Throughput kontainer atau database saat ini dan minimum dapat diambil dari portal Microsoft Azure atau SDK. Untuk informasi selengkapnya, lihat Throughput penyediaan pada kontainer dan database.

RU/dtk minimum aktual dapat bervariasi tergantung pada konfigurasi akun Anda. Anda dapat menggunakan metrik Azure Monitor untuk melihat riwayat throughput yang disediakan (RU/dtk) dan penyimpanan pada sumber daya.

Throughput minimum pada kontainer

Untuk memperkirakan throughput minimum throughput yang diperlukan kontainer dengan throughput manual, temukan maximum:

  • 400 RU/dtk
  • Penyimpanan saat ini dalam GB * 10 RU/dtk
  • RUn tertinggi yang pernah ada di container / 100

Contoh: Misalkan Anda memiliki database yang disediakan dengan 400 RU/dtk dan penyimpanan 0 GB. Anda meningkatkan throughput menjadi 50.000 RU/dtk dan mengimpor data 20 GB. RU/dtk minimum sekarang MAX(400, 20 * 10 RU/s per GB, 50,000 RU/s / 100) = 500 RU/dtk. Seiring waktu, penyimpanan berkembang hingga 200 GB. RU/dtk minimum sekarang MAX(400, 200 * 10 RU/s per GB, 50,000 / 100) = 2000 RU/dtk.

Catatan: throughput minimum 10 RU/dtk per GB penyimpanan dapat diturunkan jika akun Anda memenuhi syarat untuk program "penyimpanan tinggi/throughput rendah" kami.

Throughput minimum pada database throughput bersama

Untuk memperkirakan throughput minimum yang diperlukan dari database throughput bersama dengan throughput manual, temukan maksimum:

  • 400 RU/dtk
  • Penyimpanan saat ini dalam GB * 10 RU/dtk
  • RUn tertinggi yang pernah disediakan di database / 100
  • 400 + MAX(Jumlah kontainer - 25,0) * 100 RU/dtk

Contoh: Misalkan Anda memiliki database yang disediakan dengan 400 RU/dtk, penyimpanan 15 GB, dan 10 kontainer. RU/dtk minimum adalah MAX(400, 15 * 10 RU/s per GB, 400 / 100, 400 + 0 ) = 400 RU/dtk. Jika ada 30 kontainer dalam database, minimum RU/dtk adalah 400 + MAX(30 - 25, 0) * 100 RU/s = 900 RU/dtk.

Catatan: throughput minimum 10 RU/dtk per GB penyimpanan dapat diturunkan jika akun Anda memenuhi syarat untuk program "penyimpanan tinggi/throughput rendah" kami.

Singkatnya, berikut adalah batas RU minimum yang disediakan.

Sumber daya Batas default
RUs minimum per kontainer (mode disediakan throughput khusus) 400
RUs minimum per database (mode yang disediakan throughput bersama) 400 RU/dtk untuk 25 kontainer pertama. Tambahan 100 RU/dtk untuk setiap kontainer setelahnya.

Cosmos DB mendukung penskalaan throughput terprogram (RU/dtk) per kontainer atau database melalui SDK atau portal.

Tergantung pada pengaturan RU/dtk yang disediakan saat ini dan sumber daya, setiap sumber daya dapat menskalakan secara sinkron dan segera antara RU/dtk minimum hingga 100x RU/dtk minimum. Jika nilai throughput yang diminta berada di luar rentang, penskalaan dilakukan secara asinkron. Penskalaan asinkron mungkin membutuhkan waktu beberapa menit hingga berjam-jam untuk diselesaikan tergantung pada throughput yang diminta dan ukuran penyimpanan data dalam kontainer.

Tanpa server

Tanpa server memungkinkan Anda menggunakan sumber daya Azure Cosmos DB Anda dengan cara berbasis konsumsi. Tabel berikut mencantumkan batas untuk penyimpanan dan burstability throughput per kontainer/database.

Sumber daya Batasan
Maksimum RU/dtk per kontainer 5.000
Penyimpanan maksimum di semua item per partisi (logis) 20 GB
Jumlah maksimum tombol partisi berbeda (logika) Tidak Terbatas
Penyimpanan maksimum per kontainer 50 GB

Operasi sarana kontrol

Anda dapat menyediakan dan mengelola akun Azure Cosmos Anda menggunakan portal Microsoft Azure, Azure PowerShell, Azure CLI, dan templat Azure Resource Manager. Tabel berikut ini mencantumkan batasan per langganan, akun, dan jumlah operasi.

Sumber daya Batas default
Akun database maksimum per langganan 50 secara default. Anda dapat meningkatkannya dengan mengajukan tiket dukungan Azure hingga maksimal 1.000.
Jumlah kegagalan regional 1/jam secara default. Anda dapat meningkatkannya dengan mengajukan tiket dukungan Azure

Catatan

Kegagalan regional hanya berlaku untuk satu akun tulis wilayah. Akun tulis multi-wilayah tidak memerlukan atau memiliki batasan untuk mengubah wilayah tulis.

Cosmos DB secara otomatis mengambil cadangan data Anda secara berkala. Untuk detail tentang interval penyimpanan cadangan dan jendela, lihat Pencadangan online dan pemulihan data sesuai permintaan di Azure Cosmos DB.

Batas per akun

Throughput yang disediakan

Sumber daya Batas default
Jumlah database maksimum 500
Jumlah maksimum kontainer per database dengan throughput bersama 25
Jumlah maksimum kontainer per database atau akun dengan throughput khusus 500
Jumlah wilayah maksimum Tanpa batas (semua wilayah Azure)

Tanpa server

Sumber daya Batasan
Jumlah maksimum kontainer per akun 100
Jumlah wilayah maksimum 1 (Wilayah Azure mana pun)

Batas per kontainer

Bergantung pada API mana yang Anda gunakan, kontainer Azure Cosmos dapat mewakili koleksi, tabel, atau grafik. Kontainer mendukung konfigurasi untuk batasan kunci unik, prosedur tersimpan, pemicu, dan UDF, serta kebijakan pengindeksan. Tabel berikut mencantumkan batasan khusus untuk konfigurasi dalam kontainer.

Sumber daya Batas default
Panjang maksimum database atau nama kontainer 255
Prosedur tersimpan maksimum per kontainer 100 *
UDF maksimum per kontainer 50 *
Jumlah maksimum jalur dalam kebijakan pengindeksan 100 *
Jumlah maksimum kunci unik per kontainer 10 *
Jumlah maksimum jalur per batasan kunci unik 16 *
Nilai TTL maksimum 2147483647

* Anda dapat menambah batas per kontainer mana pun dengan membuat *.

Batas per item

Bergantung pada API mana yang Anda gunakan, item Azure Cosmos dapat mewakili dokumen dalam kumpulan, baris dalam tabel, atau node atau tepi dalam grafik. Tabel berikut menunjukkan batasan per item di Cosmos DB.

Sumber daya Batas default
Ukuran maksimum item 2 MB (panjang UTF-8 representasi JSON)
Panjang maksimum dari nilai kunci partisi 2048 byte
Panjang maksimum nilai ID 1023 byte
Jumlah properti maksimum per item Tidak ada batas tertentu
Panjang maksimum nama properti Tidak ada batas tertentu
Panjang maksimum nilai properti Tidak ada batas tertentu
Panjang maksimum nilai properti string Tidak ada batas tertentu
Panjang maksimum nilai properti numerik IEEE754 presisi ganda 64-bit
Tingkat maksimum bersarang untuk objek/array yang disematkan 128
Nilai TTL maksimum 2147483647

Tidak ada batasan pada muatan item seperti jumlah properti dan kedalaman bersarang, kecuali untuk batasan panjang pada nilai kunci partisi dan ID, dan pembatasan ukuran keseluruhan 2 MB. Anda mungkin harus mengonfigurasi kebijakan pengindeksan untuk kontainer dengan struktur item besar atau kompleks untuk mengurangi konsumsi RU. Lihat Pemodelan item di Cosmos DB untuk contoh dunia nyata, dan pola untuk mengelola item besar.

Batas per permintaan

Azure Cosmos DB mendukung CRUD dan operasi kueri terhadap sumber daya seperti kontainer, item, dan database. Ini juga mendukung permintaan batch transaksional terhadap beberapa item dengan kunci partisi yang sama dalam kontainer.

Sumber daya Batas default
Waktu eksekusi maksimum untuk satu operasi (seperti eksekusi prosedur tersimpan atau satu pengambilan halaman kueri) 5 detik
Ukuran permintaan maksimum (misalnya, prosedur tersimpan, CRUD) 2 MB
Ukuran respons maksimum (misalnya, kueri paginasi) 4 MB
Jumlah maksimum operasi dalam batch transaksional 100

Setelah operasi seperti kueri mencapai batas waktu eksekusi atau batas ukuran respons, kueri mengembalikan halaman hasil dan token kelanjutan kepada klien untuk melanjutkan eksekusi. Tidak ada batas praktis pada durasi yang dapat dijalankan oleh satu kueri di seluruh halaman/kelanjutan.

Cosmos DB menggunakan HMAC untuk otorisasi. Anda dapat menggunakan kunci utama, atau token sumber daya untuk kontrol akses halus ke sumber daya seperti kontainer, kunci partisi, atau item. Tabel berikut mencantumkan batasan untuk token otorisasi di Cosmos DB.

Sumber daya Batas default
Waktu berakhir token primer maksimum 15 menit
Waktu berakhir token sumber daya minimum 10 menit
Waktu berakhir token sumber daya maksimun 24 jam secara default. Anda dapat meningkatkannya dengan mengajukan tiket dukungan Azure
Clock skew maksimum untuk otorisasi token 15 menit

Cosmos DB mendukung eksekusi pemicu selama penulisan. Layanan ini mendukung maksimum satu pra-pemicu dan satu operasi pasca-pemicu per tulis.

Batas permintaan metadata

Azure Cosmos DB mempertahankan metadata sistem untuk setiap akun. Metadata ini memungkinkan Anda untuk menghitung koleksi, database, sumber daya Azure Cosmos DB lainnya, dan konfigurasinya secara gratis.

Sumber daya Batas default
Laju buat kumpulan maksimum per menit 100
Laju buat Database maksimum per menit 100
Laju pembaruan throughput yang disediakan maksimum per menit 5
Throughput maksimum yang didukung oleh akun untuk operasi metadata 240 RU/dtk

Batas untuk throughput yang disediakan skala otomatis

Lihat artikel Skala otomatis dan Tanya Jawab Umum untuk penjelasan lebih mendetail tentang throughput dan batas penyimpanan dengan skala otomatis.

Sumber daya Batas default
RU/dtk maksimum yang dapat diskalakan sistem Tmax, RU/dtk maksimum skala otomatis yang ditetapkan oleh pengguna
RU/dtk minimum yang dapat diskalakan sistem 0.1 * Tmax
RU/dtk saat ini yang dapat diskalakan sistem 0.1*Tmax <= T <= Tmax, berdasarkan penggunaan
RU/dtk yang dapat ditagih minimum per jam 0.1 * Tmax

Penagihan dilakukan per jam, saat Anda ditagih untuk RU/dtk tertinggi yang diskalakan sistem dalam satu jam, atau 0.1*Tmax, mana pun yang lebih tinggi.
RU/dtk maks skala otomatis minimum untuk kontainer MAX(4000, highest max RU/s ever provisioned / 10, current storage in GB * 100) dibulatkan ke 1000 RU/dtk terdekat
RU/dtk maksimum skala otomatis minimum untuk database MAX(4000, highest max RU/s ever provisioned / 10, current storage in GB * 100, 4000 + (MAX(Container count - 25, 0) * 1000)), dibulatkan ke 1000 RU/dtk terdekat.

Ingat jika database Anda memiliki lebih dari 25 kontainer, sistem akan meningkatkan RU/dtk maksimum skala otomatis minimum sebesar 1000 RU/dtk per kontainer tambahan. Misalnya, jika Anda memiliki 30 kontainer, RU/dtk maksimum autoscale terendah yang dapat Anda tetapkan adalah 9000 RU/dtk (menskalakan antara 900 - 9000 RU/dtk).

Batas kueri SQL

Cosmos DB mendukung kueri item menggunakan SQL. Tabel berikut ini menjelaskan pembatasan dalam pernyataan kueri, misalnya dalam hal jumlah klausa atau panjang kueri.

Sumber daya Batas default
Panjang maksimum kueri SQL 256 KB
JOIN maksimum per kueri 5 *
UDF maksimum per kueri 10 *
Titik maksimum per poligon 4096
Jalur maksimum yang disertakan per kontainer 500
Jalur maksimum yang dikecualikan per kontainer 500
Properti maksimum dalam indeks komposit 8

* Anda dapat menambah batas kueri SQL mana pun dengan membuat *.

Batas khusus MongoDB API

Cosmos DB mendukung protokol wire MongoDB untuk aplikasi yang ditulis pada MongoDB. Anda dapat menemukan perintah dan versi protokol yang didukung di Fitur dan sintaks MongoDB yang didukung.

Tabel berikut mencantumkan batasan khusus untuk dukungan fitur MongoDB. Batas layanan lain yang disebutkan untuk API SQL (core) juga berlaku untuk API MongoDB.

Sumber daya Batas default
Ukuran memori kueri MongoDB maksimum (Batasan ini hanya untuk versi server 3.2) 40 MB
Waktu eksekusi maksimum untuk operasi MongoDB (untuk versi server 3.2) 15 detik
Waktu eksekusi maksimum untuk operasi MongoDB(untuk versi server 3.6 dan 4.0) 60 detik
Tingkat maksimum bersarang untuk objek/array yang disematkan pada definisi indeks 6
Batas waktu sambungan menganggur untuk penutupan sambungan samping server* 30 menit

* Disarankan agar aplikasi klien mengatur batas waktu koneksi menganggur dalam pengaturan driver menjadi 2-3 menit karena batas waktu default untuk Azure LoadBalancer adalah 4 menit. Waktu habis ini akan memastikan bahwa koneksi menganggur tidak diselesaikan oleh penyeimbang muatan menengah antara komputer klien dan Azure Cosmos DB.

Batas Coba Gratis Cosmos DB

Tabel berikut mencantumkan batasan untuk uji coba Coba Azure Cosmos DB secara gratis.

Sumber daya Batas default
Durasi percobaan 30 hari (uji coba baru dapat diminta setelah kedaluwarsa)
Setelah kedaluwarsa, informasi yang disimpan akan dihapus.
Kontainer maksimum per langganan (SQL, Gremlin, Table API) 1
Kontainer maksimum per langganan (MongoDB API) 3
Throughput maksimum per kontainer 5000
Throughput maksimum per database throughput bersama 20000
Total penyimpanan maksimum per akun 10 GB

Coba Cosmos DB yang mendukung distribusi global hanya di wilayah AS Tengah, Eropa Utara, dan Asia Tenggara. Tiket dukungan Azure tidak dapat dibuat untuk akun Coba Azure Cosmos DB. Namun, dukungan diberikan untuk pelanggan dengan paket dukungan yang ada.

Batas untuk akun tingkat gratis Azure Cosmos DB

Tabel berikut mencantumkan batasan untuk akun tingkat gratis Azure Cosmos DB.

Sumber daya Batas default
Jumlah akun tingkat gratis per langganan Azure 1
Durasi diskon tingkat gratis Masa pakai akun. Harus ikut serta selama pembuatan akun.
RU/dtk maksimum secara gratis 1000 RU/dtk
Penyimpanan maksimum secara gratis 25 GB
Jumlah maksimum database throughput bersama 5
Jumlah maksimum kontainer dalam database throughput bersama 25
Dalam akun tingkat gratis, RU/dtk minimum untuk database throughput bersama dengan hingga 25 kontainer adalah 400 RU/dtk.

Selain hal-hal di atas, Batas per-akun juga berlaku untuk akun tingkat gratis. Untuk mempelajari selengkapnya, lihat artikel cara mendapatkan akun tingkat gratis.

Langkah berikutnya

Baca lebih lanjut tentang konsep inti Cosmos DB distribusi global dan partisi serta throughput yang disediakan.

Mulai menggunakan Azure Cosmos DB dengan salah satu mulai cepat kami: