2010-11-22 20 views
1

IDS 9.04 üzerinde unix.Informix sorgusu

Her satıra 200 + sütun içeren, 200000 + satır içeren bir tablom var. 97,56 sn

: seferinde yakalıyor 4.87 saniye:

eexecution süresi: Ben bu masada (50 sütunlu 470+ satırları dönmek gerekiyordu) bir sorguyu yürütmek , geri dönmek için 100+ saniye sürer ve dbvisualizer söyledi bir dosya içine tüm 470+ satırı aktarmak eğer ilk 100 satırı seçerseniz

, dosya boyutunun en fazla 800K

GÜNCELLEME İSTATİSTİKLERİ sadece, hiçbir damla katılan, sadece 50 sütun seçilen, koşucu edilmiş olacaktır dönmek için 5 sn gerekir.

Plz yardımı!

+0

Hangi platformda Informix sürümü, hangi platformda? Sorgudaki koşullar nelerdir? Sorgu planı ne diyor? UPDATE İSTATİSTİKLERİ çalıştırdınız mı? Sütunlar ne kadar geniş? - hem seçilmiş hem de seçilmemiş? Blob var mı? Unix üzerinde –

+0

IDS 9.04. – idiotgenius

+0

GÜNCELLEME İSTATİSTİKLERİ çalıştırıldı, sadece 50 sütun seçildi, bloğa dahil değil, ilk 100 satırı seçersem, geri dönmek için sadece 5 saniyeye ihtiyaç duyar. – idiotgenius

cevap

0

SELECT FIRST 100 yalnızca birkaç saniye sürerse, FIRST_ROWS için sorgu planının ALL_ROWS için önemli ölçüde farklı olduğunu gösterir.

Sorguyu SET EXPLAIN ON ile çalıştırmayı deneyin; hem İLK ile hem de olmadan Neler olup bittiğine dair bir ipucu verebilir.

0

Kullanın:

avoid_execute;

YOUR_QUERY

grubu kapalı açıklar;

Ve klasörünüzdeki sqexplain.out dosyasını gözden geçirin.