YetAnotherForum
სალამი სტუმარს ძებნა | აქტიური თემები | შესვლა | რეგისტრაცია

ფავორიტებში დამატება
sspMissingIndexes
achiko Offline
#1 Posted : Thursday, September 09, 2010 6:34:55 PM

Rank: Member

Medals:

Groups: Registered
Joined: 6/20/2010
Posts: 12
Points: 36
Location: Georgia

Thanks: 0 times
Was thanked: 1 time(s) in 1 post(s)
sspMissingIndexes - გამოქავს ბევრი ველები



runtime
index_group_handle
index_handle
improvement_measure
create_index_statement
group_handle
unique_complies
user_seeks
use_scans
last_user_seek
last_user_scan
avg_total_cost
avg_user_impact
sustem_seeks
system_scans
last_system_seeks

.....


კითხვა:

1) რომელი ველი არის ამ ჩამონათვლაიდან კრიტიკული რომელსაც ადმინისტრატორმა ყურადღება უნდა მიაქციოს ? და შესაბამისად მიიღოს გადაწყვეტილება დაადოს თუ არა ამ ველს ინდექსი?

2) საჭიროა თუ არა ბაზის დეფგრამენტაციის ჩატარება ინდექსების დადების შემდეგ ?

3) ყველა რესურსი თუ პროფესიონალი ბაზის ადმინისტრატორი იძლევა რეკომენდაციას, რომ ინდქსების დადებისას სიფრთხილეა საჭირო... კონკრეტულად რა უარყოფითი შედეგები შეიძლება მოყვეს ინდექსების "უპრაკონოდ" დადებას ?



დიდი მადლობა წინასწარ.
Sponsor  
 
Apex ltd. http://www.apex.ge
vajaGM Offline
#2 Posted : Friday, September 10, 2010 4:06:55 PM

Rank: Administration

Medals:

Groups: Administrators
Joined: 10/20/2012
Posts: 106
Points: 327
Location: Tbilisi

Thanks: 0 times
Was thanked: 0 time(s) in 0 post(s)
ქუოტა (Quote):
1) რომელი ველი არის ამ ჩამონათვლაიდან კრიტიკული ....


თუ sspMissingIndexes-მა გამოგიტანა სია და მოგთხოვა ცხრილების ინდექსაცია, ეს ნიშნავს, რომ შენ გამოყენებული გაქვს სელექტი
რომელშიც WHERE პირობაში ველები რომლებზეც არა გაქვს ინდექსი და ასეთი სელექტის შესრულებას სავარაუდოდ დასჭირდება დიდი დრო.

იგივე შენიშვნას გამოგიტანს გრაფიკულად XML თუ შეასრულებ დაახლოებით ასეთ ბრძანებას :
BB კოდი:

SET STATISTICS XML ON;
GO
SELECT * FROM <ცხრილის სახელი> WHERE <დაუნდექსებელი სვეტის სახელი> = XXX
SET STATISTICS XML OFF;
GO


ამ სვეტებიდან ყურადღება უნდა მიაქციოთ improvement_measure-ს.
ის არის გამოთვილი avg_total_user_cost, avg_user_impact, user_seeks და user_scans მონაცემების კომბინაციიდან და გიჩვენებთ დაუმუშავებელი ინდექსების კოეფიციენტს.
რაც მაღალია მით უფრო ცუდი...

improvement_measure = avg_total_user_cost * (avg_user_impact / 100.0) * (user_seeks + user_scans)

მაგრამ sspMissingIndexes (რომელიც თავის მხრივ დაფუძნებულია ცხრილებზე sys.dm_db_missing_index_groups mig, sys.dm_db_missing_index_group_stats, sys.dm_db_missing_index_details) არ ნიშნავს, რომ ის ყოველთვის გაძლევს ინდექსების ოპტიმალურად მოწყობის რეკომენდაციას.
ინდექსებს აქვს უარყოფითი თვისებები: (დიდი ადგილი ვინჩესტერზე, შედარებითი დაყოვნება INSERT, UPDATE, DELETE ოპერაციებზე)
ამდენად როცა ადგენ რაიმე ინდექსს, ითვალისწინებ ამ ცხრილში მიმდინარე პროცესებსაც.. რამდენად ხშირად ხდება ცხრილიდან ინფორმაციის ამოკრეფა და მეორე მხრივ რამდენად ხშირად ხდება მასში INSERT,UPDATE, DELETE ოპერაციები.

ქუოტა (Quote):
2) საჭიროა თუ არა ბაზის დეფგრამენტაციის ჩატარება ინდექსების დადების შემდეგ ?


ინდექსებს სჭირდება სტატისტიკის განახლება და არა დეფრაგმენტაცია. (თუმცა დეფრაგმენტაცია თავის მხრივ მოიცავს სტატისტიკის განახლებასაც)
რაც შეეხება დეფრაგმენტაციას. მე მოგცემდით ასეთ რეკომენდაციას:
ა) პირველ რიგში გააკეთე ბაზის MDF და LDF ფაილები დიდი (გონივრულად დიდი) მოცულობის ვიდრე ის საჭიროა მონაცემების შესანახად და განათავსე ისინი ცალ-ცალკე ვინჩესტერებზე.
ბ) ამის შემდეგ გააკეთე ამ დისკების დეფრაგმენტაცია (Disk Defragment)
გ) ამის შემდეგ კი ბაზის დეფრაგმენტაცია....

