অ্যাপাচি নিফাই (Apache NiFi) ফাইল সিস্টেম থেকে ডেটা সংগ্রহ করার জন্য GetFile এবং ListFile প্রসেসর দুটি ব্যবহার করে। এই প্রসেসরগুলো ফাইল সিস্টেম থেকে ডেটা সংগ্রহ এবং পরবর্তী প্রক্রিয়াকরণের জন্য প্রস্তুত করে। তাদের মধ্যে কিছু মৌলিক পার্থক্য রয়েছে, যা বিভিন্ন পরিস্থিতিতে ব্যবহারের জন্য উপযোগী।
ListFile Processor
ListFile প্রসেসরটি একটি ফোল্ডারের মধ্যে উপস্থিত ফাইলের একটি তালিকা তৈরি করে এবং সেই ফাইলগুলিকে প্রসেসরের কাছে প্রেরণ করে। এটি একটি পর্যবেক্ষক প্রসেসর হিসেবে কাজ করে, যা ফোল্ডারটিতে নতুন ফাইল যোগ হওয়া বা পুরনো ফাইল মুছে যাওয়ার প্রতি মনিটরিং করে।
ListFile এর কাজের ধাপ
- ফোল্ডার স্ক্যান করা: ListFile প্রসেসরটি নির্দিষ্ট ফোল্ডারটি স্ক্যান করে এবং সেখান থেকে ফাইলের একটি তালিকা তৈরি করে।
- ফাইলের মেটাডেটা: ফোল্ডারে থাকা প্রতিটি ফাইলের মেটাডেটা (যেমন ফাইলের নাম, আকার, সৃষ্টির সময়, ইত্যাদি) সংগ্রহ করে।
- FlowFile তৈরি করা: প্রতিটি ফাইলের জন্য একটি FlowFile তৈরি করে এবং এটিকে পরবর্তী প্রসেসরের কাছে পাঠায়।
উদাহরণ
ListFile --> FetchFile --> Process (transform, filter, etc.) --> PutFile (or any destination)
ListFile এর ব্যবহার
- যখন আপনি একটি নির্দিষ্ট ফোল্ডারে ফাইল জমা হওয়ার সাথে সাথে সেগুলোর জন্য কাজ শুরু করতে চান।
- বড় আকারের ফোল্ডারে থাকা ফাইলগুলি পর্যায়ক্রমে তালিকা করে প্রসেস করার জন্য।
GetFile Processor
GetFile প্রসেসরটি নির্দিষ্ট ফোল্ডার থেকে ফাইলগুলো সরাসরি সংগ্রহ করে এবং সেগুলিকে FlowFile হিসেবে পরবর্তী প্রসেসিংয়ের জন্য প্রেরণ করে। এটি ListFile এর মতো ফাইলের তালিকা তৈরি করে না, বরং ফাইলগুলিকে সরাসরি প্রসেস করে এবং পরে সেগুলো ডিলিট বা মুভ করতে পারে। এটি সাধারণত স্থিতিশীল বা নির্দিষ্ট সময় অন্তর ফাইল সংগ্রহের জন্য ব্যবহৃত হয়।
GetFile এর কাজের ধাপ
- ফোল্ডার থেকে ফাইল সংগ্রহ: GetFile প্রসেসরটি একটি নির্দিষ্ট ফোল্ডার থেকে একটি ফাইল সংগ্রহ করে এবং এটি একটি FlowFile তৈরি করে।
- ফাইল মুছে ফেলা বা স্থানান্তর: ফাইল সংগ্রহ করার পরে, GetFile সেই ফাইলটি ফোল্ডার থেকে মুছে ফেলতে বা অন্য কোনো স্থানে সরিয়ে দিতে পারে।
উদাহরণ
GetFile --> Process (transform, filter, etc.) --> PutFile (or any destination)
GetFile এর ব্যবহার
- যখন আপনাকে একে একে ফাইল সংগ্রহ এবং প্রক্রিয়া করতে হবে এবং ফাইলটি একবার ব্যবহৃত হলে তা সরিয়ে দিতে হবে।
- স্ট্যাটিক ডিরেক্টরি থেকে নির্দিষ্ট ফাইলগুলিকে সিস্টেমে নিয়ে আসার জন্য।
ListFile এবং GetFile এর মধ্যে পার্থক্য
| বৈশিষ্ট্য | ListFile | GetFile |
|---|---|---|
| কার্যকারিতা | ফোল্ডারে উপস্থিত ফাইলগুলোর তালিকা তৈরি করে | নির্দিষ্ট ফোল্ডার থেকে ফাইল সংগ্রহ করে |
| ফাইল হ্যান্ডলিং | ফাইলের মেটাডেটা সংগ্রহ করে, ফাইল জমা হয়নি | ফাইলটি সরাসরি সংগ্রহ করে, মুছে দেয় বা স্থানান্তর করে |
| স্টোরেজ ম্যানেজমেন্ট | ফাইল মুছে ফেলা হয় না | ফাইলটি মুছে ফেলা বা সরিয়ে ফেলা হয় |
| ব্যবহার | ফাইল প্রবাহ ম্যানেজমেন্ট, পর্যবেক্ষণ | একে একে ফাইল সংগ্রহ এবং স্থানান্তর |
সারাংশ
অ্যাপাচি নিফাই (Apache NiFi) এর ListFile এবং GetFile প্রসেসর দুটি ফাইল সিস্টেম থেকে ডেটা সংগ্রহের জন্য ব্যবহৃত হয়, তবে তাদের ব্যবহার এবং কার্যকারিতায় কিছু পার্থক্য রয়েছে:
- ListFile ফোল্ডারে উপস্থিত সব ফাইলের তালিকা তৈরি করে এবং ফাইলগুলোকে পরবর্তী প্রক্রিয়াতে প্রেরণ করে।
- GetFile একটি নির্দিষ্ট ফোল্ডার থেকে সরাসরি ফাইল সংগ্রহ করে এবং সেগুলোকে পরবর্তী প্রসেসিং বা স্থানান্তরের জন্য প্রস্তুত করে।
এই দুটি প্রসেসরের মধ্য দিয়ে আপনি ফাইল সিস্টেমে ডেটা সংগ্রহ এবং প্রক্রিয়া করার কাজটি কার্যকরভাবে করতে পারবেন।
Read more