ResultSetExtractor içinde getInt çağrısı ile ilgili bir performans sorunum var. GetInt 20000 kez denir. Bir arama maliyeti 0.15 ms, toplam maliyet 24 saniye, profiler içinde çalışırken. SQL deyimlerinin yürütülmesi yaklaşık 8 saniye sürer (Birincil Anahtar üzerinden erişim). Ben mysql sürücü sürümü 5.1.13, mysql sunucu 5.1.44 ve spring-jdbc-3.1.1 kullanıyorum Performansı geliştirmek için bir fikriniz var mı?ResultSetExtractor içinde getInt ile ilgili performans sorunu
mut.getMutEffect()[0]=(rs.getInt("leffect_a") != 0);
mut.getMutEffect()[1]=(rs.getInt("leffect_c") != 0);
...
mut.getMutEffect()[19]=(rs.getInt("leffect_y") != 0);
mut.getMutReliability()[0]=rs.getInt("lreliability_a");
...
mut.getMutReliability()[19]=rs.getInt("lreliability_y");
Benim düzeni bu
CREATE TABLE mutation (
...
leffect_a BIT NOT NULL,
lreliability_a TINYINT UNSIGNED NOT NULL,
...
leffect_y BIT NOT NULL,
lreliability_y TINYINT UNSIGNED NOT NULL,
...
) ENGINE=MyISAM;
Edit gibi görünür: GETINT içinde pahalı gibi görünüyor getIntWithOverflowCheck denir Methode. Bu kontrolleri yapmak mümkün mü?
Statement.setFetchSize() iyi çalıştı. Çok teşekkürler. –