100,000 kayıt inserti, networkde 35 dakika sürüyor, select 1

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Önerilerin için teşekkürler...Yine ilk fırsatta anasından yeni doğmuş gibi temiz bir makinada test edicem :) Adamlar makinayı toplayıp getirdiğinde fan bile takılmamıştı henüz, şimdi bu makinaya bakıp da testi kabullenmek cesaret ister sanırım :roll:

Kolay gele..
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

kod olmadigindan sallama yapiyorum :)

insert isleminde arada bir yerde application.procmessage tarzı bir komut falan var mı?
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Esasen bu testi yaptığımız menüde genellikle 100 civarında otomatik kayıt oluşturuluyor ama biz hem projenin performansını görmek için hem de firmaların potansiyelleri sürekli arttığından test etmek istedik..Kodlar çıplaktı yani tarla düzeni, sistematik kodlamadan tamamen uzak...Daha sonra gerekli önlemleri alarak denedim zaman daha düştü..Insert Into'ya çevirdim gözle görünür bir fark oluştu.Son olarak ProcessMessages ekleyip test ettim, aynı.Zaten bildiğim kadarıyla ProcessMessagess'in olayı hızlandırmak için bir etkisi yok, makinayı esir almaması için kullanılıyor yanılmıyorsam...

İlgin için teşekkürler..
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

Tersine ProcessMessages performansını düşürür :)

Her Insertte ProcessMessages yapmak yerine 100'lü veya 1000 li blok bitince ProcessMessages yapmak daha doğru olur !...

1000 Defa yerine 1 Defa diğer işlerine vakit ayıracak makinanın öyle düşünün.

Kolay Gelsin
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Evet döngüye girmeden birkez ProcessMessages yapılıyor, döngü içinde kullanmak :shock:
Kullanıcı avatarı
Terminator
Üye
Mesajlar: 313
Kayıt: 13 Ara 2005 01:45
Konum: İzmir, ama Aydın Efesi!

Mesaj gönderen Terminator »

prosessmessages, kuyrukta bekleyen event oluşturan mesajların işlenmesini sağlamak için. multithread çalışan günümüz programlarında işlemler arası görev sarkmaları oluşabilir ve bazen önce bunların tamamlanması önemli hale gelebilir. VB deki do events gibi.
Firebird Foundation Member #208
http://www.firebirdsql.org
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Şimdi konuştuklarımızdan yola çıkaraz öncelikli sorun makinanın donanımı diyorum (disk açısından..), ikinci olarak da arka planda PhotoShop'un çalışmasına bağlıyorum..Temiz bir makinada tekrar test edip sonucu yine paylaşıcam.Aslında konu konuyu açıyor, bilmediğimiz şeyleri öğreniyor, bildiklerimizi teyit edip pekiştiriyoruz güzel de oluyor ama biraz da vaktimiz bol olsa :?
Kullanıcı avatarı
Terminator
Üye
Mesajlar: 313
Kayıt: 13 Ara 2005 01:45
Konum: İzmir, ama Aydın Efesi!

Mesaj gönderen Terminator »

bLue aLonE yazdı:Şimdi konuştuklarımızdan yola çıkaraz öncelikli sorun makinanın donanımı diyorum (disk açısından..), ikinci olarak da arka planda PhotoShop'un çalışmasına bağlıyorum..Temiz bir makinada tekrar test edip sonucu yine paylaşıcam.Aslında konu konuyu açıyor, bilmediğimiz şeyleri öğreniyor, bildiklerimizi teyit edip pekiştiriyoruz güzel de oluyor ama biraz da vaktimiz bol olsa :?
fotoşopu her denemende yükleyip kullandıysan daha ne diim sana, makinanda ne kadar ram var, ne kadar virtual RAM açıldı, prosess, thread sayısı, IO yapanlar, sayıları gibi taskmanagerdan kolayca öğrenebileceğin bilgiler varken, testi başka bir makinada denemek varken, bunca yıllık FB saniyede 200 kayıt yapıyomuş da bizim haberimiz yokmuş gibi çene yapar havanda su döveriz, senin o neüdü belirsiz makinanın sorununu çözmenin de kimseye faydası olmaz bence. ;)
Firebird Foundation Member #208
http://www.firebirdsql.org
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Her denememde elbette ki PhotoShop çalışmıyor, dier tüm uygulamalardan sıyrılıp sistemin yeniden başlamasıyla birlikte olayı test ettim, bunları yazmaya gerek duymadım zaten detaylı olarak zira değişik alternatifler deneyerek test ediyorum diye yazmıştım.Ayrıca ben yazılım, veritabanı vs.konusunda hiçbir eğitim almadım, deneme yanılma ağırlıklı öğrendim bildiklerimi..Bu alışkanlık haline geldi ne kadar okusam da illa deneyip, test edip öyle yerleştiriyorum zihnime..Makinada yüklü Established Application'ları da Process'den kontrol ederek olayı gözlemliyorum, ben normalde antivirüs yazılımı da kullanmam, makina sapıtmaya başladığında mutlaka registry, process vs.kontrolü yaparım..Konu uzayıp gidiyor sürekli..Bu arada yazdıklarımdan FB antipatisi beslediğimi çıkarmayın lütfen çünkü projelerde FB kullanıyorum..Ne kadar deşeler, ne kadar yeni şey öğrenirsem olaya o kadar hakim olacağımı deklare etmeye lüzum dahi görmüyorum..

İlgilenen herkese teşekkürler..
Kullanıcı avatarı
Terminator
Üye
Mesajlar: 313
Kayıt: 13 Ara 2005 01:45
Konum: İzmir, ama Aydın Efesi!

Mesaj gönderen Terminator »

Hepsini kendi üzerine alınma,
oğlum sana söylüyorum, damadım sen dinle hesabı, bundan sonra sorun intikal ettirecek arkadaşlar daha teknik parametreler verirlerse daha uygun olur babında bir serzenişti benimkisi.
Çabalarını ve seçimi takdir ediyorum ve söylediğim şeylerin de bir katkısı olur umuduyla söylüyorum.

Kolay gelsin.
Firebird Foundation Member #208
http://www.firebirdsql.org
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Söylediğin şeylerin mutlaka katkısı oluyor, endişen olmasın.Tekrar teşekkürler...
Hakan Can
Üye
Mesajlar: 634
Kayıt: 04 Mar 2005 04:27
Konum: Ankara

Mesaj gönderen Hakan Can »

@bLue aLonE,

INSERT INTO ile 35 dakikadan 8 küsür dakikaya indiğini belirtmişsin. Eğer 35 dakikadan 30 hatta 20 dakikaya inseydi belki kabul edilebilir ama 8 küsür dakika hiç mantıklı değil. DataSet'ler de sonuçta kayıt girildiğinde veritabanına INSERT INTO yaparlar. Ancak arada ekstra yazılım (Event, Refresh) vs. varsa veya diğer yazılımla ilgili nedenlerden bu süre uzayabilir.

Çalıştığın firma prensipleri nedeniyle yazdığın kodları gönderemeyeceğini belirtmişsin. Tamam o kodları gönderme. O kodları değiştirip gönder.

Ayrıca mümkünse tabloyu da aynı şekilde gönder. IBOConsole'den tablonun MetaData'sını (Triggerlar, domainler vs. herşeyiyle birlikte) alıp aynı şekilde değiştirip gönder.

Ben problemin yazılım veya veritabanı tasarımıyla ilgili olduğu kanaatindeyim.

Eğer gönderirsen bunu değerlendirme imkanımız olacaktır.

Zira FireBird hız konusunda en kötü donanımlı PC'lerde bile oldukça başarılı.

İyi çalışmalar.
Cevapla