Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan adaptor DynamoDB Streams Kinesis untuk memproses catatan aliran
Menggunakan Adaptor Amazon Kinesis adalah cara yang disarankan untuk menggunakan aliran dari Amazon DynamoDB. DynamoDB Streams API sengaja mirip dengan Kinesis Data Streams. Di kedua layanan, aliran data terdiri dari pecahan, yang merupakan wadah untuk rekaman aliran. API kedua layanan berisi operasi ListStreams, DescribeStream, GetShards, dan GetShardIterator. (Meskipun tindakan DynamoDB Streams ini serupa dengan tindakan serupa di Kinesis Data Streams, tindakan tersebut tidak 100 persen identik.)
Sebagai pengguna DynamoDB Streams, Anda dapat menggunakan pola desain yang ditemukan dalam KCL untuk memproses serpihan dan rekaman aliran DynamoDB Streams. Untuk melakukan ini, Anda menggunakan Adaptor DynamoDB Streams Kinesis. Adaptor Kinesis mengimplementasikan antarmuka Kinesis Data Streams sehingga KCL dapat digunakan untuk menggunakan dan memproses catatan dari DynamoDB Streams. Untuk petunjuk tentang cara mengatur dan menginstal DynamoDB Streams Kinesis Adapter, lihat repositori. GitHub
Anda dapat menulis aplikasi untuk Kinesis Data Streams menggunakan Kinesis Client Library (KCL). KCL menyederhanakan pengodean dengan menyediakan abstraksi yang berguna di atas Kinesis Data Streams API tingkat rendah. Untuk informasi selengkapnya tentang KCL, lihat Mengembangkan konsumen menggunakan Kinesis client library dalam Panduan Developer Amazon Kinesis Data Streams.
DynamoDB merekomendasikan penggunaan KCL versi 3.5.x+dengan SDK untuk Java v2.x. AWS DynamoDB Streams Kinesis Adapter versi 1.x saat ini dengan AWS SDK untuk Java v1.x akan terus didukung sepenuhnya sepanjang siklus hidupnya seperti yang dimaksudkan selama periode transisi selaras dengan kebijakan pemeliharaan AWS SDK dan Alat.
catatan
Amazon Kinesis Client Library (KCL) versi 1.x dan 2.x sudah usang. KCL 1.x akan mencapai akhir dukungan pada 30 Januari 2026. Kami sangat menyarankan Anda memigrasikan aplikasi KCL menggunakan versi 1.x ke versi KCL terbaru sebelum 30 Januari 2026. Untuk menemukan versi KCL terbaru, lihat halaman Perpustakaan Klien
Diagram berikut menunjukkan bagaimana perpustakaan ini berinteraksi satu sama lain.
Dengan Adaptor Kinesis DynamoDB Streams, Anda dapat mulai mengembangkan antarmuka KCL, dengan panggilan API diarahkan secara mulus ke titik akhir DynamoDB Streams.
Saat aplikasi Anda dimulai, aplikasi akan memanggil KCL untuk membuat instance pekerja. Anda harus menyediakan pekerja dengan informasi konfigurasi untuk aplikasi, seperti deskriptor aliran dan AWS kredenSIAL, dan nama kelas pengolah rekaman yang Anda berikan. Saat menjalankan kode di pemroses rekaman, pekerja melakukan tugas-tugas berikut:
-
Menghubungkan ke aliran
-
Menghitung pecahan dalam aliran
-
Memeriksa dan menghitung pecahan anak dari pecahan induk tertutup di dalam aliran
-
Mengkoordinasikan asosiasi serpihan dengan pekerja lain (jika ada)
-
Membuat instance pemroses rekaman untuk setiap pecahan yang dikelolanya
-
Menarik catatan dari aliran
-
Menskal GetRecords akan tingkat panggilan API selama throughput tinggi (jika mode catch-up dikonfigurasi)
-
Mendorong rekaman ke pemroses rekaman yang sesuai
-
Catatan yang diproses di pos pemeriksaan
-
Menyeimbangkan asosiasi pekerja pecahan ketika jumlah instans pekerja berubah
-
Menyeimbangkan asosiasi pekerja pecahan saat pecahan dipisahkan
Adaptor KCL mendukung mode catch-up, fitur penyesuaian laju panggilan otomatis untuk menangani peningkatan throughput sementara. Ketika jeda pemrosesan aliran melebihi ambang batas yang dapat dikonfigurasi (default satu menit), mode catch-up menskalakan frekuensi panggilan GetRecords API dengan nilai yang dapat dikonfigurasi (default 3x) untuk mengambil catatan lebih cepat, kemudian kembali normal setelah jeda turun. Ini sangat berharga selama periode throughput tinggi di mana aktivitas penulisan DynamoDB dapat membanjiri konsumen menggunakan tingkat polling default. Catch-up mode dapat diaktifkan melalui parameter catchupEnabled konfigurasi (default false).
catatan
Untuk deskripsi konsep KCL yang tercantum di sini, lihat Mengembangkan konsumen menggunakan Kinesis client library di Panduan Pengembang Amazon Kinesis Data Streams.
Untuk informasi selengkapnya tentang menggunakan aliran dengan AWS Lambda lihat Streaming DynamoDB dan AWS Lambda pemicu