บทช่วยสอน Apache NiFi: NiFi คืออะไร Archiเทคเจอร์และการติดตั้ง
สรุปบทช่วยสอน Apache NiFi
บทช่วยสอนเกี่ยวกับ Apache NiFi นี้ครอบคลุมหัวข้อพื้นฐานไปจนถึงขั้นสูงทั้งหมดตั้งแต่เริ่มต้น คุณจะได้เรียนรู้แนวคิดต่างๆ เช่น คำจำกัดความของ NiFi ประวัติ สถาปัตยกรรม คุณสมบัติ กระบวนการติดตั้ง กรณีการใช้งาน นอกจากนี้ คุณจะได้เรียนรู้ว่าเหตุใดคุณจึงจำเป็นต้องใช้ Apache NiFi และแนวทางปฏิบัติที่ดีที่สุดในการเรียกใช้ Apache NiFi
Apache NiFi คืออะไร?
อาปาเช่ นิไฟ เป็นซอฟต์แวร์โอเพ่นซอร์สสำหรับการจัดการกระแสข้อมูลระหว่างระบบโดยอัตโนมัติ เป็นระบบที่มีประสิทธิภาพและเชื่อถือได้ในการประมวลผลและกระจายข้อมูล โดยมีส่วนต่อประสานกับผู้ใช้บนเว็บเพื่อสร้าง ตรวจสอบ และควบคุมการไหลของข้อมูล มีกระบวนการกระแสข้อมูลที่สามารถกำหนดค่าและแก้ไขได้สูงเพื่อแก้ไขข้อมูล ณ รันไทม์
Apache NiFi สามารถขยายได้อย่างง่ายดายผ่านการพัฒนาส่วนประกอบแบบกำหนดเอง
เหตุใดจึงต้องใช้ Apache NIfi
นี่คือเหตุผลในการใช้ Apache Nifi:
- ช่วยให้คุณสามารถนำเข้าข้อมูลเพื่อดึงข้อมูลเข้าสู่ NiFi จากแหล่งข้อมูลจำนวนมาก และสร้างไฟล์โฟลว์
- มีการควบคุมแบบเรียลไทม์ซึ่งช่วยให้คุณจัดการการเคลื่อนไหวของข้อมูลระหว่างต้นทางและปลายทาง
- แสดงภาพ DataFlow ในระดับองค์กร
- จัดเตรียมเครื่องมือและส่วนขยายทั่วไป
- ช่วยให้คุณใช้ประโยชน์จากไลบรารี่ที่มีอยู่และ Java การทำงานของระบบนิเวศ
- ช่วยให้องค์กรต่างๆ บูรณาการ Nifi เข้ากับโครงสร้างพื้นฐานที่มีอยู่
- NiFi ได้รับการออกแบบให้ขยายขนาดเป็นคลัสเตอร์ซึ่งรับประกันการส่งมอบข้อมูล
- แสดงภาพและตรวจสอบประสิทธิภาพ พฤติกรรมในกระดานข่าวโฟลว์ที่ให้ข้อมูลเชิงลึกและเอกสารประกอบแบบอินไลน์
- ช่วยให้คุณเริ่มและหยุดส่วนประกอบแยกกันหรือในระดับกลุ่ม
- ช่วยให้คุณฟัง ดึงข้อมูล แยก รวม กำหนดเส้นทาง แปลง และลากและวาง Dataflow
ประวัติความเป็นมาของ Apache NiFi
- พัฒนาขึ้นที่ NSA มานานกว่าแปดปี
- พ.ศ. 2014- บริจาคให้กับซอฟต์แวร์ Apache Foundation
- 2015- NiFi กลายเป็นส่วนหนึ่งอย่างเป็นทางการของ Apache Project Suite
- ตั้งแต่นั้นมาทุกๆ 6-8 สัปดาห์ Apache NiFi จะเผยแพร่การอัปเดตใหม่
NiFi Archiเทคเจอร์
Apache NiFi มีสถาปัตยกรรมที่คิดมาอย่างดี เมื่อดึงข้อมูลจากแหล่งภายนอก ข้อมูลนั้นจะแสดงเป็น FlowFile ภายในสถาปัตยกรรม Apache NiFi
นี่คือส่วนประกอบหลักของสถาปัตยกรรม NiFi
ส่วนประกอบ Nifi | Descriptไอออน |
---|---|
FlowFile | FlowFile เป็นข้อมูลต้นฉบับที่มีข้อมูลเมตาแนบมาด้วย ช่วยให้คุณสามารถประมวลผลได้ไม่เพียงแต่ CSV หรือข้อมูลตามบันทึกอื่นๆ เท่านั้น แต่ยังรวมถึงรูปภาพ วิดีโอ เสียง หรือข้อมูลไบนารีอื่นๆ ด้วย |
ตัวประมวลผลโฟลว์ไฟล์ | ดำเนินงานซึ่งทำหน้าที่เป็นส่วนสำคัญของการไหลของข้อมูลใน NiFi |
ตัวควบคุมการไหล | เก็บบันทึกว่ากระบวนการต่างๆ เชื่อมโยงกันอย่างไร จัดการเธรดและการจัดสรรซึ่งกระบวนการทั้งหมดใช้ |
เว็บเซิร์ฟเวอร์ | เว็บเซิร์ฟเวอร์โฮสต์คำสั่งและ API ที่ใช้ HTTP ของ NiFi |
นามสกุล | มีส่วนขยาย NiFi หลายประเภทที่สามารถใช้งานและดำเนินการภายใน JVM |
การเชื่อมต่อ | ทำหน้าที่เป็นตัวเชื่อมโยงระหว่างโปรเซสเซอร์ที่มีคิวและความสัมพันธ์ซึ่งส่งผลต่อตำแหน่งข้อมูลที่กำหนดเส้นทาง |
แรงดันกลับ | หยุดระบบที่ล้นหลามโดยการควบคุมปริมาณหรือขนาดข้อมูลของไฟล์โฟลว์ที่สามารถจัดเก็บไว้ในคิวได้ |
กลุ่มกระบวนการ | กลุ่มกระบวนการคือชุดของกระบวนการและการเชื่อมต่อ ซึ่งรับและส่งข้อมูลด้วยความช่วยเหลือของพอร์ต |
พื้นที่เก็บข้อมูล Flowfile | ใน FlowFile Repository นั้น NiFi จะติดตามสถานะของรายละเอียดที่มีเกี่ยวกับ FlowFile ที่ทำงานอยู่ในโฟลว์ |
ที่เก็บเนื้อหา | พื้นที่เก็บข้อมูลเป็นพื้นที่ที่มีไบต์เนื้อหาจริงของ FlowFile ที่ระบุอยู่ |
แหล่งเก็บข้อมูลแหล่งกำเนิด | Provenance Repository เป็นพื้นที่ที่รวบรวมข้อมูลเหตุการณ์ที่มาทั้งหมด |
คุณสมบัติ Apache NiFi
- NiFi รองรับการบัฟเฟอร์ข้อมูลในคิวทั้งหมด และมีความสามารถในการสร้างแรงดันย้อนกลับ เนื่องจากคิวเหล่านั้นอาจถึงขีดจำกัดที่ระบุ
- NiFi อนุญาตให้ตั้งค่ารูปแบบการจัดลำดับความสำคัญตั้งแต่หนึ่งรายการขึ้นไป
- จัดเตรียมตัวประมวลผลการเชื่อมต่อสำหรับแหล่งข้อมูลจำนวนมาก
- รองรับอุปกรณ์ใด ๆ ที่ทำงาน Java
- เหมาะสำหรับพื้นที่เชื่อมต่อที่มีจำกัด
- รองรับการแก้ไขปัญหาและการเพิ่มประสิทธิภาพโฟลว์
- เสนอการรับรองความถูกต้อง/การอนุญาตตามบทบาท
- อนุญาตให้ดาวน์โหลด กู้คืน และเล่นซ้ำไฟล์แต่ละไฟล์
- สร้างโปรเซสเซอร์ บริการคอนโทรลเลอร์ และอื่นๆ อีกมากมาย
- ให้การเข้ารหัสเนื้อหา การสื่อสารผ่านโปรโตคอลที่ปลอดภัย
- ช่วยให้การพัฒนารวดเร็วและการทดสอบที่มีประสิทธิภาพ
- ช่วยให้สามารถพัฒนาส่วนประกอบฟังก์ชันเดียวแบบเรียบง่ายที่สามารถนำกลับมาใช้ซ้ำและรวมกันเพื่อสร้างการไหลที่ซับซ้อนยิ่งขึ้น
- อนุญาตให้แยกคลาสโหลดเดอร์เพื่อการจัดการการขึ้นต่อกันที่ง่ายขึ้น
วิธีการติดตั้ง Apache NiFi.mq4
ด้านล่างนี้เป็นกระบวนการทีละขั้นตอนสำหรับการติดตั้ง Apache NiFi
ขั้นตอน 1) ไปที่ ลิงค์,
และคลิก “สมัครสมาชิกต่อ”
ขั้นตอน 2) ในหน้าถัดไป
คลิก “ยอมรับข้อกำหนด”
ขั้นตอน 3) คุณจะเห็นหน้านี้
ขอบคุณสำหรับการสมัครสมาชิกผลิตภัณฑ์นี้! เรากำลังดำเนินการตามคำขอของคุณ
ขั้นตอน 4) รีเฟรชหน้าหลังจากผ่านไป 5 นาที
คลิกที่ "ดำเนินการต่อเพื่อกำหนดค่า"
ขั้นตอน 5) ในหน้าถัดไป
คงการตั้งค่าเริ่มต้นไว้และคลิก "ดำเนินการต่อเพื่อเปิดใช้"
ขั้นตอน 6) ในหน้าถัดไป
คลิกที่เปิดตัว คุณอาจต้องสร้างรหัส
ขั้นตอน 7) คุณจะเห็นข้อความแห่งความสำเร็จนี้
ขอแสดงความยินดี! ซอฟต์แวร์ตัวอย่างนี้ได้รับการปรับใช้บน EC2 สำเร็จแล้ว!
ขั้นตอน 8) บันทึก,
รหัสอินสแตนซ์และ DNS สาธารณะของอินสแตนซ์ EC2
ขั้นตอน 9) ในกลุ่มรักษาความปลอดภัย
เพิ่มกฎจราจรทั้งหมดเข้าและออก
ขั้นตอน 10) ในการเข้าถึง Nifi
เพียงใช้ URL
http://publicdns:8080/nifi
ในกรณีของเรามันจะกลายเป็น
http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/
ผู้ใช้งาน: ผู้ดูแลระบบ
รหัสผ่าน: รหัสอินสแตนซ์
ขั้นตอน 11) แล้วคุณจะได้เห็น,
หน้าจอหลักของ NiFi
กรณีการใช้งาน Nifi
ด้านล่างนี้คือรายการกรณีการใช้งาน Apache NiFi:
Industry | การใช้ |
---|---|
ประกันภัย |
|
ดูแลสุขภาพ |
|
การสื่อสารโทรคมนาคม |
|
การผลิต |
|
น้ำมันและก๊าซ- อุตสาหกรรม |
|
บริการทางการเงิน |
|
แนวทางปฏิบัติที่ดีที่สุดในการใช้งาน Apache NiFi
- เหมาะอย่างยิ่งที่จะแยกสภาพแวดล้อมการทดสอบ/การพัฒนา/การผลิตใน NiFi
- คุณควรแบ่งโฟลว์ของคุณออกเป็นกลุ่มกระบวนการ
- ใช้แบบแผนการตั้งชื่อ ใช้ความคิดเห็นและป้ายกำกับ
- จัดระเบียบโครงการของคุณออกเป็นสามส่วน การนำเข้า การทดสอบ และการตรวจสอบ
- ใช้ชื่อเฉพาะสำหรับตัวแปร
ข้อเสียของนิฟี่
- ต้องการการควบคุมความปลอดภัยและการปฏิบัติตามข้อกำหนดที่แม่นยำ
- คุณจำเป็นต้องรู้ระบบพื้นฐานเป็นอย่างดีในขณะที่ทำงานกับ Apache NiFi
- ต้องรักษาห่วงโซ่การดูแลข้อมูล
- การขนส่ง/ข้อความอาจพิสูจน์ได้ไม่เพียงพอ
- ความต้องการในการเข้าถึงข้อมูลมีมากกว่าทรัพยากรที่มีอยู่ในการขนส่ง
- ข้อมูลทั้งหมดไม่ได้ถูกสร้างขึ้นอย่างเท่าเทียมกัน
- การอนุญาต SSL และระดับหัวข้ออาจไม่เพียงพอ
สรุป
- Apache NiFi เป็นซอฟต์แวร์โอเพ่นซอร์สสำหรับการทำงานอัตโนมัติและจัดการการไหลของข้อมูลระหว่างระบบ
- NiFi ได้รับการออกแบบให้ขยายขนาดเป็นคลัสเตอร์ซึ่งรับประกันการส่งมอบข้อมูล
- Nifi ได้รับการพัฒนาที่ NSA มานานกว่าแปดปี
- เมื่อดึงข้อมูลจากแหล่งภายนอก ข้อมูลนั้นจะแสดงเป็น FlowFile ภายในสถาปัตยกรรม Apache NiFi
- FlowFile โปรเซสเซอร์ ตัวควบคุม เว็บเซิร์ฟเวอร์ การเชื่อมต่อ แรงดันย้อนกลับ ที่เก็บข้อมูลเป็นส่วนประกอบสำคัญของสถาปัตยกรรม NiFi
- ภาษานิพจน์ NiFi รองรับอุปกรณ์ใด ๆ ที่ทำงาน Java
- คุณสามารถติดตั้ง NiFi บน AWS ได้อย่างง่ายดาย
- NiFi ถูกใช้ในอุตสาหกรรมที่หลากหลาย เช่น การดูแลสุขภาพ ประกันภัย โทรคมนาคม การผลิต การเงิน น้ำมันและก๊าซ และอื่นๆ
- ตามแนวทางปฏิบัติที่ดีที่สุด ให้จัดระเบียบโครงการของคุณออกเป็นสามส่วน การนำเข้า การทดสอบ และการตรวจสอบ