Microsoft Azure Cosmos DB tanpa server

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

Azure Cosmos DB tanpa server memungkinkan Anda menggunakan akun Azure Cosmos dengan cara berbasis konsumsi di mana Anda hanya dikenakan biaya untuk Unit Permintaan yang digunakan oleh operasi database Anda dan penyimpanan yang digunakan oleh data Anda. Kontainer tanpa server dapat melayani ribuan permintaan per detik tanpa biaya minimum dan tidak perlu perencanaan kapasitas.

Penting

Apakah Anda memiliki umpan balik tentang tanpa server? Kami ingin mendengar pendapat Anda! Jangan ragu untuk menjatuhkan pesan ke tim tanpa server Azure Cosmos DB: azurecosmosdbserverless@service.microsoft.com.

Saat menggunakan Azure Cosmos DB, setiap operasi basis data memiliki biaya yang dinyatakan dalam Unit Permintaan. Cara Anda ditagih untuk biaya ini tergantung pada jenis akun Azure Cosmos yang Anda gunakan:

  • Dalam mode throughput yang disediakan, Anda harus berkomitmen pada sejumlah throughput tertentu (dinyatakan dalam Unit Permintaan per detik) yang disediakan pada basis data dan kontainer Anda. Biaya operasi basis data Anda kemudian dikurangi dari jumlah Unit Permintaan yang tersedia setiap detik. Pada akhir periode penagihan, Anda akan ditagih untuk jumlah throughput yang telah Anda sediakan.
  • Dalam mode nirserver, Anda tidak perlu menyediakan throughput apa pun saat membuat kontainer di akun Azure Cosmos Anda. Pada akhir periode penagihan, Anda akan ditagih untuk jumlah Unit Permintaan yang digunakan oleh operasi basis data Anda.

Kasus penggunaan

Azure Cosmos DB tanpa server paling cocok dengan skenario di mana Anda mengharapkan lalu lintas terputus-putus dan tidak dapat diprediksi dengan waktu diam yang lama. Karena kapasitas penyediaan dalam situasi seperti itu tidak diperlukan dan mungkin mahal, Azure Cosmos DB tanpa server harus dipertimbangkan dalam kasus penggunaan berikut:

  • Memulai dengan Azure Cosmos DB
  • Menjalankan aplikasi dengan
    • lalu lintas terputus-semburan yang sulit diramalkan, atau
    • rasio lalu lintas rata-rata ke puncak rendah (<10%)
  • Mengembangkan, menguji, mendorong, dan menjalankan dalam produksi aplikasi baru di mana pola lalu lintas tidak diketahui
  • Mengintegrasikan dengan layanan komputasi tanpa server seperti Azure Functions

Lihat cara memilih antara throughput yang disediakan dan artikel tanpa server untuk panduan lebih lanjut tentang cara memilih penawaran yang paling sesuai dengan kasus penggunaan Anda.

Menggunakan sumber daya tanpa server

Serverless adalah tipe akun Azure Cosmos baru, yang berarti Anda harus memilih antara throughput yang disediakan dantanpa server saat membuat akun baru. Anda harus membuat akun tanpa server baru untuk memulai tanpa server. Migrasi akun yang ada ke/dari mode tanpa server saat ini tidak didukung.

Kontainer apa pun yang dibuat dalam akun tanpa server adalah wadah tanpa server. Kontainer tanpa server mengekspos kemampuan yang sama seperti kontainer yang dibuat dalam mode throughput yang disediakan, sehingga Anda membaca, menulis, dan mengkueri data Anda dengan cara yang sama persis. Namun akun dan kontainer tanpa server juga memiliki karakteristik khusus:

  • Akun tanpa server hanya bisa berjalan dalam satu wilayah Azure. Tidak dimungkinkan untuk menambahkan wilayah Azure tambahan ke akun tanpa server setelah Anda membuatnya.
  • Throughput penyediaan tidak diperlukan pada kontainer tanpa server, sehingga pernyataan berikut ini berlaku:
    • Anda tidak dapat melewati throughput apa pun saat membuat kontainer tanpa server dan melakukannya mengembalikan kesalahan.
    • Anda tidak dapat membaca atau memperbarui throughput pada kontainer tanpa server dan melakukannya mengembalikan kesalahan.
    • Anda tidak bisa membuat database throughput bersama di akun tanpa server dan melakukannya mengembalikan kesalahan.
  • Kontainer tanpa server dapat menyimpan maksimal 50 GB data dan indeks.

Memantau pemakaian Anda

Jika Anda telah menggunakan Azure Cosmos DB dalam mode throughput yang disediakan sebelumnya, Anda akan menemukan bahwa tanpa server lebih hemat biaya ketika lalu lintas Anda tidak membenarkan kapasitas yang disediakan. Trade-off adalah bahwa biaya Anda akan menjadi kurang dapat diprediksi karena Anda ditagih berdasarkan jumlah permintaan yang diproses basis data Anda. Karena itu, penting untuk mengawasi pemakaian Anda saat ini.

Saat menelusuri panel Metrik akun Anda, Anda akan menemukan bagan bernama Unit Permintaan yang digunakan di bawah tab Gambaran Umum. Bagan ini menunjukkan berapa banyak Unit Permintaan yang telah dikonsumsi akun Anda:

Chart showing the consumed Request Units

Anda dapat menemukan bagan yang sama saat menggunakan Azure Monitor, seperti yang dijelaskan di sini. Perhatikan bahwa Azure Monitor memungkinkan Anda mengatur peringatan, yang dapat digunakan untuk memberi tahu Anda ketika konsumsi Unit Permintaan Anda telah melewati ambang batas tertentu.

Performa

Sumber daya tanpa server menghasilkan karakteristik kinerja tertentu yang berbeda dari yang diberikan oleh sumber daya throughput yang disediakan. Latensi kontainer tanpa server akan dicakup oleh Service Level Objective (SLO) 10 milidetik atau kurang untuk bacaan poin dan 30 milidetik atau kurang untuk menulis. Operasi point-read terdiri dari mengambil satu item dengan ID dan nilai kunci partisinya.

Langkah berikutnya

Mulai menggunakan tanpa server dengan artikel berikut ini: