এপ্রিল 09, 2018 আপডেট করুন : আজকাল আপনি কাফকার আপনার ডেটা প্রক্রিয়া করতে কাফকার জন্য ইভেন্ট স্ট্রিমিং ডাটাবেস, কেএসকিএলডিবিও ব্যবহার করতে পারেন । ksqlDB কাফকার স্ট্রিমস এপিআই এর শীর্ষে নির্মিত এবং এটিও "স্ট্রিম" এবং "টেবিল" এর জন্য প্রথম শ্রেণির সমর্থন নিয়ে আসে।
কনজিউমার এপিআই এবং স্ট্রিমস এপিআইয়ের মধ্যে পার্থক্য কী?
কাফকার স্ট্রিমস এপিআই ( https://kafka.apache.org/docamentation/streams/ ) কাফকার প্রযোজক এবং গ্রাহক ক্লায়েন্টদের শীর্ষে নির্মিত। এটি কাফকা গ্রাহক ক্লায়েন্টের তুলনায় উল্লেখযোগ্যভাবে আরও শক্তিশালী এবং আরও অভিব্যক্তিপূর্ণ। কাফকা স্ট্রিমস এপিআই এর কয়েকটি বৈশিষ্ট্য এখানে রয়েছে:
- ঠিক একবারে প্রক্রিয়াজাতকরণ সমর্থন করে (কাফকা সংস্করণ 0.11+)
- স্ট্রিমিং যোগ , সমষ্টি এবং উইন্ডোনিং সহ ত্রুটি-সহনশীল স্টেটফুলকে (পাশাপাশি স্টেটলেস হিসাবে অবশ্যই) সমর্থন করে । অন্য কথায়, এটি আপনার আবেদনের প্রক্রিয়াজাতকরণের বাইরে থাকা বাক্সের পরিচালনা সমর্থন করে।
- ইভেন্ট-টাইম প্রসেসিংয়ের পাশাপাশি প্রসেসিং-সময় এবং ইনজেশন-টাইমের ভিত্তিতে প্রসেসিং সমর্থন করে
- উভয় স্ট্রিম এবং টেবিলের জন্য প্রথম শ্রেণির সমর্থন রয়েছে , যেখানে স্ট্রিম প্রসেসিং ডাটাবেসের সাথে মিলিত হয়; অনুশীলনে, বেশিরভাগ স্ট্রিম প্রসেসিং অ্যাপ্লিকেশনগুলিকে তাদের নিজ নিজ ব্যবহারের ক্ষেত্রে প্রয়োগের জন্য উভয় স্ট্রিম এবং টেবিলের প্রয়োজন হয়, সুতরাং কোনও স্ট্রিম প্রসেসিং প্রযুক্তির যদি দুটি বিমূর্তির কোনওটির অভাব হয় (তবে, টেবিলগুলির জন্য কোনও সমর্থন নেই) আপনি হয় আটকে আছেন বা নিজে নিজেই এই কার্যকারিতাটি প্রয়োগ করতে হবে (এর সাথে শুভকামনা ...)
- অন্যান্য অ্যাপ্লিকেশন এবং পরিষেবাগুলিতে সর্বশেষ প্রক্রিয়াকরণ ফলাফলগুলি প্রকাশ করার জন্য ইন্টারঅ্যাকটিভ ক্যোয়ারিকে (যাকে 'ক্যুয়েরেবল স্টেট'ও বলা হয়) সমর্থন করে
- আরো ভাবপূর্ণ: এটি দিয়ে জাহাজ (1) কার্যকরী প্রোগ্রামিং শৈলী ডিএসএল যেমন অপারেশন সঙ্গে
map
, filter
, reduce
সেইসাথে (2) একটি অনুজ্ঞাসূচক শৈলী প্রসেসর এপিআই যেমন জটিল ঘটনা প্রক্রিয়াকরণ (CEP) করছেন জন্য (3) আপনি এমনকি মেশা করতে পারেন, এবং ডিএসএল এবং প্রসেসর এপিআই।
কাফকা স্ট্রিমস এপিআই-তে আরও বিশদ তবে তবুও উচ্চ-স্তরের পরিচিতির জন্য http://docs.confluent.io/current/streams/intrration.html দেখুন , যা আপনাকে নিম্ন স্তরের কাফকা গ্রাহকের সাথে পার্থক্য বুঝতে সহায়তা করবে ক্লায়েন্ট কাফকা স্ট্রিমস এপিআইয়ের জন্য একটি ডকার-ভিত্তিক টিউটোরিয়ালও রয়েছে , যা আমি এই সপ্তাহের প্রথম দিকে ব্লগ করেছি ।
সুতরাং কাফকা স্ট্রিমস এপিআই এর থেকে আলাদা কীভাবে এটি কাফকার কাছ থেকে বার্তা গ্রহণ করে বা উত্পাদন করে?
হ্যাঁ, কাফকা স্ট্রিমস এপিআই উভয়ই ডেটা পড়ার পাশাপাশি কাফকার কাছে ডেটা লিখতে পারে।
এবং কেন এটি প্রয়োজনীয় কারণ আমরা গ্রাহক এপিআই ব্যবহার করে আমাদের নিজস্ব ভোক্তা অ্যাপ্লিকেশনটি লিখতে পারি এবং প্রয়োজন অনুযায়ী তাদের প্রক্রিয়া করতে পারি বা ভোক্তা অ্যাপ্লিকেশন থেকে স্পার্কে প্রেরণ করতে পারি?
হ্যাঁ, আপনি নিজের ভোক্তা অ্যাপ্লিকেশনটি লিখতে পারেন - যেমনটি আমি উল্লেখ করেছি, কাফকা স্ট্রিমস এপিআই নিজেই কাফকা গ্রাহক ক্লায়েন্ট (প্লাস প্রযোজক ক্লায়েন্ট) ব্যবহার করে - তবে আপনাকে স্ট্রিমস এপিআই সরবরাহ করে এমন সমস্ত অনন্য বৈশিষ্ট্য ম্যানুয়ালি প্রয়োগ করতে হবে । আপনি "ফ্রি" পান এমন কিছুর জন্য উপরের তালিকাটি দেখুন। এটি বরং এটি একটি বিরল পরিস্থিতি যে কোনও ব্যবহারকারী আরও শক্তিশালী কাফকা স্ট্রিমস API এর চেয়ে নিম্ন স্তরের গ্রাহক ক্লায়েন্টটি বেছে নেবে।