PDA

View Full Version : سوال: Index گذاری و نحوه اعمال آن و تاثیر روی حجم بالای اطلاعات !!



amin_alexi
شنبه 04 خرداد 1387, 09:35 صبح
من روی یک سری از جداول که داشتم و حجم بالایی هم از اطلاعات داشت (150 تا 250 هزار)
Index گذاشتم ... به خاطر اینکه Query هایی که می گرفتم سنگین اجرا میشد ...
توی View حدود 7 تا 9 جدول Join میشن !!!
بعد با یه DataBase از همون مدل که Index نداشت تست کردم Queryهام باز با همون سرعت Load شد ...
من هم Cluster Index گذاشتم ... و هم Index روی چند فیلد که تو Joinها هستند ...
آیا باید برای اعمال Index بعد از تعریف اون واعمال روی DataBase کار خاصی بکنم تا Index گذاری اعمال بشه !؟
آیا تو این حجم اطلاعات روی سرعت تاثیر داره !!

AminSobati
شنبه 04 خرداد 1387, 10:37 صبح
دوست عزیزم،
ایندکس به تناسب Query ساخته میشه. بصورت حدسی نمیشه به ایندکس مناسب دست پیدا کرد. در صورتی که ایندکس شما مناسب حال Query نباشه، اصلا توسط Query Optimizer ازش استفاده نخواهد شد.

ASKaffash
شنبه 04 خرداد 1387, 11:16 صبح
سلام
دوست عزیز
200 هزار هنوز خیلی زیاد نیست ولی شما اگر ایندکسها را متناسب با جداول رابطه ای و درخواستهای ویژه درست تعریف کرده باشید دیگر نیاز به کار دیگری ندارید تنها یک نکته خیلی مهم است وآن استفاده از کلاستر و غیر کلاستر که یک شرایطی دارد که اگر فکر میکنید ممکن است رعایت نکرده باشید یک مثال نمونه اعلام کنید تا دراین خصوص بحث فنی شود

Accidentboy
شنبه 04 خرداد 1387, 20:38 عصر
بادرود فراوان خدمت استاد ثباتی

یرخی از ویژگی های Index را برای دوستان
1-در Table های کوچک استفاده ار Index باعث افزایش سرعت نمی شود
2-تاثیر Index در صورتی که مقادیر در ستون Index متفاوت ویا Nullباشد بیشتر است
3-Index درصورتی بهینه می باشد که پرسش داده ها کمتر از 25% باشد
4-Index باعث سرعت در بازیابی و کاهش در تغییر داده ها می شود
5-اکثرا Index را بر روی اجزایی که برای اتصال بکار می روند می سازند
.....................

odiseh
دوشنبه 06 خرداد 1387, 10:32 صبح
سلام به همه
Index ها را باید متناسب با Where Condition ها در Query ها انتخاب کنید.

amin_alexi
سه شنبه 07 خرداد 1387, 11:45 صبح
سلام به دوستان !
من رو اطلاعات پایه روی Field Code توی جداول حساب و kalaو Cust, ... که کد کلید اصلی هست خودش Index هم داره ...
بعد روی سند ها تو جدولHeader, Detail که با SerialNumber به هم ارتباط دارن روی SerialNumber اندکس گذاشتم بعد روی KalaCode , CustCode و هر ارتباط به صورت کلید اصلی و خارجی در جدول Detail ایندکس گذاشتم ...
تو جدول Head فیلد DocDate رو به عنوان Index و از نوع Cluster معرفی کردم که بر اساس تکراری بودن مقدار فیلد در رکوردها گذاشتم (یه جا خوندم) !!!

1 . خواستم بدونم درست تعریف کردم !!!
2 . این صحبت منظور چیه ؟ Accidentboy (http://barnamenevis.org/forum/member.php?u=15750)


-Index درصورتی بهینه می باشد که پرسش داده ها کمتر از 25% باشد