... და შემდეგ დაივიწყე საერთოდ Disk Defragment და ბაზის დეფრაგმენტაციაც.. ის აღარ იქნება საჭირო.. საკმარისი იქნება სტატისტიკის განახლება.


ქუოტა (Quote):
3) ყველა რესურსი თუ პროფესიონალი ბაზის .....


"უპრაკონოდ" დადებას რა უარყოფითი თვისებებიც აქვს ეს კი ავღნიშნე უკვე ზემოთ...

ქუოტა (Quote):
achiko Offline
#3 Posted : Friday, September 10, 2010 6:54:13 PM

Rank: Member

Medals:

Groups: Registered
Joined: 6/20/2010
Posts: 12
Points: 36
Location: Georgia

Thanks: 0 times
Was thanked: 1 time(s) in 1 post(s)
ქუოტა (Quote):
ა) პირველ რიგში გააკეთე ბაზის MDF და LDF ფაილები დიდი (გონივრულად დიდი) მოცულობის ვიდრე ის საჭიროა მონაცემების შესანახად და განათავსე ისინი ცალ-ცალკე ვინჩესტერებზე.


რა იგულისზმება გონივრულად დიდ - ში ? მაგალითად ბაზის ზომა ამჟამად არის 634 მბ. სავარაუდოდ რამდენი უნდა იყოს მისი ზომა ხელით გაზრდის შემთხვევაში ?
რაც შეეხება LDF - ფაილებს ლოგირებას მინიმალურად ვიყენებ (გამორთული მაქვს). და მისი ფიზიკური ზომა ამჟამად არის 2 მბ.


ქუოტა (Quote):
ბ) ამის შემდეგ გააკეთე ამ დისკების დეფრაგმენტაცია (Disk Defragment)



რამდენად გამართლებულია დისკების დეფგრამენტაცია მუშა ბაზაზე ? რადგან გამორთვა არ შემიძლია. ის სულ ჩართულია 24/7 ზე ....
რამეს ხო არ შეუძლის ხელს ?

vajaGM Offline
#4 Posted : Saturday, September 11, 2010 4:27:37 PM

Rank: Administration

Medals:

Groups: Administrators
Joined: 10/20/2012
Posts: 106
Points: 327
Location: Tbilisi

Thanks: 0 times
Was thanked: 0 time(s) in 0 post(s)
ქუოტა (Quote):
რა იგულისზმება გონივრულად დიდ - ში ? მაგალითად ბაზის ზომა ამჟამად არის 634 მბ. სავარაუდოდ რამდენი უნდა იყოს მისი ზომა ხელით გაზრდის შემთხვევაში ?
რაც შეეხება LDF - ფაილებს ლოგირებას მინიმალურად ვიყენებ (გამორთული მაქვს). და მისი ფიზიკური ზომა ამჟამად არის 2 მბ.

გონივრულად დიდში ვგულისხმობ შემდეგს : ვთქვათ შენი ბაზა რომელიც ახლა 634 მბ-ია (საკმაოდ პატარა ზომის ბაზაა) ამ ზომის გახდა 6 თვის განმავლობაში. სავარაუდოდ თუ ამ ტემპით გაიზრდება ის 1 წელიწადში გახდება 2 გბ. გააკეთე მისი ზომა 2-5 გბ. იმედია ვინჩესტერზე ამის საშუალება გაქვს.


ქუოტა (Quote):
რამდენად გამართლებულია დისკების დეფგრამენტაცია მუშა ბაზაზე ? რადგან გამორთვა არ შემიძლია. ის სულ ჩართულია 24/7 ზე ....
რამეს ხო არ შეუძლის ხელს ?

ამ კითხვაზე კითხვითვე რომ გიპასუხო - გამართლებულია თუ არა დაუდეფრაგმენტებელ ვინჩესტერზე მუშა ბაზის განთავსება ?
რათქმაუნდა არაა გამართლებული..
ამიტომ შეარჩიე ისეთი დრო, როცა მონაცემთა ბაზა ნაკლებადაა დატვირთული (მაგალითად დილის ხუთი საათი) და ამ დროს გააკეთე ვინჩესტერის დეფრაგმენტაცია.
უკუეფექტი ის იქნება, რომ ამ დროს უსერები ცოტა შენელებულ ტემპში მიიღებენ პასუხს სერვერიდან. მაგრამ შენი ბაზა იმდენად მცირეა, რომ არა მგონია უსერმა შენელების უკუეფექტი საერთოდ იგრძნოს. ჩასვი ჯობში დეფრაგმენტი ერთი ღამეს და ეგაა სულ...
ქუოტა (Quote):
Users browsing this topic
Guest
ფავორიტებში დამატება
Forum Jump  
თქვენ არ შეგიძლიათ დაწეროთ ახალი თემა ამ ფორუმში.
თქვენ არ შეგიძლიათ გასცეთ პასუხი, თემას, ამ ფორუმში .
თქვენ არ შეგიძლიათ წაშალოთ თქვენი პოსტი ამ ფორუმში.
თქვენ არ შეგიძლიათ ჩაასწოროთ თქვენი პოსტი ამ ფორუმში.
თქვენ არ შეგიძლიათ შექმნათ გამოკითხვა ამ ფორუმში.
თქვენ არ შეგიძლიათ ხმის მიცემა ამ ფოუმში.

YAFVision Theme by Jaben Cargman (Tiny Gecko)
Powered by YAF | YAF © 2003-2009, Yet Another Forum.NET
This page was generated in 1.806 seconds.