انواع مختلف index در PostgreSql

مطلبی در مورد index ها در PostgreSQL از کانال @djangoex

در پستگرس (PostgreSQL) چند نوع مختلف شاخص یا ایندکس (Index) وجود دارد که هر کدام برای کاربردهای خاصی طراحی شده اند. در زیر به معرفی و بررسی آنها می‌پردازم:

یک. B-tree: این نوع شاخص، پیش فرض برای هر نوع داده‌ها می‌باشد. سریعترین ایندکس برای عملیات مقایسه‌ای مانند =, <, <=, >, >= می‌باشد.

دو. Hash: این نوع از شاخص فقط برای عملیات مساوی (=) سریع است و برای سایر عملیات‌های مقایسه‌ای کارآیی مناسبی ندارد.

سه. GiST (Generalized Search Tree): این شاخص پشتیبانی می کند از و نسخه سازگاری بسیار پذیر است که از حوزه های داده و عملیات مقایسه متنوعی پشتیبانی می کند.

چهار. SP-GiST (Space-Partitioned Generalized Search Tree): این نوع شاخص فراهم می کند برای انواع مختلفی از بازیابی های داده، به خصوص زمانی که داده ها یک ساختار فضایی شیر نمی کند.

پنج. GIN (Generalized Inverted Index): این شاخص مناسب برای داده‌هایی است که مقادیر چندگانه در یک سطر دارند، مانند آرایه‌ها و JSON.

شش. BRIN (Block Range INdex): این شاخص مناسب برای جداول بزرگ است که سطرهای آنها به طور فیزیکی بر اساس برخی مقادیر مرتب شده‌اند.

برای مطالعه بیشتر حول این موضوع میتوانید به مستندات PostgreSQL مراجعه نمایید.