Apache NiFi - Pendahuluan
Apache NiFi adalah sistem yang kuat, mudah digunakan, dan andal untuk memproses dan mendistribusikan data di antara sistem yang berbeda. Ini didasarkan pada teknologi Niagara Files yang dikembangkan oleh NSA dan kemudian setelah 8 tahun disumbangkan ke yayasan Apache Software. Ini didistribusikan di bawah Lisensi Apache Versi 2.0, Januari 2004. Versi terbaru untuk Apache NiFi adalah 1.7.1.
Apache NiFi adalah platform penyerapan data waktu nyata, yang dapat mentransfer dan mengelola transfer data antara berbagai sumber dan sistem tujuan. Mendukung berbagai macam format data seperti log, data lokasi geografis, umpan sosial, dll. Juga mendukung banyak protokol seperti SFTP, HDFS, dan KAFKA, dll. Dukungan ini untuk berbagai macam sumber data dan protokol membuat platform ini populer di banyak organisasi TI.
Apache NiFi- Fitur Umum
Fitur umum Apache NiFi adalah sebagai berikut -
Apache NiFi menyediakan antarmuka pengguna berbasis web, yang memberikan pengalaman mulus antara desain, kontrol, umpan balik, dan pemantauan.
Ini sangat dapat dikonfigurasi. Ini membantu pengguna dengan jaminan pengiriman, latensi rendah, throughput tinggi, prioritas dinamis, tekanan balik, dan modifikasi aliran pada waktu proses.
Ini juga menyediakan modul asal data untuk melacak dan memantau data dari awal hingga akhir aliran.
Pengembang dapat membuat prosesor kustom mereka sendiri dan tugas pelaporan sesuai dengan kebutuhan mereka.
NiFi juga menyediakan dukungan untuk protokol aman seperti SSL, HTTPS, SSH, dan enkripsi lainnya.
Ini juga mendukung pengguna dan manajemen peran dan juga dapat dikonfigurasi dengan LDAP untuk otorisasi.
Konsep Apache NiFi -Key
Konsep utama Apache NiFi adalah sebagai berikut -
Process Group - Ini adalah sekelompok aliran NiFi, yang membantu pengguna untuk mengelola dan menjaga aliran secara hierarkis.
Flow - Itu dibuat menghubungkan prosesor yang berbeda untuk mentransfer dan memodifikasi data jika diperlukan dari satu sumber data atau sumber ke sumber data tujuan lain.
Processor- Prosesor adalah modul java yang bertanggung jawab untuk mengambil data dari sistem sumber atau menyimpannya di sistem tujuan. Prosesor lain juga digunakan untuk menambahkan atribut atau mengubah konten di file alur.
Flowfile- Ini adalah penggunaan dasar NiFi, yang mewakili objek tunggal dari data yang diambil dari sistem sumber di NiFi. NiFiprocessormembuat perubahan ke flowfile saat berpindah dari prosesor sumber ke tujuan. Peristiwa berbeda seperti CREATE, CLONE, RECEIVE, dll. Dilakukan pada flowfile oleh prosesor yang berbeda dalam sebuah aliran.
Event- Peristiwa mewakili perubahan flowfile saat melintasi Aliran NiFi. Peristiwa ini dilacak dalam asal data.
Data provenance - Ini adalah repositori, juga memiliki UI, yang memungkinkan pengguna untuk memeriksa informasi tentang file aliran dan membantu dalam pemecahan masalah jika ada masalah yang muncul selama pemrosesan file aliran.
Keunggulan Apache NiFi
Apache NiFi memungkinkan pengambilan data dari mesin jarak jauh dengan menggunakan SFTP dan menjamin garis keturunan data.
Apache NiFi mendukung clustering, sehingga dapat bekerja pada beberapa node dengan aliran yang sama memproses data yang berbeda, yang meningkatkan kinerja pemrosesan data.
Ini juga menyediakan kebijakan keamanan pada tingkat pengguna, tingkat grup proses dan modul lainnya juga.
UI-nya juga dapat berjalan di HTTPS, yang membuat interaksi pengguna dengan NiFi aman.
NiFi mendukung sekitar 188 prosesor dan pengguna juga dapat membuat plugin khusus untuk mendukung berbagai macam sistem data.
Kekurangan Apache NiFi
Ketika node terputus dari cluster NiFi saat pengguna membuat perubahan apa pun di dalamnya, flow.xml menjadi tidak valid. Node tidak dapat terhubung kembali ke cluster kecuali admin secara manual menyalin flow.xml dari node yang terhubung.
Apache NiFi memiliki masalah persistensi status jika terjadi sakelar node utama, yang terkadang membuat prosesor tidak dapat mengambil data dari sistem sumber.