ডাটাবেস সূচক: নতুনদের জন্য একটি ভূমিকা

ডাটাবেস সূচক: নতুনদের জন্য একটি ভূমিকা

'ডাটাবেস ইনডেক্স' বলতে একটি বিশেষ ধরনের ডেটা স্ট্রাকচার বোঝায় যা ডেটাবেজ টেবিল থেকে রেকর্ড পুনরুদ্ধারের গতি বাড়ায়। ডাটাবেস সূচকগুলি নিশ্চিত করে যে আপনি একটি ডাটাবেস টেবিলে ডেটা সনাক্ত করতে এবং অ্যাক্সেস করতে পারেন প্রতিটি ডাটাবেস ক্যোয়ারী প্রক্রিয়া করার সময় প্রতিটি সারিতে অনুসন্ধান না করে।





একটি ডাটাবেস সূচকে একটি বইয়ের সূচকের সাথে তুলনা করা যেতে পারে। ডাটাবেসের সূচকগুলি আপনাকে ডাটাবেসে যে রেকর্ডটি খুঁজছে তার দিকে নির্দেশ করে, যেমন একটি বইয়ের সূচী পৃষ্ঠা আপনাকে আপনার কাঙ্ক্ষিত বিষয় বা অধ্যায়ের দিকে নির্দেশ করে।





যাইহোক, যখন ডাটাবেস সূচকগুলি দ্রুত এবং দক্ষ ডেটা সন্ধান এবং অ্যাক্সেসের জন্য অপরিহার্য, তারা অতিরিক্ত লেখা এবং মেমরি স্থান নেয়।





একটি সূচক কি?

ডাটাবেস ইনডেক্স হল দুটি কলাম নিয়ে গঠিত বিশেষ সন্ধানের টেবিল। প্রথম কলামটি সার্চ কী এবং দ্বিতীয়টি হল ডাটা পয়েন্টার। কীগুলি হল সেই মানগুলি যা আপনি আপনার ডাটাবেস টেবিল থেকে অনুসন্ধান এবং পুনরুদ্ধার করতে চান এবং পয়েন্টার বা রেফারেন্স সেই নির্দিষ্ট অনুসন্ধান কীটির জন্য ডাটাবেসে ডিস্ক ব্লক ঠিকানা সংরক্ষণ করে। মূল ক্ষেত্রগুলি সাজানো হয়েছে যাতে এটি আপনার সমস্ত প্রশ্নের জন্য ডেটা পুনরুদ্ধার অপারেশনকে ত্বরান্বিত করে।

কেন ডাটাবেস ইনডেক্সিং ব্যবহার করবেন?

আমি এখানে একটি সরলীকৃত উপায়ে ডাটাবেস সূচক দেখাতে যাচ্ছি। ধরুন আপনার একটি কোম্পানিতে কর্মরত আটজন কর্মীর একটি ডাটাবেস টেবিল আছে এবং আপনি টেবিলের শেষ প্রবেশের জন্য তথ্য অনুসন্ধান করতে চান। এখন, পূর্ববর্তী এন্ট্রি খুঁজে পেতে, আপনাকে ডাটাবেসের প্রতিটি সারি অনুসন্ধান করতে হবে।



যাইহোক, ধরুন আপনি কর্মীদের প্রথম নামের উপর ভিত্তি করে বর্ণানুক্রমিকভাবে টেবিলটি সাজিয়েছেন। সুতরাং, এখানে ইন্ডেক্সিং কীগুলি নাম কলামের উপর ভিত্তি করে। সেই ক্ষেত্রে, যদি আপনি শেষ এন্ট্রি অনুসন্ধান করেন, জ্যাক , আপনি টেবিলের মাঝখানে ঝাঁপ দিতে পারেন এবং কলামের আগে বা পরে আমাদের এন্ট্রি আসে কিনা তা সিদ্ধান্ত নিতে পারেন।

আপনি যেমন জানেন, এটি মাঝারি সারির পরে আসবে, এবং আপনি আবার মধ্য সারির পরে সারিগুলি অর্ধেক ভাগ করতে পারেন এবং অনুরূপ তুলনা করতে পারেন। এইভাবে, শেষ এন্ট্রি খুঁজে পেতে আপনাকে প্রতিটি সারি অতিক্রম করতে হবে না।





যদি কোম্পানির 1,000,000 কর্মচারী থাকে এবং শেষ এন্ট্রি জ্যাক হয়, তাহলে আপনাকে তার নাম খুঁজে পেতে 50,000 সারি অনুসন্ধান করতে হবে। যেখানে, বর্ণানুক্রমিক সূচীকরণ সহ, আপনি এটি কয়েকটি ধাপে করতে পারেন। আপনি এখন কল্পনা করতে পারেন ডাটাবেস ইনডেক্সিংয়ের মাধ্যমে ডেটা সন্ধান এবং অ্যাক্সেস কত দ্রুত হতে পারে।

সম্পর্কিত: 13 সবচেয়ে গুরুত্বপূর্ণ এসকিউএল কমান্ড যে কোন প্রোগ্রামারের জানা উচিত





ডাটাবেস সূচকের জন্য বিভিন্ন ফাইল সংগঠন পদ্ধতি

সূচীকরণ ব্যবহৃত ফাইল সংগঠন ব্যবস্থার উপর ব্যাপকভাবে নির্ভর করে। সাধারণত, ডেটাবেস ইনডেক্সিংয়ে ডেটা সংরক্ষণের জন্য দুই ধরনের ফাইল সংগঠন পদ্ধতি ব্যবহার করা হয়। সেগুলো নিচে আলোচনা করা হলো:

1. অর্ডারকৃত ইনডেক্স ফাইল: এটি সূচকের তথ্য সংরক্ষণের traditionalতিহ্যবাহী পদ্ধতি। এই পদ্ধতিতে, মূল মানগুলি একটি নির্দিষ্ট ক্রমে সাজানো হয়। অর্ডারকৃত ইনডেক্স ফাইলে ডেটা দুটি উপায়ে সংরক্ষণ করা যায়।

  • স্পার্স সূচক: এই ধরণের ইনডেক্সিংয়ে প্রতিটি রেকর্ডের জন্য একটি সূচক এন্ট্রি তৈরি করা হয়।
  • ঘন সূচক: ঘন সূচীকরণে, কিছু রেকর্ডের জন্য একটি সূচক এন্ট্রি তৈরি করা হয়। এই পদ্ধতিতে একটি রেকর্ড খুঁজে পেতে, আপনাকে প্রথমে সর্বাধিক উল্লেখযোগ্য সার্চ কী মানটি ইনডেক্স এন্ট্রি থেকে খুঁজে বের করতে হবে যা আপনি যে সার্চ কী ভ্যালু খুঁজছেন তার চেয়ে কম বা সমান।

2. হ্যাশ ফাইল সংগঠন: এই ফাইল সংগঠন পদ্ধতিতে, একটি হ্যাশ ফাংশন অবস্থান বা ডিস্ক ব্লক নির্ধারণ করে যেখানে একটি রেকর্ড সংরক্ষণ করা হয়।

ডাটাবেস ইনডেক্সিং এর ধরন

ডাটাবেস ইনডেক্সিং এর সাধারণত তিনটি পদ্ধতি আছে। তারা হল:

  • ক্লাস্টার্ড ইনডেক্সিং
  • নন-ক্লাস্টার্ড ইনডেক্সিং
  • মাল্টি লেভেল ইনডেক্সিং

1. ক্লাস্টার্ড ইনডেক্সিং

ক্লাস্টার্ড ইনডেক্সিং -এ, একটি একক ফাইল দুটি ডেটা রেকর্ড সংরক্ষণ করতে পারে। সিস্টেম পয়েন্টারগুলির পরিবর্তে ক্লাস্টার্ড ইনডেক্সিংয়ে প্রকৃত তথ্য রাখে। ক্লাস্টার্ড ইনডেক্সিংয়ের সাথে অনুসন্ধান করা সাশ্রয়ী কারণ এটি একই জায়গায় সমস্ত সম্পর্কিত ডেটা সঞ্চয় করে।

কিভাবে এসএস স্ন্যাপ তাদের না জেনে

একটি ক্লাস্টারিং সূচক নিজেই সংজ্ঞায়িত করার জন্য অর্ডারকৃত ডেটা ফাইল ব্যবহার করে। এছাড়াও, একাধিক ডাটাবেস টেবিলে যোগদান এই ধরণের সূচকের সাথে খুব সাধারণ।

অ-প্রাথমিক কলামগুলির উপর ভিত্তি করে একটি সূচক তৈরি করাও সম্ভব যা প্রতিটি কী-এর জন্য অনন্য নয়। এই ধরনের অনুষ্ঠানে, এটি একাধিক কলামকে একত্রিত করে ক্লাস্টারড ইনডেক্সের জন্য অনন্য মূল মান তৈরি করে।

সুতরাং, সংক্ষেপে, ক্লাস্টারিং সূচকগুলি যেখানে একই ধরণের ডেটা গ্রুপ করা হয় এবং তাদের জন্য সূচক তৈরি করা হয়।

উদাহরণ: ধরুন এমন একটি কোম্পানি আছে যার 10 টি ভিন্ন বিভাগে 1,000 এরও বেশি কর্মচারী রয়েছে। এই ক্ষেত্রে, কোম্পানিকে তাদের ডিবিএমএসে ক্লাস্টারিং ইনডেক্সিং তৈরি করতে হবে যাতে একই বিভাগে কর্মরত কর্মীদের সূচী করা যায়।

একই বিভাগে কর্মরত কর্মীদের নিয়ে প্রতিটি ক্লাস্টারকে একক ক্লাস্টার হিসাবে সংজ্ঞায়িত করা হবে এবং সূচকের ডেটা পয়েন্টারগুলি ক্লাস্টারকে একটি সম্পূর্ণ সত্তা হিসেবে উল্লেখ করবে।

সম্পর্কিত: এসকিউএল ডেটাবেসে বিদেশী কী কী?

2. নন-ক্লাস্টার্ড ইনডেক্সিং

নন-ক্লাস্টার্ড ইনডেক্সিং বলতে বোঝায় এক ধরনের ইনডেক্সিং যেখানে সূচকের সারির ক্রমটি মূল ডেটা যেভাবে শারীরিকভাবে সংরক্ষণ করা হয় তার অনুরূপ নয়। পরিবর্তে, একটি নন-ক্লাস্টার্ড ইনডেক্স ডাটাবেসে ডেটা স্টোরেজ নির্দেশ করে।

উদাহরণ: নন-ক্লাস্টার্ড ইনডেক্সিং একটি বইয়ের অনুরূপ যার একটি অর্ডার করা বিষয়বস্তু পৃষ্ঠা রয়েছে। এখানে, ডেটা পয়েন্টার বা রেফারেন্স হল অর্ডারকৃত বিষয়বস্তু পৃষ্ঠা যা বর্ণানুক্রমিকভাবে সাজানো হয় এবং প্রকৃত তথ্য হল বইয়ের পাতার তথ্য। বিষয়বস্তু পৃষ্ঠাটি তাদের ক্রমে বইয়ের পাতায় তথ্য সংরক্ষণ করে না।

3. মাল্টি লেভেল ইনডেক্সিং

মাল্টি-লেভেল ইনডেক্সিং ব্যবহার করা হয় যখন সূচকের সংখ্যা খুব বেশি হয়, এবং এটি প্রধান সূচকে প্রধান স্মৃতিতে সংরক্ষণ করতে পারে না। আপনি জানেন যে, ডাটাবেস সূচকগুলি অনুসন্ধান কী এবং ডেটা পয়েন্টার নিয়ে গঠিত। যখন ডাটাবেসের আকার বৃদ্ধি পায়, সূচকের সংখ্যাও বৃদ্ধি পায়।

যাইহোক, দ্রুত অনুসন্ধান অভিযান নিশ্চিত করার জন্য, সূচী রেকর্ডগুলি স্মৃতিতে রাখা প্রয়োজন। যদি সূচক সংখ্যা বেশি হলে একটি একক-স্তরের সূচক ব্যবহার করা হয়, তার আকার এবং একাধিক অ্যাক্সেসের কারণে সেই সূচকটি মেমরিতে সংরক্ষণ করার সম্ভাবনা নেই।

এখানেই মাল্টি-লেভেল ইনডেক্সিং চলে আসে। এই কৌশলটি একক স্তরের সূচককে একাধিক ছোট ব্লকে বিভক্ত করে। ভেঙে যাওয়ার পরে, বাইরের স্তরের ব্লকটি এত ছোট হয়ে যায় যে এটি সহজেই মূল স্মৃতিতে সংরক্ষণ করা যায়।

সম্পর্কিত: কিভাবে একটি মাইএসকিউএল ডাটাবেসের সাথে জাভাকে সংযুক্ত করা যায়

এসকিউএল ইনডেক্স ফ্র্যাগমেন্টেশন কি?

যখন সূচী পৃষ্ঠার কোন ক্রম ডেটা ফাইলের ভৌত ক্রমের সাথে মেলে না তখন এসকিউএল সূচক বিভাজন ঘটায়। প্রাথমিকভাবে, সমস্ত এসকিউএল ইনডেক্স ফ্র্যাগমেন্টেশন-মুক্ত থাকে, কিন্তু আপনি যখন ডাটাবেস (সন্নিবেশ/মুছে দিন/পরিবর্তন করুন) বারবার ব্যবহার করেন, এটি বিভাজনের কারণ হতে পারে।

ডাটাবেস ফ্র্যাগমেন্টেশন ছাড়াও, আপনার ডাটাবেস ডাটাবেস দুর্নীতির মতো অন্যান্য গুরুত্বপূর্ণ সমস্যার মুখোমুখি হতে পারে। এটি হারানো ডেটা এবং একটি ক্ষতিগ্রস্ত ওয়েবসাইট হতে পারে। আপনি যদি আপনার ওয়েবসাইটের সাথে ব্যবসা করছেন, তাহলে এটি আপনার জন্য মারাত্মক আঘাত হতে পারে।

শেয়ার করুন শেয়ার করুন টুইট ইমেইল এসকিউএল সার্ভারের ডেটা নষ্ট হয়েছে? এসকিউএল রিকভারি টুলবক্স দিয়ে এটি পুনরুদ্ধার করার চেষ্টা করুন

এসকিউএল সার্ভারের জন্য রিকভারি টুলবক্স সব সংস্করণের জন্য একটি এমএস এসকিউএল সার্ভারের দূষিত MDF ফাইল ঠিক করতে সাহায্য করে।

কম্পিউটার উইন্ডোজ 10 ঘুমাবে না
পরবর্তী পড়ুন সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • এসকিউএল
  • তথ্য বিশ্লেষণ
  • তথ্যশালা
লেখক সম্পর্কে জাহিদ এ পাওয়েল(16 নিবন্ধ প্রকাশিত)

জাহিদ পাওয়েল একজন কম্পিউটার প্রকৌশলী যিনি লেখা শুরু করার জন্য কোডিং ছেড়ে দিয়েছিলেন! পাশাপাশি, তিনি একজন ডিজিটাল মার্কেটার, প্রযুক্তি উত্সাহী, SaaS বিশেষজ্ঞ, পাঠক এবং সফটওয়্যার প্রবণতার গভীর অনুগামী। প্রায়শই আপনি তাকে তার গিটার বা সমুদ্রের তলায় ডাইভিং পরিদর্শন করে ডাউনটাউন ক্লাবগুলিতে দোল দিতে পারেন।

জাহিদ এ পাওয়েলের কাছ থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন