অ্যাপাচি নিফাই (Apache NiFi) একটি শক্তিশালী ডেটা ফ্লো ম্যানেজমেন্ট টুল, যা ডেটা সংগ্রহ, প্রক্রিয়া এবং প্রেরণের কাজগুলো সহজে করতে সহায়ক। NiFi এর REST API এর মাধ্যমে আপনি NiFi এর প্রায় সব কার্যক্রম স্বয়ংক্রিয়ভাবে পরিচালনা করতে পারেন। NiFi REST API এর মাধ্যমে বিভিন্ন ডেটা ফ্লো পরিচালনা, কনফিগারেশন আপডেট, এবং প্রসেসর বা সিস্টেমের অবস্থা পরীক্ষা করা সম্ভব হয়।
এখানে আমরা NiFi REST API ব্যবহার করে স্বয়ংক্রিয় কার্যক্রম পরিচালনা করার কিছু গুরুত্বপূর্ণ দিক আলোচনা করবো।
NiFi REST API এর মাধ্যমে নিম্নলিখিত কাজগুলো করা সম্ভব:
NiFi REST API সাধারণত একটি base URL এর মাধ্যমে অ্যাক্সেস করা যায়। NiFi ইনস্ট্যান্সের API URL সাধারণত এইভাবে হয়:
http://<nifi_host>:<port>/nifi-api
এটি আপনার NiFi ইনস্ট্যান্সের হোস্টনেম এবং পোর্ট অনুযায়ী পরিবর্তিত হবে।
API endpoint এর URL সাধারণত এই কাঠামো অনুসরণ করে:
http://<nifi_host>:<port>/nifi-api/<resource>
Resources গুলোর মধ্যে অনেক গুরুত্বপূর্ণ তথ্য পাওয়া যায়, যেমন:
/process-groups
: প্রসেস গ্রুপের তথ্য/processors
: প্রসেসর কনফিগারেশন/flowfile-queues
: ফ্লোফাইল কিউ এর তথ্য/status
: সার্ভারের অবস্থা/controller-services
: কন্ট্রোলার সেবার কনফিগারেশনNiFi REST API ব্যবহার করে একটি প্রসেসর স্টার্ট বা স্টপ করা যেতে পারে। PUT
এবং POST
HTTP মেথডের মাধ্যমে এই কার্যক্রম করা হয়।
API Endpoint:
POST /nifi-api/processors/<processor_id>/run-status
Request Body:
{
"state": "RUNNING"
}
API Endpoint:
POST /nifi-api/processors/<processor_id>/run-status
Request Body:
{
"state": "STOPPED"
}
এই API কলের মাধ্যমে আপনি NiFi এর একটি নির্দিষ্ট প্রসেসর চালু বা বন্ধ করতে পারবেন।
নতুন প্রসেসর তৈরি করার জন্য POST
HTTP মেথড ব্যবহার করা হয়।
POST /nifi-api/process-groups/<process_group_id>/processors
{
"component": {
"type": "org.apache.nifi.processors.standard.GetFile",
"name": "Get File Processor",
"config": {
"properties": {
"Input Directory": "/path/to/directory"
}
}
}
}
এই API কলের মাধ্যমে আপনি একটি নতুন প্রসেসর তৈরি করতে পারবেন, যেখানে প্রাসঙ্গিক কনফিগারেশনও প্রেরণ করতে হবে।
ফ্লোফাইল পরিচালনার জন্য NiFi REST API তে GET
, POST
, এবং DELETE
মেথড ব্যবহার করা হয়।
API Endpoint:
GET /nifi-api/flowfile-queues
এই API কলের মাধ্যমে ফ্লোফাইল কিউ এবং তার স্ট্যাটাস দেখতে পারবেন।
API Endpoint:
DELETE /nifi-api/flowfile-queues/<queue_id>
এই API কলের মাধ্যমে একটি নির্দিষ্ট ফ্লোফাইল কিউ মুছে ফেলা যাবে।
NiFi REST API ব্যবহার করে সার্ভার এবং নেটওয়ার্ক স্ট্যাটাস মনিটর করা যায়। উদাহরণস্বরূপ, সার্ভারের বর্তমান অবস্থা জানতে GET
মেথড ব্যবহার করা হয়।
API Endpoint:
GET /nifi-api/system-diagnostics
এই API কলের মাধ্যমে NiFi সার্ভারের স্বাস্থ্য এবং পারফরম্যান্স স্ট্যাটাস পেতে পারেন।
NiFi REST API ব্যবহার করার জন্য কিছু টুলসের সাহায্য নিতে পারেন:
NiFi REST API এর মাধ্যমে আপনি NiFi সিস্টেমের অধিকাংশ কাজ স্বয়ংক্রিয়ভাবে সম্পাদন করতে পারেন। এটি ডেটা ফ্লো, প্রসেসর কনফিগারেশন, সার্ভার স্ট্যাটাস মনিটরিং, এবং ফ্লোফাইল পরিচালনা করার জন্য একটি শক্তিশালী সরঞ্জাম। NiFi REST API ব্যবহার করে সিস্টেমের কার্যক্রম নিয়ন্ত্রণ, কনফিগারেশন পরিবর্তন এবং সম্পূর্ণ অটোমেশন সহজে সম্পন্ন করা যেতে পারে।
common.read_more