كيف يعمل Apache Nifi - تصفح تدفق البيانات ، ولا تغرق فيه

المقدمة

هذا تدفق مجنون للمياه. تمامًا مثلما يتعامل تطبيقك مع تدفق مجنون من البيانات. من الصعب الحصول على توجيه البيانات من وحدة تخزين إلى أخرى ، وتطبيق قواعد التحقق من الصحة ومعالجة أسئلة إدارة البيانات ، والموثوقية في النظام البيئي للبيانات الضخمة ، إذا كنت تفعل ذلك بنفسك.

أخبار سارة ، لست مضطرًا إلى إنشاء حل تدفق البيانات الخاص بك من البداية - فقد ساعدك Apache NiFi!

في نهاية هذه المقالة ، ستكون خبيرًا في NiFi - جاهزًا لبناء خط أنابيب بياناتك.

ما سأقوم بتغطيته في هذا المقال:

  • ما هو Apache NiFi ، وفي أي موقف يجب عليك استخدامه ، وما هي المفاهيم الأساسية التي يجب فهمها في NiFi.

ما لن أقوم بتغطيته:

  • تثبيت مجموعة NiFi ونشرها ومراقبتها وأمانها وإدارتها.

من أجل راحتك ، يوجد هنا جدول المحتوى ، فلا تتردد في الذهاب مباشرة إلى حيث يأخذك فضولك. إذا كنت تستخدم NiFi لأول مرة ، فيُنصح بتصفح هذه المقالة بالترتيب المشار إليه.

قائمة المحتويات

  • I - ما هو Apache NiFi؟

    - تعريف NiFi

    - لماذا استخدام NiFi؟

  • الثاني - اباتشي نيفي تحت المجهر

    - ملف التدفق

    - المعالج

    - مجموعة العمليات

    - الإتصال

    - تحكم التدفق

  • الخلاصة والدعوة إلى العمل

ما هو اباتشي نيفي؟

على موقع مشروع Apache Nifi يمكنك العثور على التعريف التالي:

نظام سهل الاستخدام وقوي وموثوق لمعالجة البيانات وتوزيعها.

دعونا نحلل الكلمات الرئيسية هناك.

تعريف NiFi

معالجة وتوزيع البيانات

هذا هو جوهر نيفي. ينقل البيانات حول الأنظمة ويمنحك أدوات لمعالجة هذه البيانات.

يمكن لـ Nifi التعامل مع مجموعة كبيرة ومتنوعة من مصادر البيانات وتنسيقها. تأخذ البيانات من مصدر واحد وتحولها وتدفعها إلى مصدر بيانات مختلف.

سهل الاستخدام

المعالجات - المربعات - المرتبطة بالموصلات - تخلق الأسهم التدفق . تقدم N iFi تجربة برمجة قائمة على التدفق.

يتيح Nifi إمكانية فهم مجموعة من عمليات تدفق البيانات التي قد تستغرق مئات الأسطر من التعليمات البرمجية المصدر لتنفيذها في لمحة.

ضع في اعتبارك خط الأنابيب أدناه:

لترجمة تدفق البيانات أعلاه في NiFi ، انتقل إلى واجهة مستخدم NiFi الرسومية ، واسحب ثلاثة مكونات وأفلتها في اللوحة القماشية ، و

هذا هو. يستغرق البناء دقيقتين.

الآن ، إذا كتبت رمزًا لفعل الشيء نفسه ، فمن المحتمل أن يكون طوله عدة مئات من الأسطر لتحقيق نتيجة مماثلة.

لا يمكنك التقاط جوهر خط الأنابيب من خلال التعليمات البرمجية كما تفعل مع النهج القائم على التدفق. Nifi أكثر تعبيرا لبناء خط أنابيب البيانات ؛ إنه مصمم للقيام بذلك .

قوي

توفر NiFi العديد من المعالجاتخارج الصندوق (293 في Nifi 1.9.2). أنت على أكتاف عملاق. تتعامل هذه المعالجات القياسية مع الغالبية العظمى من حالات الاستخدام التي قد تواجهها.

NiFi متزامن للغاية ، ومع ذلك فإن مكوناته الداخلية تغلف التعقيد المرتبط. تقدم لك المعالجات تجريدًا عالي المستوى يخفي التعقيد المتأصل في البرمجة المتوازية. تعمل المعالجات في وقت واحد ، ويمكنك تمديد خيوط متعددة للمعالج للتعامل مع الحمل.

التزامن هو صندوق خاص بحوسبة Pandora لا تريد فتحه. تقوم NiFi بحماية منشئ خطوط الأنابيب بشكل ملائم من تعقيدات التزامن.

موثوق

النظرية التي تدعم NiFi ليست جديدة ؛ لديها أسس نظرية صلبة. إنه مشابه لنماذج مثل SEDA.

بالنسبة لنظام تدفق البيانات ، فإن أحد الموضوعات الرئيسية التي يجب معالجتها هو الموثوقية. تريد التأكد من أن البيانات المرسلة في مكان ما يتم تلقيها بشكل فعال.

تحقق NiFi مستوى عاليًا من الموثوقية من خلال آليات متعددة تتعقب حالة النظام في أي وقت. هذه الآليات قابلة للتكوين حتى تتمكن من إجراء المفاضلات المناسبة بين زمن الوصول والإنتاجية التي تتطلبها تطبيقاتك.

تتعقب NiFi تاريخ كل قطعة من البيانات بميزات النسب والأصل. يجعل من الممكن معرفة التحول الذي يحدث في كل معلومة.

حل نسب البيانات الذي اقترحه Apache Nifi يثبت أنه أداة ممتازة لتدقيق خط أنابيب البيانات. تعد ميزات نسب البيانات ضرورية لتعزيز الثقة في البيانات الضخمة وأنظمة الذكاء الاصطناعي في سياق تقترح فيه الجهات الفاعلة عبر الوطنية مثل الاتحاد الأوروبي إرشادات لدعم معالجة البيانات الدقيقة.

لماذا استخدام Nifi؟

أولاً ، أريد أن أوضح أنني لست هنا لتبشير NiFi. هدفي هو تزويدك بالعناصر الكافية حتى تتمكن من اتخاذ قرار مستنير بشأن أفضل طريقة لبناء خط أنابيب البيانات الخاص بك.

من المفيد أن تضع في اعتبارك العناصر الأربعة للبيانات الضخمة عند تحديد أبعاد الحل الخاص بك.

  • الحجم - على أي مقياس تعمل؟ بالترتيب من حيث الحجم ، هل أنت أقرب إلى عدد قليل من الجيجا بايت أو مئات بيتا بايت؟
  • التنوع - كم عدد مصادر البيانات لديك؟ هل بياناتك منظمة؟ إذا كانت الإجابة بنعم ، فهل يختلف المخطط كثيرًا؟
  • السرعة - ما هو تكرار الأحداث التي تقوم بمعالجتها؟ هل هي مدفوعات بطاقات الائتمان؟ هل هو تقرير أداء يومي يرسله جهاز إنترنت الأشياء؟
  • الصدق - هل يمكنك الوثوق بالبيانات؟ بدلاً من ذلك ، هل تحتاج إلى إجراء عمليات تنظيف متعددة قبل التلاعب بها؟

تستوعب NiFi البيانات بسلاسة من مصادر بيانات متعددة وتوفر آليات للتعامل مع مخطط مختلف في البيانات. وبالتالي ، فإنه يتألق عندما يكون هناك تنوع كبير في البيانات.

تعتبر Nifi ذات قيمة خاصة إذا كانت البيانات منخفضة الدقة . لأنه يوفر معالجات متعددة لتنظيف وتنسيق البيانات.

مع خيارات التكوين الخاصة بها ، يمكن لـ Nifi معالجة مجموعة واسعة من مواقف الحجم / السرعة.

قائمة متزايدة من تطبيقات حلول توجيه البيانات

