AIFlow adalah platform orkestrasi alur kerja berbasis peristiwa yang memungkinkan pengguna menulis dan menjadwalkan alur kerja secara terprogram dengan campuran tugas streaming dan batch.
Sebagian besar platform orkestrasi alur kerja yang ada (misalnya Apache AirFlow, KubeFlow) menjadwalkan eksekusi tugas berdasarkan perubahan status eksekusi tugas upstream. Meskipun pendekatan ini berfungsi dengan baik untuk tugas-tugas batch yang dijamin akan berakhir, pendekatan ini tidak berfungsi dengan baik untuk tugas-tugas streaming yang mungkin berjalan dalam jangka waktu tak terbatas tanpa perubahan status. AIFlow diusulkan untuk memfasilitasi orkestrasi alur kerja yang melibatkan tugas streaming.
Misalnya, pengguna mungkin ingin menjalankan tugas streaming Flink secara terus-menerus untuk mengumpulkan data pelatihan, dan memulai tugas pelatihan pembelajaran mesin setiap kali tugas Flink memproses semua data upstream selama satu jam terakhir. Untuk menjadwalkan alur kerja ini menggunakan platform orkestrasi alur kerja berbasis non-peristiwa, pengguna perlu menjadwalkan tugas pelatihan secara berkala berdasarkan waktu jam dinding. Jika terjadi lonjakan lalu lintas atau kegagalan tugas upstream, tugas Flink mungkin tidak memproses jumlah data upstream yang diharapkan pada saat tugas TensorFlow dimulai. Pekerjaan upstream harus terus menunggu, atau gagal dengan cepat, atau memproses sebagian data, tidak ada satupun yang ideal. Sebagai perbandingan, AIFlow menyediakan API untuk tugas Flink untuk memancarkan peristiwa setiap kali tanda air berbasis peristiwa bertambah satu jam, yang memicu pelaksanaan tugas pelatihan yang ditentukan pengguna, tanpa mengalami masalah yang dijelaskan di atas.
Pelajari lebih lanjut tentang AIFlow di https://ai-flow.readthedocs.io
Berbasis peristiwa: AIFlow menjadwalkan alur kerja dan pekerjaan berdasarkan peristiwa. Ini lebih efisien daripada penjadwalan berdasarkan status dan dapat menjadwalkan alur kerja yang berisi pekerjaan aliran.
Dapat diperluas: Pengguna dapat dengan mudah menentukan operator dan pelaksananya sendiri untuk mengirimkan berbagai jenis tugas ke platform berbeda.
Tepat sekali: AIFlow menyediakan mekanisme pemrosesan peristiwa dengan semantik tepat sekali, yang berarti bahwa tugas Anda tidak akan pernah terlewat atau terulang bahkan jika terjadi kegagalan.
B站基于AIFlow+Flink在批流融合调度上的实践
Kami dengan senang hati menyambut kontribusi ke AIFlow dengan cara apa pun, baik melaporkan masalah, menyusun fitur, atau berkontribusi pada perubahan kode. Anda dapat melaporkan masalah untuk meminta fitur di Masalah GitHub. Jika Anda ingin menyumbangkan perubahan kode, silakan lihat dokumentasi kontribusi.
Untuk informasi lebih lanjut, kami menyarankan Anda untuk bergabung dengan Grup Komunitas AIFlow di Google Grup untuk menghubungi kami: [email protected] .
Anda juga dapat bergabung dengan grup di DingTalk. Nomor grup DingTalk adalah 35876083
, yang grupnya juga dapat diikuti dengan memindai kode QR di bawah ini: