যখন Availability বেশি জরুরি
লাইকের হিসাব
বল্টু ভাই হাসলেন। “টাকার ক্ষেত্রে হিসাব ঠিক থাকা ভালো, কিন্তু সব জায়গায় কি আর টাকার হিসাব চলে? তোর বিড়ালটিউবের কথাই ধর।”
মন্টু সোজা হয়ে বসল।
“ধর, বিড়ালটিউবে একটা কিউট বিড়ালের ভিডিও ভাইরাল হয়েছে। প্রতি সেকেন্ডে হাজার হাজার মানুষ ভিডিওটা দেখছে আর লাইক দিচ্ছে। এখন ঢাকার সার্ভার আর সিঙ্গাপুরের সার্ভারের মধ্যে নেটওয়ার্ক পার্টিশন (P) হলো। কেউ কারও সাথে ডাটা সিঙ্ক করতে পারছে না।”
“আচ্ছা,” মন্টু সায় দিল।
“এখন তুই যদি বিড়ালটিউবকে ব্যাংকের মতো CP সিস্টেম বানাস, তাহলে কী হবে? সিঙ্গাপুরের সার্ভার যেহেতু ঢাকার সার্ভারকে লাইকের আপডেট পাঠাতে পারছে না, সে রিকোয়েস্ট নেওয়াই বন্ধ করে দেবে। ইউজার লাইক বাটনে চাপ দিলেই স্ক্রিনে এরর দেখাবে, 'Action failed' বা 'Service unavailable'। তুই চিন্তা কর, একটা বিড়ালের ভিডিওতে লাইক দিতে গিয়ে বা ভিডিও দেখতে গিয়ে যদি সিস্টেম ডাউন দেখায়, ইউজাররা কি তোর প্ল্যাটফর্মে থাকবে?”
মন্টু সাথে সাথে মাথা নাড়ল, “কক্ষনো না! একাউন্ট ডিলিট করে পালাবে।”
“এই জন্যই,” বল্টু ভাই বুঝিয়ে বললেন, “সোশ্যাল মিডিয়া বা ভিডিও প্ল্যাটফর্মগুলোতে Consistency (C)-র চেয়ে Availability (A) অনেক বেশি দরকারি। নেটওয়ার্ক কাটা পড়লে তোর সিস্টেম এরর না দেখিয়ে লাইকটা নিয়ে নেবে। হয়তো ঢাকার ইউজার দেখবে ভিডিওতে ৫০,০০০ লাইক, আর সিঙ্গাপুরের ইউজার দেখবে ৪৯,৯৯০ লাইক। এই যে ১০টা লাইকের পার্থক্য, এটাকে বলে ডাটা মিসম্যাচ বা ইনকনসিস্টেন্সি। কিন্তু এতে ইউজারের কোনো মাথা ব্যথা নেই। ভিডিও চলছে, লাইক দেওয়া যাচ্ছে, ইউজার তাতেই খুশি!”

মন্টুর চোখ চকচক করে উঠল, “বুঝতে পেরেছি! যেহেতু এখানে ডাটা ১০০% একুরেট না হলেও সমস্যা নেই, কিন্তু সিস্টেম কোনোভাবেই ডাউন হওয়া বা থমকে থাকা যাবে না, তাই বিড়ালটিউব হলো একটা AP সিস্টেম।”
বল্টু ভাই চায়ের কাপে একটা চুমুক দিয়ে বললেন, “একদম তাই। সিস্টেম ডিজাইন হলো তোর বিজনেসের ওপর ভিত্তি করে সঠিক ডিসিশন নেওয়া। সবসময় ডাটা ঠিকঠাক দেখাতে হলে CP নিবি, আর একদম লেটেস্ট ডাটা সবসময় দরকার না হলে AP নিবি।”
মন্টু স্বস্তির নিশ্বাস ফেলল, “যাক বাবা! তার মানে ইন্টারনেট ঠিক থাকলে আমার কোনো চিন্তা নাই, তখন আমার সিস্টেম ১০০% পারফেক্ট!”
বল্টু ভাই হো হো করে হেসে উঠলেন। “কে বলেছে রে গাধা? ইন্টারনেট ঠিক থাকলেও তোকে আরেকটা বিশাল ট্রেড-অফ করতে হবে। সেটা হলো PACELC থিওরি!”
মন্টু অবাক, “আবার নতুন থিওরি? সেটা আবার কী?”