API এর মাধ্যমে Process Group এবং Processors পরিচালনা

Java Technologies - অ্যাপাচি নিফাই (Apache NiFi) NiFi API এবং Automation |
119
119

অ্যাপাচি নিফাই (Apache NiFi) একটি শক্তিশালী এবং নমনীয় ডেটা ফ্লো প্ল্যাটফর্ম যা ডেটা সংগ্রহ, প্রক্রিয়াকরণ, এবং রুটিং সহজ করে তোলে। NiFi ব্যবহারকারীরা গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI) ব্যবহার করে ডেটা ফ্লো ডিজাইন করতে পারেন, তবে NiFi এর REST API ব্যবহার করে Process Group এবং Processors পরিচালনা করা আরও অটোমেটেড এবং স্কেলেবল পদ্ধতিতে সম্ভব। REST API ব্যবহার করে NiFi এর বিভিন্ন উপাদান যেমন Process Group এবং Processors কে তৈরি, কনফিগার, স্টার্ট, স্টপ বা রিস্টার্ট করা যায়, যা সিস্টেম প্রশাসকদের জন্য খুবই কার্যকরী।

REST API এর মাধ্যমে Process Group এবং Processors পরিচালনা

NiFi এর REST API একটি HTTP ভিত্তিক ইন্টারফেস সরবরাহ করে, যা আপনাকে বিভিন্ন কার্যকলাপ যেমন Processors তৈরি করা, কনফিগার করা এবং চালানো ইত্যাদি করতে সহায়ক। এখানে আলোচনা করা হবে কীভাবে NiFi এর Process Group এবং Processors API এর মাধ্যমে পরিচালনা করা যায়।

Process Group এবং Processor এর ধারণা

  1. Process Group: NiFi এ একটি Process Group হলো একাধিক Processors, Connections, এবং অন্যান্য উপাদানের একটি গ্রুপ। Process Group ব্যবহারকারীদের একটি বড় ডেটা ফ্লো সংগঠিতভাবে পরিচালনা করতে সাহায্য করে।
  2. Processor: একটি Processor NiFi এর একটি মৌলিক উপাদান, যা একটি নির্দিষ্ট ডেটা প্রসেসিং কাজ সম্পাদন করে। উদাহরণস্বরূপ, GetFile, PutFile, ExtractText, ইত্যাদি প্রসেসর ডেটা সংগ্রহ, ট্রান্সফরমেশন বা রুটিং করতে ব্যবহৃত হয়।

NiFi REST API ব্যবহার করে Process Group এবং Processor পরিচালনা

১. Process Group তৈরি এবং পরিচালনা

Process Group তৈরি বা পরিচালনা করতে NiFi REST API এর /process-groups এন্ডপয়েন্ট ব্যবহার করা হয়। এখানে Process Group তৈরি, দেখতে, এবং পরিবর্তন করার জন্য কিছু মৌলিক API রিকোয়েস্ট উদাহরণ দেয়া হলো:

Process Group তৈরি
curl -X POST "http://localhost:8080/nifi-api/process-groups/{parent-id}/process-groups" \
-H "Content-Type: application/json" \
-d '{
      "name": "New Process Group",
      "position": {"x": 100, "y": 200}
}'
  • এখানে {parent-id} হল প্যারেন্ট Process Group এর ID, যেখানে আপনি নতুন Process Group তৈরি করতে চান।
  • name প্রপার্টি নতুন Process Group এর নাম নির্দেশ করে।
  • position প্রপার্টি গ্রাফিক্যাল UI তে Process Group এর অবস্থান নির্ধারণ করে।
Process Group এর তথ্য পাওয়া
curl -X GET "http://localhost:8080/nifi-api/process-groups/{group-id}"
  • {group-id} হল Process Group এর ID, যেটি আপনি দেখতে চান।

২. Processor তৈরি এবং পরিচালনা

Processors তৈরি এবং পরিচালনা করার জন্য /processors এন্ডপয়েন্ট ব্যবহার করা হয়। NiFi API এর মাধ্যমে Processor তৈরি, কনফিগার এবং পরিচালনা করা যায়।

Processor তৈরি
curl -X POST "http://localhost:8080/nifi-api/process-groups/{group-id}/processors" \
-H "Content-Type: application/json" \
-d '{
      "component": {
        "type": "org.apache.nifi.processors.standard.GetFile",
        "name": "Get File Processor",
        "position": {"x": 100, "y": 300}
      }
}'
  • {group-id} হল সেই Process Group এর ID যেখানে Processor তৈরি করা হবে।
  • type প্রপার্টি দিয়ে Processor এর টাইপ নির্ধারণ করা হয়, যেমন GetFile Processor।
Processor এর তথ্য পাওয়া
curl -X GET "http://localhost:8080/nifi-api/processors/{processor-id}"
  • {processor-id} হল Processor এর ID, যা আপনি দেখতে চান।
Processor চালানো বা বন্ধ করা

Processor চালানোর জন্য এবং বন্ধ করার জন্য আপনাকে API রিকোয়েস্ট পাঠাতে হবে। উদাহরণস্বরূপ:

Processor চালানো
curl -X PUT "http://localhost:8080/nifi-api/processors/{processor-id}/run-status" \
-H "Content-Type: application/json" \
-d '{"state":"RUNNING"}'
Processor বন্ধ করা
curl -X PUT "http://localhost:8080/nifi-api/processors/{processor-id}/run-status" \
-H "Content-Type: application/json" \
-d '{"state":"STOPPED"}'
  • এখানে state প্রপার্টি RUNNING বা STOPPED হিসেবে সেট করা হয় Processor চালাতে বা বন্ধ করতে।

৩. Processor Configuration পরিবর্তন

Processor কনফিগারেশন পরিবর্তন করতে আপনাকে /processors/{processor-id} এন্ডপয়েন্টে একটি PUT রিকোয়েস্ট পাঠাতে হবে:

curl -X PUT "http://localhost:8080/nifi-api/processors/{processor-id}" \
-H "Content-Type: application/json" \
-d '{
      "component": {
        "id": "{processor-id}",
        "config": {
          "properties": {
            "Input Directory": "/new/directory/path"
          }
        }
      }
}'
  • এখানে {processor-id} হল Processor এর ID এবং properties প্রপার্টি দিয়ে Processor এর কনফিগারেশন পরিবর্তন করা হয়।

৪. Process Group এবং Processor বন্ধ ও রিস্টার্ট করা

কখনো কখনো আপনি একটি Process Group বা Processor বন্ধ এবং রিস্টার্ট করতে চাইবেন। REST API এর মাধ্যমে এটি করা সম্ভব।

Process Group বন্ধ করা
curl -X PUT "http://localhost:8080/nifi-api/process-groups/{group-id}/run-status" \
-H "Content-Type: application/json" \
-d '{"state":"STOPPED"}'
Process Group রিস্টার্ট করা
curl -X PUT "http://localhost:8080/nifi-api/process-groups/{group-id}/run-status" \
-H "Content-Type: application/json" \
-d '{"state":"RUNNING"}'

REST API এর মাধ্যমে Process Group এবং Processor পরিচালনার সুবিধা

  1. অটোমেশন: NiFi API এর মাধ্যমে Processors এবং Process Groups পরিচালনা করলে প্রক্রিয়াকরণ স্বয়ংক্রিয় করা যায়, যেমন একাধিক Processors এবং Process Groups তৈরি, কনফিগার বা রিস্টার্ট করা।
  2. স্কেলেবিলিটি: বড় আকারের সিস্টেমে NiFi API ব্যবহার করে একাধিক Processors এবং Process Groups সহজে পরিচালনা করা যায়।
  3. ইন্টিগ্রেশন: NiFi API বিভিন্ন অন্যান্য সিস্টেমের সাথে ইন্টিগ্রেট করতে সাহায্য করে, যেমন CI/CD টুলস বা মনিটরিং সিস্টেম।
  4. ব্যাচ অপারেশন: API এর মাধ্যমে আপনি একাধিক Processors বা Process Groups পরিচালনা করতে পারেন একসাথে, যা বড় পরিসরের কাজ দ্রুত এবং কার্যকরীভাবে করার সুযোগ দেয়।

NiFi REST API ব্যবহার করে Process Group এবং Processor পরিচালনা করা একটি অত্যন্ত কার্যকরী পদ্ধতি, যা অটোমেশন, স্কেলেবিলিটি, এবং কার্যকরী সিস্টেম প্রশাসন নিশ্চিত করে। এটি সিস্টেমের প্রশাসক এবং ডেভেলপারদের জন্য অত্যন্ত সহায়ক, বিশেষত যখন ডেটা ফ্লো এবং প্রসেসিং প্রক্রিয়ার বড় পরিসরের অপারেশন প্রয়োজন।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion