Primary এবং Secondary Index

Database Tutorials - আরাঙ্গো (ArangoDB) Indexing in ArangoDB |
250
250

Indexing হল ডেটাবেসের একটি গুরুত্বপূর্ণ বৈশিষ্ট্য যা ডেটা অনুসন্ধানের গতি বাড়ায়। ArangoDB-তে দুটি প্রাথমিক ধরনের ইনডেক্স ব্যবহৃত হয়: Primary Index এবং Secondary Index। এগুলো দ্রুত ডেটা রিট্রাইভাল এবং ডেটা অপ্টিমাইজেশনের জন্য অত্যন্ত কার্যকর।


Primary Index

Primary Index কী?

  • প্রতিটি Collection-এ একটি Primary Index ডিফল্টভাবে থাকে।
  • এটি প্রতিটি ডকুমেন্টের _key এবং _id ফিল্ডের উপর কাজ করে।
  • Primary Index হল অনন্য, অর্থাৎ প্রতিটি ডকুমেন্টে একচেটিয়া (unique) চাবি থাকতে হবে।

Primary Index এর বৈশিষ্ট্য

  1. ডিফল্ট ইনডেক্স: এটি ArangoDB-তে স্বয়ংক্রিয়ভাবে তৈরি হয়।
  2. ফাস্ট রিট্রাইভাল: ডকুমেন্ট রিট্রাইভ করার জন্য দ্রুততম।
  3. ইউনিক (Unique): _key ফিল্ড অনন্য হওয়া বাধ্যতামূলক।

ব্যবহার ক্ষেত্র

  • ডকুমেন্ট রিট্রাইভ করতে, যেখানে ডকুমেন্টের সুনির্দিষ্ট _key বা _id জানা থাকে।

উদাহরণ

AQL দিয়ে Primary Index ব্যবহার করে ডকুমেন্ট রিট্রাইভ করা:

FOR doc IN myCollection
  FILTER doc._key == "12345"
  RETURN doc

Secondary Index

Secondary Index কী?

  • Secondary Index হল এমন একটি ইনডেক্স যা Primary Index ছাড়াও নির্দিষ্ট একটি বা একাধিক ফিল্ডের উপর তৈরি করা হয়।
  • এটি ডেটা ফিল্টারিং এবং অনুসন্ধানের কার্যকারিতা বাড়ায়।

Secondary Index এর ধরন

  1. Persistent Index: নির্দিষ্ট ফিল্ডে দ্রুত অনুসন্ধানের জন্য।
  2. Fulltext Index: টেক্সট সার্চিংয়ের জন্য ব্যবহৃত হয়।
  3. Geo Index: ভৌগোলিক ডেটার জন্য।
  4. TTL (Time-to-Live) Index: ডেটার নির্ধারিত সময়ের পরে মেয়াদোত্তীর্ণ করার জন্য।

Secondary Index এর বৈশিষ্ট্য

  1. ইনডেক্স স্পেসিফিকেশন: Secondary Index নির্দিষ্ট ফিল্ডে ম্যানুয়ালি কনফিগার করতে হয়।
  2. ফিল্টারিং এবং ফাস্ট কোয়েরি: বড় ডেটাসেট থেকে নির্দিষ্ট ডেটা দ্রুত রিট্রাইভ করা যায়।
  3. মাল্টি-ফিল্ড সমর্থন: একাধিক ফিল্ডের উপর একত্রে Secondary Index তৈরি করা যায়।

ব্যবহার ক্ষেত্র

  • টেক্সট সার্চ।
  • নির্দিষ্ট মানের উপর ফিল্টারিং।
  • ভৌগোলিক ডেটার উপর কাজ।

উদাহরণ

Persistent Index ব্যবহার করে Secondary Index তৈরি:

CREATE INDEX myPersistentIndex ON myCollection(name, age) TYPE persistent

Fulltext Index তৈরি:

CREATE INDEX myFulltextIndex ON myCollection(description) TYPE fulltext

Secondary Index ব্যবহার করে AQL কোয়েরি:

FOR doc IN myCollection
  FILTER doc.name == "Alice" AND doc.age > 25
  RETURN doc

Primary এবং Secondary Index এর তুলনা

বৈশিষ্ট্যPrimary IndexSecondary Index
প্রতিটি Collection-এডিফল্টভাবে উপস্থিতম্যানুয়ালি তৈরি করতে হয়
ফিল্ডের ধরন_key এবং _id ফিল্ডে সীমাবদ্ধএকাধিক ফিল্ডে প্রয়োগযোগ্য
ইউনিক মানসবসময় ইউনিকপ্রয়োজনীয় নয়
ব্যবহার ক্ষেত্রডকুমেন্ট রিট্রাইভফিল্টারিং এবং সার্চ অপারেশন
প্রসেসিং গতিদ্রুততম (Direct Lookup)নির্ভর করে ইনডেক্স এবং কোয়েরি-র উপর

সারাংশ

ArangoDB-তে Primary Index এবং Secondary Index উভয়ই ডেটার কার্যকর অনুসন্ধানের জন্য ব্যবহৃত হয়। Primary Index ডকুমেন্ট রিট্রাইভালের জন্য প্রয়োজনীয়, যেখানে Secondary Index ডেটা ফিল্টারিং এবং জটিল অনুসন্ধানের গতি বাড়ায়। সঠিকভাবে ইনডেক্স তৈরি এবং ব্যবহার করলে ডেটাবেসের পারফরম্যান্স উল্লেখযোগ্যভাবে উন্নত হয়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion