index چیست؟

با یک مثال index را توضیح می‌دهم، فرض کنید یک کتاب ۴ هزار صفحه‌ای را باز کرده‌اید، وقتی می‌خواهید به مطلبی رجوع کنید قطعاً شما تمام کتاب را نمی‌خوانید تا به مطلب مورد نظر برسید. در این حالت شما به فهرست رجوع می‌کنید و به صفحه مورد نظر می‌روید. دقیقاً تعریف index همان فهرست در کتاب است.

در حقیقت یعنی از روی اون شاخصی به صفحه موردنظر می‌رسید. 

اوراکل روش‌های مختلفی را برای indexing به کار می‌برد که در ادامه با آنها آشنا خواهیم شد.

در چه شرایطی index گذاری می‌کنیم؟

کوئری ما کمتر از ۵ درصد کل رکورد را بر گرداند.

زمانی index گذاری می‌کنیم که عموم کوئری‌هایی که از اون جدول می‌گیرید کمتر از ۵ درصد از کل رکوردها رو برگرداند. توی این شرایط ما index گذاری انجام می‌دهیم. 

یادتان باشد در شرایطی اگر اصلاً index گذاری نشود بهتر است.

مثال: جدولی حاوی ۱۰۰ رکورد است کوئری وارد شده برای گزارش‌گیری توسط ما ۵۰ رکورد آن را بیشتر برنمی‌گرداند، آیا index گذاری باید انجام شود؟

ج: خیر - چون با ایندکس‌گذاری روی همچین جدولی برای همچین کوئری‌هایی سرعت دیتابیس ما به شدت افت پیدا خواهد کرد.