Bir MySQL veritabanında 40M kayıtları üzerinde çalışıyorum. şöyle senaryodur:Çok yavaş performans işleme 40M + kayıtları MySQL tabloları
Verilen 40M fiyat bilgisi üzerinde kayıt içeren aynı yapıyla 2 tablo:
Tablo 1
product_id price date
101 5.7 2016/1/1
102 11.6 2016/1/1
104 8 2016/1/1
… … …
Tablo 2
product_id price date
101 5.9 2016/1/2
103 20.3 2016/1/2
104 8 2016/1/2
… … …
ben her iki tabloda kaç tane product_id var olduğunu öğrenmek istiyorum ve belo kullanıyorum sorguları w aramak için:
SELECT count(*) FROM t1 a,t2 b where a.product_id=b.product_id ;
SELECT count(*) FROM t1 a,t2 b on a.product_id=b.product_id ;
O performansını artırmak için herhangi bir yolu yoktur, sonuç almak için yarım saatten fazla sürer?
Bak yukarı açıklamak ve endeksler kullanımı –
Soru tablo yapısı, söz konusu depolama motorunu, EXPLAIN' ve donanım kullanılmakta olan 'çıktısını yoksundur. Performans, sadece sorgunuzu ve kayıt miktarınızı değil, birçok faktöre bağlıdır. Donanım BÜYÜK bir rol oynar. –