تؤكد اللوائح الجديدة وظهور إنترنت الأشياء وتدفق البيانات التي تولدها على أهمية أدوات مثل Apache NiFi.

  • الخدمات المصغرة عصرية. في تلك الخدمات غير المترابطة ، تكون البيانات هي العقد بين الخدمات. Nifi هي طريقة قوية لتوجيه البيانات بين تلك الخدمات.
  • انترنت الأشياءيجلب العديد من البيانات إلى السحابة. يفرض استيعاب البيانات والتحقق منها من الحافة إلى السحابة الكثير من التحديات الجديدة التي يمكن لـ NiFi معالجتها بكفاءة (بشكل أساسي من خلال مشروع MiniFi و NiFi للأجهزة المتطورة)
  • تم وضع إرشادات ولوائح جديدة لإعادة تعديل اقتصاد البيانات الضخمة. في هذا السياق من زيادة المراقبة ، من الضروري أن يكون لدى الشركات نظرة عامة واضحة على خط أنابيب البيانات الخاصة بهم. يمكن أن تكون نسب بيانات NiFi ، على سبيل المثال ، مفيدة في الطريق نحو الامتثال للوائح.

سد الفجوة بين خبراء البيانات الضخمة والآخرين

كما ترى من خلال واجهة المستخدم ، فإن تدفق البيانات المعبر عنه في NiFi ممتاز للتواصل بشأن خط أنابيب البيانات الخاص بك. يمكن أن يساعد أعضاء مؤسستك على أن يصبحوا أكثر دراية بما يجري في خط أنابيب البيانات.

  • يسأل محلل عن رؤى حول سبب وصول هذه البيانات إلى هنا بهذه الطريقة؟ اجلسوا معًا وامشوا عبر التيار. في غضون خمس دقائق ، يمكنك إعطاء شخص ما فهمًا قويًا لخط أنابيب تحويل الاستخراج والتحميل -ETL- .
  • هل تريد الحصول على تعليقات من زملائك بشأن تدفق معالجة الأخطاء الجديد الذي أنشأته؟ تجعل NiFi قرار تصميم النظر في مسارات الخطأ باعتبارها نتائج صحيحة. توقع أن تكون مراجعة التدفق أقصر من مراجعة الكود التقليدية.

هل يجب عليك استخدامه؟ نعم لا ربما؟

تعتبر NiFi أنها سهلة الاستخدام. ومع ذلك ، فهي عبارة عن منصة تدفق بيانات مؤسسية. يقدم مجموعة كاملة من الميزات التي قد تحتاج فقط إلى مجموعة فرعية مصغرة منها. إضافة أداة جديدة إلى المكدس ليست حميدة.

إذا كنت تبدأ من البداية وتدير بعض البيانات من مصادر بيانات موثوقة ، فقد يكون من الأفضل لك إعداد خط أنابيب Extract Transform and Load - ETL . ربما تكون كل ما تحتاجه هو التقاط بيانات التغيير من قاعدة بيانات وبعض البرامج النصية لإعداد البيانات.

من ناحية أخرى ، إذا كنت تعمل في بيئة تستخدم حلول البيانات الضخمة الحالية (سواء كان ذلك للتخزين أو المعالجة أو المراسلة) ، فإن NiFi تتكامل معها جيدًا ومن المرجح أن تحقق فوزًا سريعًا. يمكنك الاستفادة من الموصلات الجاهزة لحلول البيانات الضخمة الأخرى.

من السهل أن تتفوق الحلول الجديدة. ضع قائمة بالمتطلبات الخاصة بك واختر الحل الذي يلبي احتياجاتك بأكبر قدر ممكن من البساطة .

الآن وقد رأينا الصورة العالية جدًا لـ Apache NiFi ، نلقي نظرة على مفاهيمها الأساسية ونحلل مكوناتها الداخلية.

اباتشي نيفي تحت المجهر

قد يكون "NiFi هو الصناديق وبرمجة الأسهم" مناسبًا لإيصال الصورة الكبيرة. ومع ذلك ، إذا كان عليك العمل مع NiFi ، فقد ترغب في فهم المزيد حول كيفية عمله.

في هذا الجزء الثاني ، أشرح المفاهيم الأساسية لـ Apache NiFi باستخدام المخططات. لن يكون نموذج الصندوق الأسود هذا صندوقًا أسود لك بعد ذلك.

فتح علبة أباتشي نيفي

عند بدء تشغيل NiFi ، فإنك تهبط على واجهة الويب الخاصة به. واجهة مستخدم الويب هي المخطط الذي تقوم بتصميم خط أنابيب البيانات الخاص بك والتحكم فيه.

في Nifi ، تقوم بتجميع المعالجات المرتبطة ببعضها البعض عن طريق الاتصالات . في نموذج تدفق البيانات المقدم سابقًا ، هناك ثلاثة معالجات.

واجهة مستخدم NiFi canvas هي الإطار الذي يتطور فيه منشئ خطوط الأنابيب.

فهم مصطلحات Nifi

للتعبير عن تدفق البيانات في Nifi ، يجب عليك أولاً إتقان لغتها. لا تقلق ، بعض المصطلحات كافية لفهم المفهوم الكامن وراءه.

تسمى المربعات السوداء معالجات ، وهي تتبادل أجزاء من المعلومات تسمى FlowFiles من خلال قوائم الانتظار التي تسمى اتصالات . أخيرًا ، يكون FlowFile Controller مسؤولاً عن إدارة الموارد بين هذه المكونات.

دعونا نلقي نظرة على كيفية عمل هذا تحت الغطاء.

ملف التدفق

في NiFi ، ملف FlowFileهي حزمة المعلومات التي تتحرك عبر معالجات خط الأنابيب.

يتألف ملف التدفق من جزأين:

  • السمات ، وهي أزواج مفتاح / قيمة. على سبيل المثال ، اسم الملف ومسار الملف والمعرف الفريد هي سمات قياسية.
  • المحتوى ، إشارة إلى دفق البايت يؤلف محتوى FlowFile.

لا يحتوي FlowFile على البيانات نفسها. هذا من شأنه أن يحد بشدة من إنتاجية خط الأنابيب.

بدلاً من ذلك ، يحتوي FlowFile على مؤشر يشير إلى البيانات المخزنة في مكان ما في التخزين المحلي. هذا المكان يسمى مستودع المحتوى .

للوصول إلى المحتوى ، يطالب FlowFile بالمصدر من Content Repository. يحتفظ لاحقًا بمسارات إزاحة القرص الدقيق من مكان وجود المحتوى وتدفقه مرة أخرى إلى FlowFile.

لا تحتاج جميع المعالجات إلى الوصول إلى محتوى FlowFile لأداء عملياتها - على سبيل المثال ، لا يتطلب تجميع محتوى اثنين من ملفات FlowFiles تحميل محتواها في الذاكرة.

عندما يقوم المعالج بتعديل محتوى FlowFile ، يتم الاحتفاظ بالبيانات السابقة. يقوم NiFi بالنسخ عند الكتابة ، ويقوم بتعديل المحتوى أثناء نسخه إلى موقع جديد. تُترك المعلومات الأصلية سليمة في "مستودع المحتوى".

مثال

ضع في اعتبارك معالجًا يضغط محتوى ملف FlowFile. يظل المحتوى الأصلي في Content Repository ، ويتم إنشاء إدخال جديد للمحتوى المضغوط.

يقوم Content Repository في النهاية بإرجاع المرجع إلى المحتوى المضغوط. يتم تحديث FlowFile للإشارة إلى البيانات المضغوطة.

يلخص الرسم أدناه المثال باستخدام معالج يضغط محتوى FlowFiles.

الموثوقية

تدعي NiFi أنها موثوقة ، كيف يتم ذلك عمليًا؟يتم تخزين سمات جميع ملفات FlowFiles المستخدمة حاليًا ، بالإضافة إلى الإشارة إلى محتواها ، في مستودع FlowFile.

في كل خطوة من خط الأنابيب ، يتم تسجيل تعديل على Flowfile أولاً في FlowFile Repository ، في سجل الكتابة المسبقة ، قبل تنفيذه.

لكل ملف FlowFile موجود حاليًا في النظام ، يخزن مستودع FlowFile:

  • سمات FlowFile
  • مؤشر إلى محتوى FlowFile الموجود في مستودع FlowFile
  • حالة FlowFile. على سبيل المثال: أي قائمة انتظار ينتمي إليها ملف Flowfile في هذه اللحظة.

يمنحنا مستودع FlowFile أحدث حالة للتدفق ؛ وبالتالي فهي أداة قوية للتعافي من الانقطاع.

توفر NiFi أداة أخرى لتتبع التاريخ الكامل لجميع ملفات FlowFiles في التدفق: مستودع الأصل.

مستودع الأصل

في كل مرة يتم فيها تعديل ملف FlowFile ، يأخذ NiFi لقطة من FlowFile وسياقه في هذه المرحلة. اسم هذه اللقطة في NiFi هو حدث المصدر . يسجل مستودع الأصل أحداث المصدر.

يُمكّننا المصدر من استعادة نسب البيانات وبناء سلسلة كاملة للحراسة لكل جزء من المعلومات التي تتم معالجتها في NiFi.

علاوة على تقديم النسب الكامل للبيانات ، يعرض مخزن المصدر أيضًا إعادة تشغيل البيانات من أي وقت.

انتظر ، ما الفرق بين مستودع FlowFile ومستودع الأصل؟

تتشابه الفكرة وراء مستودع FlowFile ومستودع المصدر تمامًا ، لكنهما لا يعالجان نفس المشكلة.

  • مستودع FlowFile هو سجل يحتوي فقط على أحدث حالة من ملفات FlowFiles قيد الاستخدام في النظام. إنها أحدث صورة للتدفق وتجعل من الممكن التعافي من الانقطاع بسرعة.
  • من ناحية أخرى ، يعد مستودع المصدر أكثر شمولاً لأنه يتتبع دورة الحياة الكاملة لكل ملف FlowFile كان في التدفق.

إذا لم يكن لديك سوى أحدث صورة للنظام مع مستودع FlowFile ، فإن مستودع الأصل يمنحك مجموعة من الصور - فيديو . يمكنك الرجوع إلى أي لحظة في الماضي ، والتحقيق في البيانات ، وإعادة تشغيل العمليات من وقت معين. يوفر سلالة كاملة من البيانات.

معالج FlowFile

A معالج هو الصندوق الاسود الذي يقوم بإجراء العملية. يمكن للمعالجات الوصول إلى سمات ومحتوى FlowFile لتنفيذ جميع أنواع الإجراءات. إنها تمكنك من إجراء العديد من العمليات في إدخال البيانات ، ومهام تحويل / التحقق من البيانات القياسية ، وحفظ هذه البيانات في أحواض بيانات مختلفة

يأتي NiFi مع العديد من المعالجات عند تثبيته. إذا لم تجد المعالج المثالي لحالة الاستخدام الخاصة بك ، فلا يزال من الممكن بناء المعالج الخاص بك. كتابة المعالجات المخصصة خارج نطاق منشور المدونة هذا.

المعالجات عبارة عن عمليات تجريدية عالية المستوى تؤدي مهمة واحدة. هذا التجريد ملائم للغاية لأنه يحمي منشئ خطوط الأنابيب من الصعوبات الكامنة في البرمجة المتزامنة وتنفيذ آليات معالجة الأخطاء.

تعرض المعالجات واجهة ذات إعدادات تكوين متعددة لضبط سلوكها.

خصائص هذه المعالجات هي الرابط الأخير بين NiFi وواقع العمل لمتطلبات التطبيق الخاص بك.

يكمن الشيطان في التفاصيل ، ويقضي بناة خطوط الأنابيب معظم وقتهم في ضبط تلك الخصائص لتتناسب مع السلوك المتوقع.

تحجيم

لكل معالج ، يمكنك تحديد عدد المهام المتزامنة التي تريد تشغيلها في وقت واحد. مثل هذا ، يخصص Flow Controller المزيد من الموارد لهذا المعالج ، مما يزيد من إنتاجيته. تشترك المعالجات في الخيوط. إذا طلب أحد المعالجين المزيد من مؤشرات الترابط ، فإن المعالجات الأخرى لديها عدد أقل من مؤشرات الترابط المتاحة للتنفيذ. تتوفر هنا تفاصيل حول كيفية تخصيص وحدة التحكم في التدفق للخيوط.

التحجيم الأفقي. هناك طريقة أخرى للقياس وهي زيادة عدد العقد في مجموعة NiFi الخاصة بك. تتيح خوادم التجميع زيادة قدرة المعالجة باستخدام أجهزة سلعة.

مجموعة العمليات

هذا واحد واضح الآن بعد أن رأينا ما هي المعالجات.

يمكن أن تشكل مجموعة من المعالجات مجتمعة مع اتصالاتها مجموعة معالجة. يمكنك إضافة منفذ إدخال ومنفذ إخراج حتى يتمكن من تلقي البيانات وإرسالها.

