- মাল্টিপল চয়েস হ্যাশিং নামকরণ করা হয়েছে কারণ এটি একাধিক হ্যাশ ফাংশন বাস্তবায়ন করে।
- উচ্চ স্তরে, যখন একাধিক হ্যাশ ফাংশন থাকে তখন প্রতিটি আইটেম একাধিক বালতিতে ম্যাপ করা হয় এবং সেইজন্য অ্যালগরিদম ডিজাইনারের কাছে আইটেমটি কোনটিতে থাকবে তা নির্বাচন করার স্বাধীনতা রয়েছে।
- এটা দেখা যাচ্ছে যে এই স্বাধীনতা অ্যালগরিদমগুলির জন্য অনুমতি দেয় যা বরাদ্দ পায় যা একটি একক হ্যাশ ফাংশন বাস্তবায়নের মাধ্যমে পাওয়া যায় তার চেয়ে অনেক বেশি ভারসাম্যপূর্ণ৷
- আমরা প্রধান অ্যালগরিদমিক ধারণা এবং প্রধান গাণিতিক সরঞ্জামগুলি উপস্থাপন করব যা এই অ্যালগরিদমগুলি তৈরি করা বরাদ্দের সীমানা প্রমাণের জন্য প্রয়োগ করা হয়৷
- আমরা দেখতে পাব যে বিশ্লেষণটি মৌলিক মডেলের বিভিন্নতা সহ্য করার জন্য যথেষ্ট শক্তিশালী যা আমাদের দৃষ্টিতে ব্যবহারিক অ্যাপ্লিকেশনগুলিতে এই অ্যালগরিদমগুলির কার্যকারিতা ব্যাখ্যা করে৷
মাল্টিপল চয়েস হ্যাশিং-এর অ্যালগরিদম বল-ইন-বিন মডেলের উদাহরণ দিয়ে ব্যাখ্যা করা হয়েছে
- লোড ব্যালেন্সিং প্রক্রিয়া সম্পর্কে যুক্তির জন্য একটি সাধারণ কাঠামো হল 'বল' এবং 'বিন' যেখানে চাহিদা (কী, প্রক্রিয়া, ফাইল ইত্যাদি) 'বল' এবং সংস্থান সরবরাহ (টেবিল স্লট, সার্ভার, স্টোরেজ ইউনিট ইত্যাদি.) 'বিন' দ্বারা প্রতিনিধিত্ব করা হয়।
- এই সেটিং m no. কিছু বরাদ্দের নিয়ম প্রয়োগ করে ক্রমানুসারে বলগুলিকে এন বিনে ফেলে দেওয়া হয়৷
- লক্ষ্য হল প্রক্রিয়াটি শেষ হওয়ার পরে বিনে বলগুলির বরাদ্দ বোঝা, সাধারণত সর্বাধিক লোড করা বিনের মধ্যে লোড (=বলের সংখ্যা) সীমাবদ্ধ করা।
- এই মডেল অনুসারে বলগুলির অ্যাসাইনমেন্ট এক বা একাধিক হ্যাশ ফাংশন প্রয়োগ করে বিনগুলিতে সঞ্চালিত হয়৷
- এই হ্যাশ ফাংশনগুলি একটি বলের অনন্য আইডি (সাধারণত মডেলে অন্তর্নিহিত) বিনের সেটে ম্যাপ করার জন্য দায়ী, সাধারণত 1...n সংখ্যাযুক্ত।
- এলোমেলোভাবে একটি বিন আঁকার পরিবর্তে একটি বলের সাথে একটি বিনকে ম্যাপ করার জন্য একটি হ্যাশ ফাংশন প্রয়োগ করা সাধারণ ক্ষেত্রে কার্যকর যেখানে পরবর্তী সময়ে, একটি বলের অবস্থান তার আইডি থেকে পুনরুদ্ধার করা প্রয়োজন৷