Bagikan melalui


Pertanyaan umum tentang cache terintegrasi Azure Cosmos DB

BERLAKU UNTUK: NoSQL

Cache terintegrasi Azure Cosmos DB adalah cache dalam memori yang terintegrasi di Azure Cosmos DB. Artikel ini menjawab pertanyaan umum tentang cache terintegrasi Azure Cosmos DB.

Tanya jawab umum

Mengapa cache terintegrasi memerlukan gateway khusus?

Jika Anda tersambung ke Azure Cosmos DB menggunakan mode gateway, Anda telah menggunakan gateway standar. Sementara backend Azure Cosmos DB (throughput dan penyimpanan yang disediakan) memiliki kapasitas khusus per kontainer, gateway standar digunakan oleh banyak pelanggan. Sangat praktis bagi banyak pelanggan untuk berbagi gateway standar karena sumber daya komputasi yang dikonsumsi oleh masing-masing pelanggan kecil. Karena cache terintegrasi khusus untuk akun Azure Cosmos DB Anda dan memerlukan CPU dan memori yang signifikan, cache tersebut memerlukan simpul gateway khusus.

Apa itu gateway khusus?

Gateway khusus adalah komputasi sisi server yang merupakan front-end bagi akun Azure Cosmos DB Anda. Saat Anda tersambung ke titik akhir gateway khusus menggunakan mode gateway, aplikasi Anda mengirimkan permintaan ke gateway khusus, yang kemudian merutekan permintaan ke partisi backend yang berbeda. Menggunakan mode langsung dengan gateway khusus didukung, tetapi permintaan ini tidak akan menggunakan cache terintegrasi.

Apakah menggunakan gateway khusus menawarkan manfaat kinerja lain dibandingkan menggunakan gateway standar?

Secara umum, permintaan yang dirutekan oleh gateway khusus akan memiliki latensi yang sedikit lebih rendah dan lebih konsisten daripada permintaan yang dirutekan oleh gateway standar. Bahkan permintaan yang tidak menggunakan cache terintegrasi masih akan memiliki latensi yang sedikit lebih rendah daripada gateway standar.

Latensi seperti apa yang dapat saya perkirakan akan terjadi dari cache terintegrasi?

Permintaan yang dilayani oleh cache terintegrasi berjalan cepat karena data cache disimpan dalam memori pada gateway khusus, bukan di backend.

Untuk titik baca cache, akan terjadi latensi rata-rata selama 2-4 md. Untuk kueri cache, latensi bergantung pada kueri. Cache kueri berfungsi dengan cara melakukan cache respons mesin kueri untuk kueri tertentu. Respons ini kemudian dikirim kembali secara sisi klien ke SDK untuk diproses. Untuk kueri sederhana, diperlukan kerja minimal di SDK dan biasanya terjadi latensi rata-rata 2-4 ds. Kueri yang lebih rumit dengan GROUP BY atau DISTINCT memerlukan pemrosesan lebih dalam SDK sehingga latensinya mungkin lebih tinggi, bahkan dengan cache kueri.

Jika sebelumnya Anda terhubung ke Azure Cosmos DB dengan mode langsung dan beralih untuk terhubung dengan gateway khusus, Anda mungkin melihat sedikit peningkatan latensi untuk beberapa permintaan. Menggunakan mode gateway memerlukan permintaan dikirim ke gateway (dalam hal ini, gateway khusus) lalu dirutekan dengan tepat ke backend. Mode langsung, seperti namanya, memungkinkan klien untuk berkomunikasi langsung dengan backend, menghilangkan adanya langkah tambahan. Tidak ada SLA latensi untuk permintaan menggunakan gateway khusus.

Jika sebelumnya aplikasi Anda menggunakan mode langsung, latensi cache terintegrasi akan memiliki keunggulan signifikan hanya dalam skenario berikut:

  • Latensi baca titik untuk item besar (> 16 KB)
  • RU tinggi atau kueri kompleks

Jika aplikasi Anda sebelumnya menggunakan mode gateway dengan gateway standar, cache terintegrasi akan menawarkan pengurangan latensi di hampir semua skenario.

Apakah SLA ketersediaan Azure Cosmos DB mencakup gateway khusus dan cache terintegrasi?

Untuk skenario yang memerlukan high availability dan agar dicakup oleh SLA ketersediaan Azure Cosmos DB, Anda harus memprovisikan setidaknya 3 node gateway khusus. Misalnya, jika satu node gateway khusus diperlukan dalam produksi, Anda harus memprovisikan dua node gateway khusus tambahan untuk memperhitungkan kemungkinan waktu henti, pemadaman, dan peningkatan. Jika hanya satu node gateway khusus yang diprovisikan, Anda akan kehilangan ketersediaan untuk sementara dalam skenario tersebut. Selain itu, pastikan gateway khusus Anda memiliki node yang cukup untuk melayani beban kerja Anda.

Cache terintegrasi hanya tersedia untuk API untuk NoSQL saat ini. Apakah Anda berencana untuk merilisnya untuk API lain juga?

Memperluas cache terintegrasi di luar API untuk NoSQL direncanakan pada peta jalan jangka panjang tetapi berada di luar cakupan awal cache terintegrasi.

Konsistensi apa yang didukung cache terintegrasi?

Cache terintegrasi mendukung kedua sesi dan konsistensi akhir. Anda juga dapat mengonfigurasi MaxIntegratedCacheStaleness opsional, yang menempatkan batas atas pada data cache.

Langkah berikutnya