บทช่วยสอน Apache NiFi

⚡ สรุปอย่างชาญฉลาด

คู่มือการใช้งาน Apache NiFi อธิบายถึงแพลตฟอร์มการบูรณาการข้อมูลแบบโอเพนซอร์ส ซึ่งออกแบบมาเพื่อการไหลเวียนของข้อมูลระหว่างระบบอย่างอัตโนมัติและเชื่อถือได้ Lessเนื้อหาครอบคลุมถึงสถาปัตยกรรม โปรเซสเซอร์ ศัพท์เฉพาะ คุณสมบัติ การติดตั้ง กรณีการใช้งาน ข้อดี ข้อเสีย และแนวทางปฏิบัติที่ดีที่สุดสำหรับการใช้งานจริงในสภาพแวดล้อมการผลิต

  • 🔁 การออกแบบตามหลักการไหลเวียน: NiFi ใช้ผืนผ้าใบแบบภาพเพื่อสร้างกระแสข้อมูลจากโปรเซสเซอร์ที่กำหนดค่าได้ ซึ่งเชื่อมต่อกันด้วยคิวที่กำหนดเส้นทางไว้
  • 🏗️ กระจาย Archiเทคเจอร์: เว็บเซิร์ฟเวอร์ ตัวควบคุมการไหล และแหล่งเก็บข้อมูล ผสานรวมกันเพื่อการเคลื่อนย้ายข้อมูลที่ปรับขนาดได้และทนทานต่อความผิดพลาด
  • ⚙️ ไลบรารีโปรเซสเซอร์ที่ครบครัน: โปรเซสเซอร์หลายร้อยตัวทำหน้าที่ประมวลผล Kafka, MQTT, REST API, ฐานข้อมูล, ระบบไฟล์ และแหล่งข้อมูลบนคลาวด์
  • 🔒 ความปลอดภัยที่แข็งแกร่ง: TLS, การอนุญาตใช้งานแบบหลายผู้เช่า และที่เก็บข้อมูลแบบเข้ารหัส ช่วยเสริมสร้างการกำกับดูแลข้อมูลขององค์กร
  • 📊 การตรวจสอบที่มาของสินค้าตั้งแต่ต้นจนจบ: FlowFile ทุกไฟล์คือ tracส่งข้อมูลตั้งแต่ต้นทางจนถึงปลายทางเพื่อการตรวจสอบ การแก้ไขข้อผิดพลาด และการปฏิบัติตามข้อกำหนด
  • 🤖 ระบบ AI พร้อมแล้ว: ผสานรวม NiFi กับเอนด์พอยต์ LLM และฐานข้อมูลเวกเตอร์เพื่อสร้างเวิร์กโฟลว์การสร้างข้อมูลที่เสริมด้วยการค้นหา

บทช่วยสอน Apache NiFi

สรุปบทช่วยสอน 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 Archiเทคเจอร์
NiFi Archiเทคเจอร์

นี่คือส่วนประกอบหลักของสถาปัตยกรรม NiFi

ส่วนประกอบ Nifi Descriptไอออน
FlowFile FlowFile เป็นข้อมูลต้นฉบับที่มีข้อมูลเมตาแนบมาด้วย ช่วยให้คุณสามารถประมวลผลได้ไม่เพียงแต่ CSV หรือข้อมูลตามบันทึกอื่นๆ เท่านั้น แต่ยังรวมถึงรูปภาพ วิดีโอ เสียง หรือข้อมูลไบนารีอื่นๆ ด้วย
ตัวประมวลผลโฟลว์ไฟล์ ดำเนินงานซึ่งทำหน้าที่เป็นส่วนสำคัญของการไหลของข้อมูลใน NiFi
ตัวควบคุมการไหล เก็บบันทึกว่ากระบวนการต่างๆ เชื่อมโยงกันอย่างไร จัดการเธรดและการจัดสรรซึ่งกระบวนการทั้งหมดใช้
เว็บเซิร์ฟเวอร์ เว็บเซิร์ฟเวอร์โฮสต์คำสั่งและ API ที่ใช้ HTTP ของ NiFi
นามสกุล มีส่วนขยาย NiFi หลายประเภทที่สามารถใช้งานและดำเนินการภายใน JVM
การเชื่อมต่อ ทำหน้าที่เป็นตัวเชื่อมโยงระหว่างโปรเซสเซอร์ที่มีคิวและความสัมพันธ์ซึ่งส่งผลต่อตำแหน่งข้อมูลที่กำหนดเส้นทาง
แรงดันกลับ หยุดระบบที่ล้นหลามโดยการควบคุมปริมาณหรือขนาดข้อมูลของไฟล์โฟลว์ที่สามารถจัดเก็บไว้ในคิวได้
กลุ่มกระบวนการ กลุ่มกระบวนการคือชุดของกระบวนการและการเชื่อมต่อ ซึ่งรับและส่งข้อมูลด้วยความช่วยเหลือของพอร์ต
พื้นที่เก็บข้อมูล Flowfile ใน FlowFile Repository นั้น NiFi จะเก็บรักษาข้อมูลไว้ track คือค่าสถานะที่ระบุรายละเอียดเกี่ยวกับ FlowFile ที่ใช้งานอยู่ในโฟลว์นั้นๆ
ที่เก็บเนื้อหา พื้นที่เก็บข้อมูลเป็นพื้นที่ที่มีไบต์เนื้อหาจริงของ FlowFile ที่ระบุอยู่
แหล่งเก็บข้อมูลแหล่งกำเนิด Provenance Repository เป็นพื้นที่ที่รวบรวมข้อมูลเหตุการณ์ที่มาทั้งหมด

คุณสมบัติ Apache NiFi

  • NiFi รองรับการบัฟเฟอร์ข้อมูลในคิวทั้งหมด และมีความสามารถในการสร้างแรงดันย้อนกลับ เนื่องจากคิวเหล่านั้นอาจถึงขีดจำกัดที่ระบุ
  • NiFi อนุญาตให้ตั้งค่ารูปแบบการจัดลำดับความสำคัญตั้งแต่หนึ่งรายการขึ้นไป
  • จัดเตรียมตัวประมวลผลการเชื่อมต่อสำหรับแหล่งข้อมูลจำนวนมาก
  • รองรับอุปกรณ์ใด ๆ ที่ทำงาน Java
  • เหมาะสำหรับพื้นที่เชื่อมต่อที่มีจำกัด
  • รองรับการแก้ไขปัญหาและการเพิ่มประสิทธิภาพโฟลว์
  • เสนอการรับรองความถูกต้อง/การอนุญาตตามบทบาท
  • อนุญาตให้ดาวน์โหลด กู้คืน และเล่นซ้ำไฟล์แต่ละไฟล์
  • สร้างโปรเซสเซอร์ บริการคอนโทรลเลอร์ และอื่นๆ อีกมากมาย
  • ให้การเข้ารหัสเนื้อหา การสื่อสารผ่านโปรโตคอลที่ปลอดภัย
  • ช่วยให้การพัฒนารวดเร็วและการทดสอบที่มีประสิทธิภาพ
  • ช่วยให้สามารถพัฒนาส่วนประกอบฟังก์ชันเดียวแบบเรียบง่ายที่สามารถนำกลับมาใช้ซ้ำและรวมกันเพื่อสร้างการไหลที่ซับซ้อนยิ่งขึ้น
  • อนุญาตให้แยกคลาสโหลดเดอร์เพื่อการจัดการการขึ้นต่อกันที่ง่ายขึ้น

วิธีการติดตั้ง Apache NiFi.mq4

ด้านล่างนี้เป็นกระบวนการทีละขั้นตอนสำหรับการติดตั้ง Apache NiFi

ขั้นตอน 1) ไปที่ ลิงค์,

และคลิก “สมัครสมาชิกต่อ”

ติดตั้ง Apache NiFi

ขั้นตอน 2) ในหน้าถัดไป

คลิก “ยอมรับข้อกำหนด”

ติดตั้ง Apache NiFi

ขั้นตอน 3) คุณจะเห็นหน้านี้

ขอบคุณสำหรับการสมัครสมาชิกผลิตภัณฑ์นี้! เรากำลังดำเนินการตามคำขอของคุณ

ติดตั้ง Apache NiFi

ขั้นตอน 4) รีเฟรชหน้าหลังจากผ่านไป 5 นาที

คลิกที่ "ดำเนินการต่อเพื่อกำหนดค่า"

ติดตั้ง Apache NiFi

ขั้นตอน 5) ในหน้าถัดไป

คงการตั้งค่าเริ่มต้นไว้และคลิก "ดำเนินการต่อเพื่อเปิดใช้"

ติดตั้ง Apache NiFi

ขั้นตอน 6) ในหน้าถัดไป

คลิกที่เปิดตัว คุณอาจต้องสร้างรหัส

ติดตั้ง Apache NiFi

ขั้นตอน 7) คุณจะเห็นข้อความแห่งความสำเร็จนี้

ขอแสดงความยินดี! ซอฟต์แวร์ตัวอย่างนี้ได้รับการปรับใช้บน EC2 สำเร็จแล้ว!

ติดตั้ง Apache NiFi

ขั้นตอน 8) บันทึก,

รหัสอินสแตนซ์และ DNS สาธารณะของอินสแตนซ์ EC2

ติดตั้ง Apache NiFi

ขั้นตอน 9) ในกลุ่มรักษาความปลอดภัย

เพิ่มกฎจราจรทั้งหมดเข้าและออก

ติดตั้ง Apache NiFi

ขั้นตอน 10) ในการเข้าถึง Nifi

เพียงแค่ใช้ URL

http://publicdns:8080/nifi

ในกรณีของเรามันจะกลายเป็น

http://ec2-100-26-156-57.compute-1.amazonaws.com:8080/nifi/

ผู้ใช้งาน: ผู้ดูแลระบบ

รหัสผ่าน: รหัสอินสแตนซ์

ติดตั้ง Apache NiFi

ขั้นตอน 11) แล้วคุณจะได้เห็น,

หน้าจอหลักของ NiFi

ติดตั้ง Apache NiFi

กรณีการใช้งาน Nifi

ด้านล่างนี้คือรายการกรณีการใช้งาน Apache NiFi:

Industry การใช้
ประกันภัย
  • การวิเคราะห์ความเสี่ยงและการจัดจำหน่าย
  • การวิเคราะห์การเรียกร้อง
  • ประกันตามการใช้งาน
  • การพัฒนาผลิตภัณฑ์ใหม่
ดูแลสุขภาพ
  • มุมมองเดียวของผู้ป่วย
  • การตรวจสอบสัญญาณชีพแบบเรียลไทม์
  • การเพิ่มประสิทธิภาพ EMR
  • การเพิ่มประสิทธิภาพซัพพลายเชน
การสื่อสารโทรคมนาคม
  • มุมมองเดียวของลูกค้า
  • การวิเคราะห์ CDR
  • การจัดสรรแบนด์วิธแบบไดนามิก
การผลิต
  • บำรุงรักษาเชิงป้องกัน
  • การเพิ่มประสิทธิภาพซัพพลายเชน
  • การควบคุมคุณภาพ
น้ำมันและก๊าซ- อุตสาหกรรม
  • การตรวจสอบตามเวลาจริง
  • มุมมองเดียวของ Operaการ
  • การบำรุงรักษาเชิงคาดการณ์
  • Archiและการวิเคราะห์
  • การจำแนกประเภทข้อมูลที่ไม่มีโครงสร้าง
บริการทางการเงิน
  • ป้องกันการฟอกเงิน
  • การฉ้อโกง- การตรวจจับ
  • การจัดการความเสี่ยง-ข้อมูล

แนวทางปฏิบัติที่ดีที่สุดในการใช้งาน Apache NiFi

  • เหมาะอย่างยิ่งที่จะแยกสภาพแวดล้อมการทดสอบ/การพัฒนา/การผลิตใน NiFi
  • คุณควรแบ่งโฟลว์ของคุณออกเป็นกลุ่มกระบวนการ
  • ใช้แบบแผนการตั้งชื่อ ใช้ความคิดเห็นและป้ายกำกับ
  • จัดระเบียบโครงการของคุณออกเป็นสามส่วน การนำเข้า การทดสอบ และการตรวจสอบ
  • ใช้ชื่อเฉพาะสำหรับตัวแปร

ข้อเสียของนิฟี่

  • ต้องการการควบคุมความปลอดภัยและการปฏิบัติตามข้อกำหนดที่แม่นยำ
  • คุณจำเป็นต้องรู้ระบบพื้นฐานเป็นอย่างดีในขณะที่ทำงานกับ Apache NiFi
  • ต้องรักษาห่วงโซ่การดูแลข้อมูล
  • การขนส่ง/ข้อความอาจพิสูจน์ได้ไม่เพียงพอ
  • ความต้องการในการเข้าถึงข้อมูลมีมากกว่าทรัพยากรที่มีอยู่ในการขนส่ง
  • ข้อมูลทั้งหมดไม่ได้ถูกสร้างขึ้นอย่างเท่าเทียมกัน
  • การอนุญาต SSL และระดับหัวข้ออาจไม่เพียงพอ

คำถามที่พบบ่อย

NiFi นำเสนอโซลูชันการจัดการการไหลของข้อมูลแบบเห็นภาพและเขียนโค้ดน้อย พร้อมระบบกำหนดเส้นทางและการแปลงข้อมูลในตัว Kafka เป็นแกนหลักในการรับส่งข้อความ และ Airflow ทำหน้าที่จัดการงานแบบแบตช์ NiFi มักจะเคลื่อนย้ายข้อมูลระหว่าง Kafka และปลายทางปลายทางต่างๆ

ใช่แล้ว NiFi รับข้อมูลแบบสตรีมมิ่ง เรียกใช้เอนด์พอยต์ของโมเดล และส่งผลการคาดการณ์ไปยังที่จัดเก็บข้อมูล ด้วย Kafka, MiNiFi และฐานข้อมูลเวกเตอร์ จึงสามารถสร้างเวิร์กโฟลว์ AI แบบครบวงจรและเวิร์กโฟลว์การสร้างผลลัพธ์ที่เสริมด้วยการดึงข้อมูลได้

เครื่องมือ AI ช่วยแนะนำลำดับการประมวลผล สร้างตัวอย่างภาษาการแสดงออก และอธิบายรูปแบบการไหลของข้อมูล ช่วยเร่งการพัฒนาและช่วยให้ผู้เริ่มต้นเข้าใจการกำหนดค่า NiFi และตรรกะการกำหนดเส้นทางได้ง่ายขึ้น

FlowFile คือข้อมูลที่เคลื่อนที่ผ่าน NiFi โดยประกอบด้วยเนื้อหาและคุณลักษณะต่างๆ เช่น เมตาเดต้า ที่มาของข้อมูล และข้อมูลการกำหนดเส้นทาง ซึ่งตัวประมวลผลใช้ในการตัดสินใจภายในกระแสข้อมูล

NiFi รองรับ TLS, การอนุญาตแบบหลายผู้เช่า, LDAP, Kerberos, OIDC และที่เก็บข้อมูลที่เข้ารหัส นโยบายตามบทบาทจะจำกัดว่าใครสามารถดู แก้ไข หรือดำเนินการกับกระแสข้อมูลเฉพาะได้บ้าง

NiFi สามารถขยายขนาดได้ในแนวนอนด้วยคลัสเตอร์ ในแนวตั้งโดยการเพิ่มคอร์ และผ่านคิวควบคุมแรงดันย้อนกลับ เอเจนต์ MiNiFi ที่ส่วนปลายจะส่งข้อมูลเข้าสู่คลัสเตอร์ NiFi ส่วนกลาง

NiFi คือเซิร์ฟเวอร์เต็มรูปแบบที่มี UI บนเว็บที่ใช้งานง่ายสำหรับการออกแบบการไหลของข้อมูล ส่วน MiNiFi คือเอเจนต์ขนาดเล็กที่ทำงานอยู่ที่ขอบเครือข่ายและส่งต่อข้อมูลไปยัง NiFi

ผู้เริ่มต้นสามารถสร้างโฟลว์แรกได้ภายในไม่กี่วัน แต่การเชี่ยวชาญด้านคลัสเตอร์ ความปลอดภัย โปรเซสเซอร์แบบกำหนดเอง และการปรับแต่งเพื่อเพิ่มประสิทธิภาพการประมวลผลนั้น ต้องใช้เวลาสองถึงสี่เดือนในการทำงานจริง

สรุปโพสต์นี้ด้วย: