نمایه سازی در MySQL – انجمن DEV

نمایه سازی در MySQL تکنیکی است که برای بهینه سازی عملکرد پایگاه داده با ایجاد ساختار داده ای که فراهم می کند استفاده می شود fast access to the rows in a table
. شاخص اساساً یک ساختار داده ای است که برای آن استفاده می شود speed up
بازیابی داده ها از یک جدول با ایجاد یک ساختار مجزا که شامل زیرمجموعه ای از داده های جدول، همراه با اشاره گر به ردیف های مربوطه در جدول است، کار می کند.
یک شاخص شبیه به یک شاخص در a است book or a library
. با ارائه نقشه ای به داده ها، به شما کمک می کند تا داده های مورد نیاز خود را سریعتر بیابید. بدون یک index
، MySQL باید در تمام ردیف های جدول جستجو کند تا داده های مورد نیاز خود را پیدا کند، که می تواند یک time-consuming and resource-intensive process
.
برای ایجاد ایندکس در MySQL می توانید از CREATE INDEX statement
. مثلاً فرض کنید جدولی به نام داریم employees
با ستون برای id
، name
، و department
. ما می توانیم یک نمایه در مورد ایجاد کنیم name
ستون با استفاده از دستور SQL زیر:
CREATE INDEX idx_name ON employees (name);
این عبارت یک شاخص به نام ایجاد می کند idx_name
بر روی name
ستون از employees
جدول. این فهرست شامل زیرمجموعه ای از داده ها در name
ستون، همراه با اشاره گر به ردیف های مربوطه در جدول.
پس از ایجاد ایندکس، MySQL از آن برای سرعت بخشیدن به پرس و جوهایی که شامل name
ستون مثلاً اگر بخواهیم همه کارمندان را با نام پیدا کنیم John
، می توانیم از دستور SQL زیر استفاده کنیم:
SELECT * FROM employees WHERE name="John";
توجه به این نکته مهم است که در حالی که نمایه سازی می تواند عملکرد پایگاه داده شما را تا حد زیادی بهبود بخشد، اما می تواند جنبه های منفی نیز داشته باشد. ایندکس ها فضای روی دیسک و حافظه را اشغال می کنند، بنابراین ایجاد نمایه های زیاد می تواند تأثیر منفی بر عملکرد داشته باشد. علاوه بر این، هر بار که جدولی که با آن مرتبط است بهروزرسانی میشود، ایندکسها باید بهروزرسانی شوند، که میتواند بر عملکرد تأثیر بگذارد.
در پایان، نمایه سازی در MySQL یک تکنیک قدرتمند است که می تواند عملکرد پایگاه داده شما را تا حد زیادی بهبود بخشد. با ایجاد ایندکس بر روی یک ستون یا مجموعه ای از ستون ها، می توانید به پرس و جوها سرعت بخشیده و مدت زمان بازیابی داده ها را از جداول خود کاهش دهید. با این حال، مهم است که از شاخص ها به طور عاقلانه استفاده کنید و به تأثیر آنها بر عملکرد توجه داشته باشید.