কাফকার সাইট অনুসারে :
" কাকফা রিয়েল-টাইম ডেটা পাইপলাইন এবং স্ট্রিমিং অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। "
দূর-দূরান্তে ইন্টারনেট অনুসন্ধান করে, আমি " স্ট্রিম ডেটা " কী তার নিম্নলিখিত সাধারণভাবে-স্বীকৃত সংজ্ঞা পেয়েছি :
- স্ট্রিম ডেটা এমন ডেটা যা কোনও উত্স থেকে কোনও নেটওয়ার্কের মাধ্যমে একটি গন্তব্যে প্রবাহিত হয়; এবং
- স্ট্রিম ডেটা প্রকৃতিতে পারমাণবিক নয় , যার অর্থ ডেটা প্রবাহিত প্রবাহের কোনও অংশ অর্থবহ এবং প্রক্রিয়াকরণযোগ্য, যার বিপরীতে কোনও ফাইল যার বাইটস মানে না, যদি না আপনার কাছে সমস্ত থাকে; এবং
- স্ট্রিম ডেটা যে কোনও সময় শুরু / বন্ধ করা যেতে পারে; এবং
- গ্রাহকরা ইচ্ছামত ডেটার প্রবাহ থেকে সংযুক্ত এবং বিচ্ছিন্ন করতে পারেন এবং তারা যে অংশটি চান তার কেবলমাত্র প্রক্রিয়া করতে পারেন
এখন, আমি উপরে যা কিছু বলেছি তা যদি ভুল, অসম্পূর্ণ বা সম্পূর্ণ ভুল হয় তবে দয়া করে আমাকে সংশোধন করে শুরু করুন! ধরে নিচ্ছি আমি কমবেশি ট্র্যাকে আছি তবে ...
এখন যেহেতু আমি বুঝতে পারি যে "স্ট্রিমিং ডেটা" কী তা তাই আমি স্টাফিং ডেটা সহ অ্যাপ্লিকেশনগুলির জন্য প্রসেসিং / ব্রোকারিং মিডলওয়্যার হিসাবে নিজেকে বিল করে দিলে কাফকা এবং কিনেসিসের অর্থ কী তা আমি বুঝতে পারি। তবে এটি আমার আগ্রহকে ঘিরে রেখেছে: কাফকা বা কিনসিসের মতো "মিডলওয়্যার" কী স্ট্রিমিং স্ট্র্যাটেড ডেটার জন্য ব্যবহার করা যেতে পারে, messageতিহ্যবাহী বার্তা দালালের মতো? এবং বিপরীতে: /তিহ্যবাহী এমকিউগুলি যেমন রাবিট এমকিউ, অ্যাক্টিভ কিউ, অ্যাপোলো ইত্যাদি ব্যবহার করা যেতে পারে?
আসুন একটি উদাহরণ নেওয়া যাক যেখানে কোনও অ্যাপ্লিকেশন তার JSON বার্তাগুলির ব্যাকএন্ড ধ্রুবক ব্যারেজ প্রেরণ করবে যা প্রক্রিয়া করা দরকার, এবং প্রক্রিয়াজাতকরণটি মোটামুটি জটিল (বৈধতা, ডেটা, ফিল্টারিং, সমষ্টি ইত্যাদি রূপান্তর করে):
- কেস # 1: বার্তাগুলি একটি সিনেমার প্রতিটি ফ্রেম; এটি ফ্রেম ডেটা এবং কিছু সমর্থনকারী মেটাডেটা সমন্বিত ভিডিও ফ্রেমের প্রতি একটি জেএসএন মেসেজেজ
- কেস # 2: বার্তাগুলি সময়-সিরিজের ডেটা, সময়ের ফাংশন হিসাবে সম্ভবত কারও হৃদস্পন্দন। সুতরাং # 1 বার্তাটি আমার হার্টবিটকে টি = 1 এ উপস্থাপন করে পাঠানো হয়েছে, বার্তা # 2 এ আমার হার্টবিট টি = 2 ইত্যাদিতে রয়েছে etc.
- কেস # 3: ডেটা সম্পূর্ণরূপে পৃথক এবং সময় অনুসারে বা কোনও "ডেটা স্ট্রিম" এর অংশ হিসাবে অ সম্পর্কিত। সম্ভবত নিরীক্ষণ / সুরক্ষা ইভেন্টগুলি যা কয়েক শতাধিক ব্যবহারকারী অ্যাপ্লিকেশন নেভিগেট করে বোতামে ক্লিক করে এবং পদক্ষেপ গ্রহণ করছে
কাফকা / কিনেসিসকে কীভাবে বিল দেওয়া হয় এবং "স্ট্রিমিং ডেটা" কী তা আমার বোঝার উপর ভিত্তি করে, তারা কেস # 1 (সংঘটিত ভিডিও ডেটা) এবং # 2 (সংঘটিত সময়-সিরিজের ডেটা) এর সুস্পষ্ট প্রার্থী বলে মনে হয়। তবে আমি কোনও কারণ দেখতে পাচ্ছি না কেন রাব্বিটএমকিউয়ের মতো একটি traditionalতিহ্যবাহী বার্তা ব্রোকার দক্ষতার সাথে এই উভয় ইনপুটগুলি পরিচালনা করতে পারেনি ।
এবং কেস # 3 এর সাথে আমরা কেবল একটি ইভেন্ট সরবরাহ করেছি যা ঘটেছে এবং আমাদের সেই ইভেন্টটির প্রতিক্রিয়া প্রক্রিয়া করতে হবে। সুতরাং আমার কাছে এটি খরগোশ এমকিউয়ের মতো একটি traditionalতিহ্যবাহী ব্রোকারের প্রয়োজনের কথা বলে। তবে কাফকা বা কিনেসিস ইভেন্ট ডেটার প্রসেসিং পরিচালনা করতে না পারার কোনও কারণ নেই।
সুতরাং মূলত, আমি একটি রব্রিক স্থাপন করতে চাই যা বলছে: আমার ওয়াই বৈশিষ্ট্যযুক্ত এক্স ডেটা রয়েছে। এটিকে পরিচালনা করার জন্য আমার কাফকা / কিনেসিসের মতো একটি স্ট্রিম প্রসেসর ব্যবহার করা উচিত। অথবা, বিপরীতভাবে, একটি যা আমাকে নির্ধারণ করতে সহায়তা করে: আমার কাছে জেড বৈশিষ্ট্যযুক্ত ডাব্লু ডেটা রয়েছে। এটি পরিচালনা করতে আমার একটি চিরাচরিত বার্তা ব্রোকার ব্যবহার করা উচিত।
সুতরাং আমি জিজ্ঞাসা করি: স্ট্রিম প্রসেসর বা বার্তা ব্রোকারের মধ্যে সিদ্ধান্তের দিকে চালিত করতে ডেটা সম্পর্কে কী কারণগুলি (বা অন্যথায়) সহায়তা করে, যেহেতু উভয়ই স্ট্রিমিং ডেটা পরিচালনা করতে পারে এবং উভয়ই (স্ট্রিমিং) বার্তা ডেটা পরিচালনা করতে পারে?