تعتبر مجموعات المعالجات طريقة سهلة لإنشاء معالجات جديدة تعتمد على المعالجات الموجودة.

روابط

الاتصالات هي قوائم الانتظار بين المعالجات. تسمح قوائم الانتظار هذه للمعالجات بالتفاعل بمعدلات مختلفة. يمكن أن يكون للوصلات سعات مختلفة مثل وجود أحجام مختلفة من أنابيب المياه.

نظرًا لأن المعالجات تستهلك وتنتج البيانات بمعدلات مختلفة اعتمادًا على العمليات التي تقوم بها ، تعمل الاتصالات كمخازن مؤقتة لملفات FlowFiles.

يوجد حد لعدد البيانات التي يمكن أن تكون في الاتصال. وبالمثل ، عندما يكون أنبوب الماء ممتلئًا ، لا يمكنك إضافة الماء بعد الآن ، أو أنه يفيض.

في NiFi يمكنك وضع قيود على عدد ملفات FlowFiles وحجم محتواها المجمع الذي يمر عبر الاتصالات.

ماذا يحدث عندما ترسل بيانات أكثر مما يستطيع الاتصال معالجته؟

وإذا كان عدد FlowFiles أو كمية البيانات يذهب فوق عتبة محددة، احداهما يتم تطبيق. لن يقوم Flow Controller بجدولة المعالج السابق للتشغيل مرة أخرى حتى يكون هناك مساحة في قائمة الانتظار.

لنفترض أن لديك حد 10000 FlowFiles بين معالجين. في مرحلة ما ، يحتوي الاتصال على 7000 عنصر. لا بأس لأن الحد الأقصى هو 10000. لا يزال بإمكان P1 إرسال البيانات عبر الاتصال بـ P2 .

لنفترض الآن أن المعالج يرسل 4000 FlowFiles جديدة إلى الاتصال.

7 0000 + 4000 = 11000 ← نتجاوز عتبة الاتصال البالغة 10000 ملف تدفق.

الحدود هي حدود ناعمة ، مما يعني أنه يمكن تجاوزها. ومع ذلك ، بمجرد أن يتم ذلك ، لن تتم جدولة المعالج السابق ، P1 حتى يعود الموصل إلى ما دون قيمة عتبة - 10000 FlowFiles.

يعطي هذا المثال المبسط الصورة الكبيرة لكيفية عمل الضغط المرتد.

تريد إعداد حدود اتصال مناسبة لحجم البيانات وسرعتها للتعامل معها. ضع في اعتبارك أربعة مقابل .

قد تبدو فكرة تجاوز الحد فكرة غريبة. عندما يتجاوز عدد ملفات FlowFiles أو البيانات المرتبطة بها الحد ، يتم تشغيل آلية المبادلة.

للحصول على مثال آخر على الضغط الخلفي ، يمكن أن يساعد مؤشر ترابط البريد هذا.

ترتيب أولويات FlowFiles

الموصلات في NiFi قابلة للتكوين بدرجة عالية. يمكنك اختيار كيفية تحديد أولويات FlowFiles في قائمة الانتظار لتحديد أي واحد يجب معالجته بعد ذلك.

من بين الاحتمالات المتاحة ، هناك ، على سبيل المثال ، ترتيب First In First Out - FIFO. ومع ذلك ، يمكنك حتى استخدام سمة من اختيارك من FlowFile لتحديد أولويات الحزم الواردة.

تحكم التدفق

وحدة التحكم في التدفق هي الغراء الذي يجمع كل شيء معًا. يخصص ويدير مؤشرات الترابط للمعالجات. إنه ما ينفذ تدفق البيانات.

أيضًا ، تتيح وحدة التحكم في التدفق إمكانية إضافة خدمات التحكم.

تسهل هذه الخدمات إدارة الموارد المشتركة مثل اتصالات قاعدة البيانات أو بيانات اعتماد مزود الخدمات السحابية. خدمات التحكم هي شياطين. تعمل في الخلفية وتوفر التكوين والموارد والمعلمات للمعالجات لتنفيذها.

على سبيل المثال ، يمكنك استخدام خدمة موفر بيانات اعتماد AWS لتمكين خدماتك من التفاعل مع حاويات S3 دون الحاجة إلى القلق بشأن بيانات الاعتماد على مستوى المعالج.

تمامًا كما هو الحال مع المعالجات ، تتوفر العديد من خدمات التحكم خارج الصندوق.

يمكنك التحقق من هذه المقالة لمزيد من المحتوى على خدمات وحدة التحكم.

الخلاصة والدعوة إلى العمل

في سياق هذه المقالة ، ناقشنا NiFi ، حل تدفق بيانات المؤسسة. لديك الآن فهم قوي لما تفعله NiFi وكيف يمكنك الاستفادة من ميزات توجيه البيانات لتطبيقاتك.

إذا كنت تقرأ هذا ، فتهانينا! أنت تعرف الآن المزيد عن NiFi أكثر من 99.99٪ من سكان العالم.

مع التدريب يأتي الإتقان. أنت تتقن جميع المفاهيم المطلوبة لبدء بناء خط الأنابيب الخاص بك. اجعله بسيط؛ اجعلها تعمل أولاً.

فيما يلي قائمة بالموارد المثيرة التي قمت بتجميعها بالإضافة إلى خبرتي في العمل لكتابة هذا المقال.

مصادر ؟

الصورة الاكبر

نظرًا لأن تصميم خط أنابيب البيانات في نظام بيئي معقد يتطلب إتقانًا في مجالات متعددة ، أوصي بشدة بكتاب Designing Data-Intensive Applicationsمن مارتن كليبمان. يغطي الأساسيات.

  • ورقة الغش مع جميع المراجع المقتبسة في كتاب مارتن متاحة على Github repo.

تعد ورقة الغش هذه مكانًا رائعًا للبدء إذا كنت تعرف بالفعل نوع الموضوع الذي ترغب في دراسته بتعمق وتريد العثور على مواد عالية الجودة.

بدائل أباتشي نيفي

حلول تدفق البيانات الأخرى موجودة.

المصدر المفتوح:

  • مجموعات Streamsets مشابهة لـ NiFi. مقارنة جيدة متاحة في هذه المدونة

يقدم معظم موفري السحابة الحاليين حلول تدفق البيانات. تتكامل هذه الحلول بسهولة مع المنتجات الأخرى التي تستخدمها من موفر السحابة هذا. في الوقت نفسه ، يربطك بشدة ببائع معين.

  • مصنع Azure Data Factory ، أحد حلول Microsoft
  • تمتلك شركة IBM InfoSphere DataStage الخاصة بها
  • تقترح أمازون أداة تسمى Data Pipeline
  • تقدم Google Dataflow الخاص بها
  • تقدم Alibaba cloud خدمة DataWorks بميزات مماثلة

الموارد ذات الصلة NiFi

  • وثائق Nifi الرسمية وخاصة قسم Nifi المتعمق هي مناجم الذهب.
  • يعد التسجيل في القائمة البريدية لمستخدمي Nifi أيضًا طريقة رائعة للحصول على معلومات - على سبيل المثال ، توضح هذه المحادثة الضغط الخلفي.
  • تمتلك شركة Hortonworks ، وهي موفر لحلول البيانات الضخمة ، موقعًا مجتمعيًا على شبكة الإنترنت مليئًا بالموارد الجذابة وكيفية تنفيذها لـ Apache Nifi.

    - تتناول هذه المقالة بالتفصيل الموصلات واستخدام الكومة والضغط الخلفي.

    - هذا واحد يشارك أفضل الممارسات عند نشر مجموعة NiFi.

  • تقوم مدونة NiFi بتقطير الكثير من الأفكار حول أنماط استخدام NiFi بالإضافة إلى نصائح حول كيفية بناء خطوط الأنابيب.
  • وأوضح نمط التحقق من المطالبة
  • النظرية وراء Apache Nifi ليست جديدة ، فالنظرية المشار إليها في Nifi Doc لـ Seda وثيقة الصلة للغاية

    - مات ويلش. بيركلي. سيدا: هندسة خدمات الإنترنت جيدة التكييف والقابلة للتطوير [عبر الإنترنت]. تم الاسترجاع: 21 أبريل 2019 ، من //www.mdw.la/papers/seda-sosp01.pdf