Kemiringan negara - Layanan Terkelola untuk Apache Flink

Amazon Managed Service untuk Apache Flink sebelumnya dikenal sebagai Amazon Kinesis Data Analytics untuk Apache Flink.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kemiringan negara

Untuk operator stateful, yaitu, operator yang mempertahankan status untuk logika bisnis mereka seperti windows, kemiringan data selalu mengarah ke kemiringan status. Beberapa subtugas menerima lebih banyak peristiwa daripada yang lain karena kemiringan data dan karenanya juga mempertahankan lebih banyak data dalam keadaan. Namun, bahkan untuk aplikasi yang memiliki partisi seimbang secara merata, mungkin ada kemiringan dalam berapa banyak data yang disimpan dalam keadaan. Misalnya, untuk jendela sesi, beberapa pengguna dan sesi masing-masing mungkin jauh lebih lama daripada yang lain. Jika sesi yang lebih panjang kebetulan menjadi bagian dari partisi yang sama, itu dapat menyebabkan ketidakseimbangan ukuran status yang disimpan oleh subtugas yang berbeda dari operator yang sama.

Kemiringan status tidak hanya meningkatkan lebih banyak memori dan sumber daya disk yang dibutuhkan oleh subtugas individu, tetapi juga dapat menurunkan kinerja aplikasi secara keseluruhan. Saat aplikasi mengambil pos pemeriksaan atau savepoint, status operator dipertahankan ke Amazon S3, untuk melindungi status terhadap kegagalan node atau cluster. Selama proses ini (terutama dengan semantik sekali yang diaktifkan secara default pada Managed Service for Apache Flink), pemrosesan berhenti dari perspektif eksternal hingga checkpoint/savepoint selesai. Jika ada kemiringan data, waktu untuk menyelesaikan operasi dapat diikat oleh satu subtugas yang telah mengumpulkan jumlah status yang sangat tinggi. Dalam kasus ekstrim, mengambil pos pemeriksaan/savepoint dapat gagal karena satu subtugas tidak dapat mempertahankan status.

Jadi mirip dengan kemiringan data, kemiringan status secara substansional dapat memperlambat aplikasi.

Untuk mengidentifikasi kemiringan status, Anda dapat memanfaatkan dasbor Flink. Temukan pos pemeriksaan atau savepoint terbaru dan bandingkan jumlah data yang telah disimpan untuk subtugas individual dalam detailnya.