Umpan perubahan di Azure Cosmos DB
BERLAKU UNTUK: NoSQL
MongoDB
Cassandra
Gremlin
Mengubah umpan di Azure Cosmos DB adalah catatan perubahan yang terus-menerus ke penampung sesuai urutan terjadinya. Ubah dukungan umpan di Azure Cosmos DB bekerja dengan mendengarkan kontainer Azure Cosmos DB untuk setiap perubahan. Kemudian melakukan output daftar dokumen yang diurutkan, yang diubah dalam urutan modifikasinya. Perubahan yang terjadi dapat diproses secara asinkron dan bertahap, dan output dapat didistribusikan ke satu atau lebih konsumen untuk pemrosesan paralel.
Pelajari lebih lanjut tentang mengubah pola desain umpan.
API dan SDK klien yang didukung
Fitur umpan perubahan saat ini didukung di SDK Azure Cosmos DB berikut.
Driver klien | NoSQL | Apache Cassandra | MongoDB | Apache Gremlin | Table | PostgreSQL |
---|---|---|---|---|---|---|
.NET | ||||||
Java | ||||||
Python | ||||||
Simpul/JavaScript |
Bekerja dengan mengubah umpan
Anda dapat bekerja dengan mengubah umpan menggunakan opsi berikut:
- Menggunakan perubahan umpan dengan Azure Functions
- Menggunakan perubahan umpan dengan mengubah prosesor umpan
- Menggunakan umpan perubahan dengan model penarikan
Umpan perubahan tersedia untuk rentang kunci partisi kontainer Azure Cosmos DB. Ini memungkinkannya didistribusikan ke satu atau beberapa konsumen untuk pemrosesan paralel seperti yang ditunjukkan pada gambar di bawah ini.
Catatan
Rentang kunci partisi dipetakan ke partisi fisik saat menggunakan prosesor umpan perubahan dan FeedRanges
saat menggunakan model penarikan.
Fitur ubah umpan
Umpan perubahan diaktifkan secara default untuk semua akun Azure Cosmos DB.
Ada beberapa mode umpan perubahan, beberapa di antaranya memerlukan konfigurasi tambahan untuk diaktifkan.
Anda dapat menggunakan throughput yang disediakan untuk membaca dari umpan perubahan, sama seperti operasi Azure Cosmos DB lainnya, di salah satu wilayah yang terkait dengan akun Azure Cosmos DB Anda.
Umpan perubahan mencakup operasi sisipkan dan perbarui yang dibuat ke item dalam kontainer. Jika Anda menggunakan semua versi dan mode penghapusan (pratinjau), Anda juga mendapatkan perubahan dari operasi penghapusan dan kedaluwarsa TTL.
Setiap perubahan muncul tepat sekali di umpan perubahan, dan klien harus mengelola logika titik pemeriksaan. Jika Anda ingin menghindari kompleksitas pengelolaan titik pemeriksaan, prosesor umpan perubahan menyediakan pos probe otomatis dan semantik "setidaknya sekali". Untuk informasi selengkapnya, lihat artikel menggunakan umpan perubahan dengan prosesor umpan perubahan.
Perubahan tersedia secara paralel untuk rentang kunci partisi kontainer Azure Cosmos DB. Kemampuan ini memungkinkan beberapa konsumen untuk memproses perubahan dari kontainer besar secara paralel.
Aplikasi dapat meminta beberapa umpan perubahan pada kontainer yang sama secara bersamaan.
Titik awal untuk umpan perubahan dapat disesuaikan dan opsi yang berbeda tersedia untuk setiap mode.
Sortir urutan item untuk mengubah feed
Ubah item feed datang dalam urutan waktu modifikasinya. Urutan pengurutan ini dijamin per kunci partisi, dan tidak ada urutan yang dijamin di seluruh nilai kunci partisi.
Catatan
Untuk akun tulis multi-wilayah, ada dua tanda waktu:
- Waktu epoch server di mana rekaman ditulis di wilayah lokal. Ini dicatat sebagai
_ts
. - Waktu epoch di mana tidak adanya konflik dikonfirmasi, atau konflik diselesaikan di wilayah hub untuk rekaman tersebut. Ini dicatat sebagai
crts
.
Ubah item umpan datang dalam urutan yang direkam oleh crts
.
Mengubah umpan di akun Azure Cosmos DB multi-wilayah
Di akun Azure Cosmos DB multi-wilayah, perubahan di satu wilayah tersedia di semua wilayah. Jika wilayah tulis gagal, umpan perubahan berfungsi di seluruh operasi failover manual, dan berdampingan. Untuk akun dengan beberapa wilayah tulis, tidak ada jaminan kapan perubahan akan tersedia. Perubahan masuk pada dokumen yang sama dapat dihilangkan dalam mode versi terbaru jika ada perubahan terbaru di wilayah lain, dan semua perubahan akan diambil di semua versi dan mode penghapusan.
Ubah mode umpan
Ada dua mode umpan perubahan yang tersedia: mode versi terbaru dan semua versi dan mode penghapusan. Mode umpan perubahan dibaca dalam menentukan perubahan operasi mana yang diambil dan metadata yang tersedia untuk setiap perubahan. Dimungkinkan untuk menggunakan umpan perubahan dalam mode yang berbeda di beberapa aplikasi untuk kontainer Azure Cosmos DB yang sama.
Mode versi terbaru
Dalam mode umpan perubahan versi terbaru, Anda akan melihat perubahan terbaru dari sisipan atau pembaruan untuk semua item dalam umpan, dan umpan tersedia untuk masa pakai kontainer. Tidak ada indikasi apakah perubahan yang diberikan berasal dari operasi sisipkan atau pembaruan, dan penghapusan tidak diambil. Perubahan dapat dibaca dari titik waktu mana pun sejauh asal kontainer Anda. Namun, jika item dihapus, item dihapus dari umpan perubahan. Lihat artikel mode umpan perubahan versi terbaru untuk mempelajari selengkapnya.
Semua versi dan mode penghapusan (pratinjau)
Semua versi dan mode penghapusan memungkinkan Anda melihat semua perubahan pada item dari pembuatan, pembaruan, dan penghapusan. Anda mendapatkan catatan setiap perubahan pada item dalam urutan terjadinya, termasuk perubahan perantara pada item di antara pembacaan umpan perubahan. Untuk membaca dari umpan perubahan di semua versi dan mode penghapusan, Anda harus memiliki cadangan berkelanjutan yang dikonfigurasi untuk akun Azure Cosmos DB Anda, yang membuat Azure Cosmos DB semua versi dan menghapus umpan perubahan. Dalam mode ini, Anda hanya dapat membaca perubahan yang terjadi dalam periode pencadangan berkelanjutan yang dikonfigurasi untuk akun tersebut. Lihat artikel semua versi dan penghapusan mode umpan perubahan untuk mempelajari selengkapnya, termasuk cara mendaftar dalam pratinjau.
Ubah umpan dalam API untuk Cassandra dan MongoDB
Fungsionalitas umpan perubahan muncul sebagai aliran perubahan di API untuk MongoDB dan Kueri dengan predikat dalam API untuk Cassandra. Untuk mempelajari selengkapnya tentang detail implementasi untuk API untuk MongoDB, lihat Mengubah aliran di Azure Cosmos DB API untuk MongoDB.
Native Apache Cassandra menyediakan pengambilan data perubahan (CDC), mekanisme untuk menandai tabel tertentu untuk pengarsipan dan menolak penulisan ke tabel tersebut setelah ukuran-on-disk yang dapat dikonfigurasi untuk log CDC tercapai. Fitur umpan perubahan di Azure Cosmos DB for Apache Cassandra meningkatkan kemampuan untuk mengkueri perubahan dengan predikat melalui CQL. Untuk mempelajari selengkapnya tentang detail implementasi, lihat Mengubah umpan di Azure Cosmos DB untuk Apache Cassandra.
Mengukur konsumsi unit permintaan umpan perubahan
Umpan perubahan tersedia di setiap kontainer terlepas dari apakah itu digunakan. Satu-satunya biaya untuk umpan perubahan adalah throughput dan RU yang disediakan kontainer sewa untuk setiap permintaan. Gunakan Azure Monitor untuk mengukur konsumsi unit permintaan (RU) umpan perubahan. Untuk informasi selengkapnya, lihat memantau throughput atau meminta penggunaan unit di Azure Cosmos DB.
Langkah berikutnya
Sekarang Anda bisa melanjutkan untuk mempelajari selengkapnya tentang umpan perubahan di artikel berikut ini: