Apache NiFi - บทนำ
Apache NiFi เป็นระบบที่มีประสิทธิภาพใช้งานง่ายและเชื่อถือได้ในการประมวลผลและแจกจ่ายข้อมูลระหว่างระบบที่แตกต่างกัน โดยใช้เทคโนโลยี Niagara Files ที่พัฒนาโดย NSA และหลังจากนั้น 8 ปีก็บริจาคให้กับมูลนิธิ Apache Software เผยแพร่ภายใต้ Apache License เวอร์ชัน 2.0, มกราคม 2004 เวอร์ชันล่าสุดสำหรับ Apache NiFi คือ 1.7.1
Apache NiFi เป็นแพลตฟอร์มการนำเข้าข้อมูลแบบเรียลไทม์ซึ่งสามารถถ่ายโอนและจัดการการถ่ายโอนข้อมูลระหว่างแหล่งที่มาและระบบปลายทางต่างๆ รองรับรูปแบบข้อมูลที่หลากหลายเช่นบันทึกข้อมูลตำแหน่งทางภูมิศาสตร์ฟีดโซเชียล ฯลฯ นอกจากนี้ยังรองรับโปรโตคอลมากมายเช่น SFTP, HDFS และ KAFKA เป็นต้นซึ่งรองรับแหล่งข้อมูลและโปรโตคอลที่หลากหลายทำให้แพลตฟอร์มนี้เป็นที่นิยมใน องค์กรไอทีหลายแห่ง
Apache NiFi- คุณสมบัติทั่วไป
คุณสมบัติทั่วไปของ Apache NiFi มีดังต่อไปนี้ -
Apache NiFi มีอินเทอร์เฟซผู้ใช้บนเว็บซึ่งมอบประสบการณ์ที่ราบรื่นระหว่างการออกแบบการควบคุมข้อเสนอแนะและการตรวจสอบ
สามารถกำหนดค่าได้สูง สิ่งนี้ช่วยให้ผู้ใช้รับประกันการส่งมอบเวลาแฝงต่ำปริมาณงานสูงการจัดลำดับความสำคัญแบบไดนามิกแรงดันย้อนกลับและแก้ไขกระแสบนรันไทม์
นอกจากนี้ยังมีโมดูลที่มาของข้อมูลเพื่อติดตามและตรวจสอบข้อมูลตั้งแต่จุดเริ่มต้นจนถึงจุดสิ้นสุดของโฟลว์
นักพัฒนาสามารถสร้างโปรเซสเซอร์ที่กำหนดเองและรายงานงานตามความต้องการของตนเอง
NiFi ยังรองรับโปรโตคอลที่ปลอดภัยเช่น SSL, HTTPS, SSH และการเข้ารหัสอื่น ๆ
นอกจากนี้ยังรองรับการจัดการผู้ใช้และบทบาทและยังสามารถกำหนดค่าด้วย LDAP สำหรับการอนุญาต
Apache NiFi - แนวคิดที่สำคัญ
แนวคิดหลักของ Apache NiFi มีดังนี้ -
Process Group - เป็นกลุ่มของการไหลของ NiFi ซึ่งช่วยให้ผู้ใช้สามารถจัดการและรักษาโฟลว์ตามลำดับชั้น
Flow - สร้างขึ้นโดยเชื่อมต่อโปรเซสเซอร์ที่แตกต่างกันเพื่อถ่ายโอนและแก้ไขข้อมูลหากต้องการจากแหล่งข้อมูลหรือแหล่งข้อมูลหนึ่งไปยังแหล่งข้อมูลปลายทางอื่น
Processor- โปรเซสเซอร์เป็นโมดูลจาวาที่รับผิดชอบในการดึงข้อมูลจากระบบจัดหาหรือจัดเก็บในระบบปลายทาง นอกจากนี้โปรเซสเซอร์อื่นยังใช้เพื่อเพิ่มแอตทริบิวต์หรือเปลี่ยนแปลงเนื้อหาในโฟลว์ไฟล์
Flowfile- เป็นการใช้งานพื้นฐานของ NiFi ซึ่งแสดงถึงออบเจ็กต์เดียวของข้อมูลที่เลือกจากระบบต้นทางใน NiFi NiFiprocessormakes จะเปลี่ยนเป็น flowfile ในขณะที่ย้ายจากตัวประมวลผลต้นทางไปยังปลายทาง เหตุการณ์ที่แตกต่างกันเช่น CREATE, CLONE, RECEIVE ฯลฯ จะดำเนินการบนโฟลว์ไฟล์โดยโปรเซสเซอร์ที่แตกต่างกันในโฟลว์
Event- เหตุการณ์แสดงถึงการเปลี่ยนแปลงในโฟลว์ไฟล์ในขณะที่ข้ามผ่าน NiFi Flow เหตุการณ์เหล่านี้ถูกติดตามในที่มาของข้อมูล
Data provenance - เป็นที่เก็บข้อมูลนอกจากนี้ยังมี UI ซึ่งช่วยให้ผู้ใช้สามารถตรวจสอบข้อมูลเกี่ยวกับโฟลว์ไฟล์และช่วยในการแก้ไขปัญหาหากเกิดปัญหาใด ๆ ระหว่างการประมวลผลไฟล์โฟลว์
ข้อดีของ Apache NiFi
Apache NiFi เปิดใช้งานการดึงข้อมูลจากเครื่องระยะไกลโดยใช้ SFTP และรับประกันสายเลือดข้อมูล
Apache NiFi รองรับการทำคลัสเตอร์ดังนั้นจึงสามารถทำงานบนหลายโหนดที่มีการประมวลผลโฟลว์เดียวกันกับข้อมูลที่แตกต่างกันซึ่งจะเพิ่มประสิทธิภาพการประมวลผลข้อมูล
นอกจากนี้ยังมีนโยบายความปลอดภัยในระดับผู้ใช้ระดับกลุ่มกระบวนการและโมดูลอื่น ๆ ด้วย
UI ของมันยังสามารถทำงานบน HTTPS ซึ่งทำให้การโต้ตอบของผู้ใช้กับ NiFi ปลอดภัย
NiFi รองรับโปรเซสเซอร์ประมาณ 188 ตัวและผู้ใช้ยังสามารถสร้างปลั๊กอินที่กำหนดเองเพื่อรองรับระบบข้อมูลที่หลากหลาย
ข้อเสียของ Apache NiFi
เมื่อโหนดถูกตัดการเชื่อมต่อจากคลัสเตอร์ NiFi ในขณะที่ผู้ใช้ทำการเปลี่ยนแปลงใด ๆ ในนั้น flow.xml จะไม่ถูกต้องโหนดไม่สามารถเชื่อมต่อกลับไปยังคลัสเตอร์เว้นแต่ผู้ดูแลระบบจะคัดลอก flow.xml ด้วยตนเองจากโหนดที่เชื่อมต่อ
Apache NiFi มีปัญหาการคงอยู่ของสถานะในกรณีของสวิตช์โหนดหลักซึ่งบางครั้งทำให้โปรเซสเซอร์ไม่สามารถดึงข้อมูลจากระบบจัดหาได้