firebird row limit?
firebird row limit?
firebird 1.5 kullanarak bir program hazırlayacagım
yıllık yaklasık 8 milyon kadar belki daha fazla kayıt girilecek
bu kayıtlardan sorgular yoluyla casitli raporlar alınacak (tarih ve saat
alanları baz alınarak)
firebird de girilen satırların sayısında bir sınırlama varmı?
eger yoksa bu sekilde nu kadar kayıt arasında sorgulama yapmak (sum ve
gruplama işlemleri)
cok uzun zaman alırmı
tek tablo da 10 tane falan alan olacak
data boyutları o kadar fazla olmayacak genelde sayı...
tesekkurler
yıllık yaklasık 8 milyon kadar belki daha fazla kayıt girilecek
bu kayıtlardan sorgular yoluyla casitli raporlar alınacak (tarih ve saat
alanları baz alınarak)
firebird de girilen satırların sayısında bir sınırlama varmı?
eger yoksa bu sekilde nu kadar kayıt arasında sorgulama yapmak (sum ve
gruplama işlemleri)
cok uzun zaman alırmı
tek tablo da 10 tane falan alan olacak
data boyutları o kadar fazla olmayacak genelde sayı...
tesekkurler
Bütün veritabanlarinin teorik sınırlari vardır. Fakat bu teorik sınırlar da oyle kolay kolay zorlanabilecek gibi sınırlar degildir. Bu anlamda kayitlarinizi almasi yonunden kesinlikle bir sorun yasamazsiniz.
Amaca gore veritabanı secimi onemlidir. bahsettiginiz veriler ciddi boyutlar. Eger veritabanı maliyetine katlanma durumunuz varsa ucreti karsiliginda sizi daha guvenli kılacak ve performans acisindan daha iyi olacak bir veritabani kullanabilirsiniz. (Sybase, Oracle gibi...)
Mesela tarih saat alanlari uzerinde SQl cumleleri icinde kullanilacak bir cok fonksiyona ihtiyaciniz olabilir. Interbase kullandigim bir projede bunlarin eksikligini epey hissetmistim. Firbird 1.5 da durumu bilemiyorum ama Kullandigim Sybase Adaptive Server Anywhere'deki sadece tarih ve zaman fonksiyonlarının sayisi bile Delphi ile yarisabilecek capta idi....
Kolay gelsin....
Amaca gore veritabanı secimi onemlidir. bahsettiginiz veriler ciddi boyutlar. Eger veritabanı maliyetine katlanma durumunuz varsa ucreti karsiliginda sizi daha guvenli kılacak ve performans acisindan daha iyi olacak bir veritabani kullanabilirsiniz. (Sybase, Oracle gibi...)
Mesela tarih saat alanlari uzerinde SQl cumleleri icinde kullanilacak bir cok fonksiyona ihtiyaciniz olabilir. Interbase kullandigim bir projede bunlarin eksikligini epey hissetmistim. Firbird 1.5 da durumu bilemiyorum ama Kullandigim Sybase Adaptive Server Anywhere'deki sadece tarih ve zaman fonksiyonlarının sayisi bile Delphi ile yarisabilecek capta idi....
Kolay gelsin....
öncelikle cevabınız icin tesekkurler,
aslında yapmak istedigim sistem dakikada yaklasık 5-6 ornek alıp (agırlık bilgisi) bunları gun, ay,yıl, ve belli saatlere gore belirlenmiş vardiyalara gore raporlamak bu aralıklardaki verilerin toplamını raporlamak belki grafiklerini cizdirmek.
anladıgım kadarıyla bu islem icin firebird yeterli gibi geldi
bir sorumda triggerlar hakkında olacak:
ben her bir kayıtı gun,tarih ve cihaz no degerleri ile 10 saniyede bir varitabanına aktaracagım
sorgularla dedigim raporları hazırlayacagım
kayıt sayısı milyonları buldugu zaman bu raporları hazırlamak yani vt den sorgulamak cok zaman alırmı? bu durumda herbir kayıt girisinde bunu triggerlar yada stored proclar ile toplam tablolarına yazsam (toplayarak) mesela gunluk,aylık ve yıllık tablolarım olsa
bunlar uzerinden rapor hazırlasam
yani ne tur bir yaklasım efektif olur?
tesekkurler
aslında yapmak istedigim sistem dakikada yaklasık 5-6 ornek alıp (agırlık bilgisi) bunları gun, ay,yıl, ve belli saatlere gore belirlenmiş vardiyalara gore raporlamak bu aralıklardaki verilerin toplamını raporlamak belki grafiklerini cizdirmek.
anladıgım kadarıyla bu islem icin firebird yeterli gibi geldi
bir sorumda triggerlar hakkında olacak:
ben her bir kayıtı gun,tarih ve cihaz no degerleri ile 10 saniyede bir varitabanına aktaracagım
sorgularla dedigim raporları hazırlayacagım
kayıt sayısı milyonları buldugu zaman bu raporları hazırlamak yani vt den sorgulamak cok zaman alırmı? bu durumda herbir kayıt girisinde bunu triggerlar yada stored proclar ile toplam tablolarına yazsam (toplayarak) mesela gunluk,aylık ve yıllık tablolarım olsa
bunlar uzerinden rapor hazırlasam
yani ne tur bir yaklasım efektif olur?
tesekkurler
Merhaba,
bence de eğer limit 8 milyon ise Interbase/FireBird yeterli olur. Ama bu sayı hızla artacak ise, Fahrettin abinin dediği gibi daha uygun bir veritabanı seçilebilir.
Önerilerim :
1. Indexleri çok iyi ayarlaman lazım. Uygun yapılan indexlemeler, indexsiz hale göre 10-15 kat hızlı çalışmanızı sağlayabilir.
2. Mümkün olduğu kadar veritabanı bazlı çalışın, trigger ve stored procedure kullanın.
3. Delphi tarafında işlem yaparken aşağıdaki kurallara uymaya gayret edin.
http://www.delphiturkiye.com/ipdb.htm#hizlandirma
Kolay gelsin.
bence de eğer limit 8 milyon ise Interbase/FireBird yeterli olur. Ama bu sayı hızla artacak ise, Fahrettin abinin dediği gibi daha uygun bir veritabanı seçilebilir.
Önerilerim :
1. Indexleri çok iyi ayarlaman lazım. Uygun yapılan indexlemeler, indexsiz hale göre 10-15 kat hızlı çalışmanızı sağlayabilir.
2. Mümkün olduğu kadar veritabanı bazlı çalışın, trigger ve stored procedure kullanın.
3. Delphi tarafında işlem yaparken aşağıdaki kurallara uymaya gayret edin.
http://www.delphiturkiye.com/ipdb.htm#hizlandirma
Kolay gelsin.
8 milyon kaitlik bir tablodan ne hizda cevap arayacaginiza gore ve tabi raporlarin komplekligine gore hizlar degisir. Bunlari denemeden birsey soylemek zor. Ya da sizin tatmin olmaniz da kolay olmaz.
Ben boyle bir ise baslayacak olsam tabloma test amacli 1 milyon kayit ekler ve bunun uzerinden gerekli orgularimin performansini test ederim. Eger sonuclar iyi ise bu testi veri miktarini 10 milyon belki 20 milyon ile de denerdim. Yok eger performansi begenmiyorsam da o zaman sizin onerdigimiz gibi triggerlar vasitasi ile bir takim toplam tablolari kullanirdim. Bu sekilde toplam tablolari kullanmanin tek dezavantaji insert hizi biraz yavaslar ki cok onemli oldugunu sanmiyorum faka buna karsilik raporlariniz hizlanir. triggerlar vasitasi ile bu toplamlari yaptirma yontemi de onemlidir. Bu konu ile ilgili faydası olacağı umuıdyla ilk firsatta (bir kac gun icinde insallah) bir makale yazmayi dusunuyorum.
Ben boyle bir ise baslayacak olsam tabloma test amacli 1 milyon kayit ekler ve bunun uzerinden gerekli orgularimin performansini test ederim. Eger sonuclar iyi ise bu testi veri miktarini 10 milyon belki 20 milyon ile de denerdim. Yok eger performansi begenmiyorsam da o zaman sizin onerdigimiz gibi triggerlar vasitasi ile bir takim toplam tablolari kullanirdim. Bu sekilde toplam tablolari kullanmanin tek dezavantaji insert hizi biraz yavaslar ki cok onemli oldugunu sanmiyorum faka buna karsilik raporlariniz hizlanir. triggerlar vasitasi ile bu toplamlari yaptirma yontemi de onemlidir. Bu konu ile ilgili faydası olacağı umuıdyla ilk firsatta (bir kac gun icinde insallah) bir makale yazmayi dusunuyorum.
Bahsettigim şekilde trigger ve stored procedure kullanımı ile ilgili bir makale yazdım.
viewtopic.php?t=644
linkinden ulaşabilirsiniz.
viewtopic.php?t=644
linkinden ulaşabilirsiniz.
makaleniz gercekten cok guzel ve faydalı hmen okudum ve yugulamaya gececegim
sanırım bir satırda kelime hatası var
"Bunun haricinde Oracle, Sybase ve trigger gibi veritabanları row level trigger desteği vermektedirler. "
cumlesinde <ve trigger> ve FireBird yada InterBase mi olacak
yoksa baska bir veri tabanı adı mı?
ayrıca makalenizde StoredProc ların en etkin kullanıldıgı yer olarak rapor hazırlamayı vermissiniz
pek anlamadım
bi ornekle acıklayabilirmisiniz
mesela ben belli bir tarih aralıgındaki gunluk yada aylık stok hareketlerini raporlamak istesem (sizin hazırladıgınız ornekte) bunu nasıl SP ler ile yapabilirim
Tesekkurler,bu bilgiler için
Gökmen Kımırtı
sanırım bir satırda kelime hatası var
"Bunun haricinde Oracle, Sybase ve trigger gibi veritabanları row level trigger desteği vermektedirler. "
cumlesinde <ve trigger> ve FireBird yada InterBase mi olacak
yoksa baska bir veri tabanı adı mı?
ayrıca makalenizde StoredProc ların en etkin kullanıldıgı yer olarak rapor hazırlamayı vermissiniz
pek anlamadım
bi ornekle acıklayabilirmisiniz
mesela ben belli bir tarih aralıgındaki gunluk yada aylık stok hareketlerini raporlamak istesem (sizin hazırladıgınız ornekte) bunu nasıl SP ler ile yapabilirim
Tesekkurler,bu bilgiler için
Gökmen Kımırtı