Provided by:
manpages-tr_1.0.5.1-2_all 
ISIM
ANALYZE - bir veritabani hakkinda istatistik toplar
KULLANIM
ANALYZE [ VERBOSE ] [ tablo [ (s"utun [, ...] ) ] ]
A,CIKLAMA
ANALYZE veritabanindaki tablolarin icerikleri hakkinda istatistikleri
toplar ve bunlari pg_statistic adli sistem tablosuna kaydeder. Bundan
sonra sorgu planlamacisi sorgulari en verimli calistirma planlarini
saptamak icin kullanir.
Parametresiz olarak ANALYZE, calisilan veritabanindaki tum tablolari
inceleyecektir. Parametre olarak bir tablonun sadece sutun isimlerini
vermek mumkundur, bu durumda sadece bu sutunlarla ilgili istatistikler
toplanir.
PARAMETRELER
VERBOSE
Islemin gelisimi hakkinda daha ayrintili bilgi gosterir.
tablo Analiz edilecek tablonun ismi (sema nitelemeli olabilir).
Belirtilmezse veritabanindaki tum tablolar ontanimlidir.
s"utun Analiz edilecek sutunun ismi. Belirtilmezse, tum sutunlar
ontanimlidir.
,CIKTILAR
VERBOSE belirtildiginde, ANALYZE isleme sokulan tablolarla ilgili
surecin gelisimi ile ilgili iletiler basar. Bu arada tablolar hakkinda
cesitli istatistikleri de gosterir.
EK BILGI
ANALYZE deyimi duzenli araliklarla ya da bir tablonun iceriginde
buyukce bir degisiklik yaptiktan hemen sonra calistirilirsa iyi olur.
Toplanan istatistikler planlamaciya en uygun sorgu planini secmekte
yardimci olarak, sorgu isleminin hizini arttirmasini saglayacaktir.
Genel bir strateji, islemler bakimindan gunun en sakin zamaninda VACUUM
[vacuum(7)] ve ANALYZE calistirmaktir.
VACUUM FULL deyiminin aksine, ANALYZE hedef tabloda sadece bir okuma
kilidi gerektirir, boylece tablo uzerinde ayni anda baska etkinlikler
de yapabilir.
ANALYZE tarafindan toplanan istatistikler genellikle, her sutundaki en
ortak degerler ile her sutundaki yaklasik veri dagilimini gosteren bir
can cizgesi icerir. Bunlardan biri ya da her ikisi de, ANALYZE bunlari
ilginc bulmazsa (ornegin, bir sutundaki degerlerin essiz olmasi
istenmisse, burada ortak bir deger olmayacaktir) ya da sutun veri turu
ilgili islecleri desteklemiyorsa atlanabilir. Istatistikler ile ilgili
daha ayrintili bilgiyi
http://www.postgresql.org/docs/8.0/static/maintenance.html adresinde
bulabilirsiniz.
Cok buyuk tablolarda, ANALYZE her satiri tek tek incelemek yerine tablo
iceriginden rasgele ornekler alir. Bu, cok buyuk tablolarin analizinin
cok kisa bir surede gerceklestirilmesini mumkun kilar. Ancak bu
istatistikler yaklasiktir ve ANALYZE'in her calistirilisinda, tablo
icerigi cok fazla degismemis olsa bile, cok degisik sonuclar elde
edilebilir. Bu, EXPLAIN tarafindan gosterilen planlamacinin tahmini
maliyetlerinde kucuk degisiklikler seklinde sonuclanabilir. Yaygin
olarak, bu belirlenimci olmayan yaklasim, ANALYZE'in her
calistirilisinda sorgu eniyilecinin farkli sorgu planlari secmesine
sebep olur. Bundan kacinmak icin, ANALYZE tarafindan toplanan
istatistik miktarini asagida aciklandigi gibi arttirmalisiniz.
Analizin genisletilmesi, her sutun icin istatistik hedefi ALTER TABLE
... ALTER COLUMN ... SET STATISTICS ile belirtilerek sutun sutun ya da
default_statistics_target yapilandirma degiskeninin degeriyle
denetlenebilir (ALTER TABLE [alter_table(7)] kilavuz sayfasina
bakiniz). Hedef deger, en ortak deger listesindeki girdilerin azami
sayisi ve can cizgesindeki azami cubuk sayisi olarak belirtilir. On
tanimli hedef degeri 10'dur. Bu deger, ANALYZE isleminin aldigi zaman
ve pg_statistic tablosunun kapladigi alan ile planlamacinin
tahminlerindeki dogruluk arasindaki dengeyi saglayacak bir degere
ayarlanabilir. Ayrica, istatistik hedefini sifir olarak belirtmek, o
sutundan istatistik toplanmamasini saglayacaktir. Sorgularin WHERE,
GROUP BY veya ORDER BY deyimlerinin hicbir zaman bir parcasi olmayacak
sutunlar icin, planlamaci boyle sutunlarin istatistiklerini
kullanmayacagindan bunu yapmak faydali olabilir.
Analizi yapilacak sutunlar arasinda en genis istatistik hedefini,
istatistikleri hazirlamakta kullanilan ornek alinmis tablo satirlarinin
sayisi belirler. Hedefin arttirilmasi ANALYZE sonuclarinin kaydi icin
harcanan alanin ve islem icin harcanan zamanin orantili olarak
artmasina sebep olur.
UYUMLULUK
SQL standardinda ANALYZE diye bir deyim yoktur.
,CEVIREN
Nilgun Belma Buguner <nilgun (at) belgeler.gen.tr>, Nisan 2005