Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan Kinesis Client Library (KCL) untuk memproses aliran Amazon Keyspaces
Topik ini menjelaskan cara menggunakan Kinesis Client Library (KCL) untuk menggunakan dan memproses data dari aliran Amazon Keyspaces change data capture (CDC).
Alih-alih bekerja langsung dengan Amazon Keyspaces Streams API, bekerja dengan Kinesis Client Library (KCL) memberikan banyak manfaat, misalnya:
-
Dibangun dalam pelacakan garis keturunan pecahan dan penanganan iterator.
-
Penyeimbangan beban otomatis di seluruh pekerja.
-
Toleransi kesalahan dan pemulihan dari kegagalan pekerja.
-
Pemeriksaan untuk melacak kemajuan pemrosesan.
-
Adaptasi terhadap perubahan kapasitas aliran.
-
Komputasi terdistribusi yang disederhanakan untuk memproses catatan CDC.
Bagian berikut menguraikan mengapa dan bagaimana menggunakan Kinesis Client Library (KCL) untuk memproses aliran dan memberikan contoh untuk memproses aliran CDC Amazon Keyspaces dengan KCL.
Untuk informasi tentang harga, lihat harga Amazon Keyspaces (untuk Apache Cassandra).
Apa itu Perpustakaan Klien Kinesis?
Kinesis Client Library (KCL) adalah perpustakaan perangkat lunak Java mandiri yang dirancang untuk menyederhanakan proses konsumsi dan pemrosesan data dari aliran. KCL menangani banyak tugas kompleks yang terkait dengan komputasi terdistribusi, memungkinkan Anda fokus pada penerapan logika bisnis Anda saat memproses data aliran. KCL mengelola aktivitas seperti penyeimbangan beban di beberapa pekerja, menanggapi kegagalan pekerja, memeriksa catatan yang diproses, dan menanggapi perubahan jumlah pecahan dalam aliran.
Untuk memproses aliran Amazon Keyspaces CDC, Anda dapat menggunakan pola desain yang ditemukan di KCL untuk bekerja dengan pecahan aliran dan catatan aliran. KCL menyederhanakan pengodean dengan menyediakan abstraksi yang berguna di atas Kinesis Data Streams API tingkat rendah. Untuk informasi selengkapnya tentang KCL, lihat Mengem bangkan konsumen dengan KCL di Panduan Pengembang Amazon Kinesis Data Streams.
Untuk menulis aplikasi menggunakan KCL, Anda menggunakan Amazon Keyspaces Streams Kinesis Adapter. Adaptor Kinesis mengimplementasikan antarmuka Kinesis Data Streams sehingga Anda dapat menggunakan KCL untuk mengonsumsi dan memproses catatan dari aliran Amazon Keyspaces. Untuk petunjuk tentang cara mengatur dan menginstal adaptor Kinesis streaming Amazon Keyspaces, kunjungi repositori. GitHub
Diagram berikut menunjukkan bagaimana pustaka ini berinteraksi satu sama lain.
KCL sering diperbarui untuk memasukkan versi yang lebih baru dari pustaka yang mendasarinya, peningkatan keamanan, dan perbaikan bug. Kami menyarankan Anda menggunakan versi terbaru KCL untuk menghindari masalah yang diketahui dan mendapatkan manfaat dari semua perbaikan terbaru. Untuk menemukan versi KCL terbaru, lihat repositori KCL GitHub .
Konsep KCL
Sebelum Anda menerapkan aplikasi konsumen menggunakan KCL, Anda harus memahami konsep-konsep berikut:
- Aplikasi konsumen KCL
-
Aplikasi konsumen KCL adalah program yang memproses data dari aliran CDC Amazon Keyspaces. KCL bertindak sebagai perantara antara kode aplikasi konsumen Anda dan aliran CDC Amazon Keyspaces.
- Pekerja
-
Pekerja adalah unit eksekusi aplikasi konsumen KCL Anda yang memproses data dari aliran CDC Amazon Keyspaces. Aplikasi Anda dapat menjalankan beberapa pekerja yang didistribusikan di beberapa instans.
- Prosesor rekaman
-
Prosesor rekaman adalah logika dalam aplikasi Anda yang memproses data dari pecahan di aliran CDC Amazon Keyspaces. Prosesor rekaman dibuat oleh pekerja untuk setiap pecahan yang dikelolanya.
- Menyewa
-
Sewa mewakili tanggung jawab pemrosesan untuk pecahan. Pekerja menggunakan sewa untuk mengoordinasikan pekerja mana yang memproses pecahan mana. KCL menyimpan data sewa dalam tabel di Amazon DynamoDB.
- Pos Pemeriksaan
-
Pos pemeriksaan adalah catatan posisi di pecahan di mana prosesor rekaman telah berhasil memproses catatan. Checkpointing memungkinkan aplikasi Anda melanjutkan pemrosesan dari tempat tinggalnya jika pekerja gagal.
Dengan adaptor Kinesis Amazon Keyspaces, Anda dapat mulai mengembangkan terhadap antarmuka KCL, dengan panggilan API yang diarahkan secara mulus ke titik akhir aliran Amazon Keyspaces. Untuk daftar titik akhir yang tersedia, lihatCara mengakses titik akhir aliran CDC di Amazon Keyspaces.
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
-
Mengkoordinasikan asosiasi serpihan dengan pekerja lain (jika ada)
-
Membuat instance pemroses rekaman untuk setiap pecahan yang dikelolanya
-
Menarik catatan dari aliran
-
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