IBSQL de Blob kullanımı

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
windofmay
Üye
Mesajlar: 35
Kayıt: 19 Ağu 2003 06:42

IBSQL de Blob kullanımı

Mesaj gönderen windofmay »

Herkese Merhaba :)
Programımın bir yerindeki bazı düzensiz bilgileri Blob olarak IBSql e kayıt etmek istiyorum. Ama bu bilgiler biraz büyük bu yüzden Blob size 8192 olmak durumunda. Bunlar için ayrı bir tablo olusturdum .
Sorum ise şu :

- Birden fazla kayıt yapmam ve her bilgide birden fazla Blob a sahip durumda (5-6 tane 8192 lik Blob)
Sizce tek bir kayıt içine mi gömmeliyim yoksa her Blob için ayrı bir kayıt yapısı mı oluşturmalıyım (Bir kayıdın maximum büyüklüğü sınırı var mıdır ? )

- IBSql deki Page Size ile bunun bir ilgisi var mı ?

Yardımlarınız için şimdiden teşekkür ederim.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Genel bilgi: Veritabanlarında bilgiler paga page (sayfa sayfa) okunduğu için her bir kayıttaki bayt sayısı page boyudundan küçük/eşit olmasında fayda var. Ayrıca daha önemlisi iyi bir perfomans için diskin cluster (küme) boyutunun da veritabanı page boyutu ile aynı olması gerekir.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
windofmay
Üye
Mesajlar: 35
Kayıt: 19 Ağu 2003 06:42

Mesaj gönderen windofmay »

Sayın rşimşek
söylediklerinizden anladığım bunun bir zorunluluk olmadığı ancak o kayıdın okunmasında bir yavaşlamaya neden olduğu,

Eğer anladığım gibi ise benim bir kayıdı okumak için (her blob için ayrı kayıt yaptığımda ) 5-6 kez sorgu ve cevap alacağımdan ayrı kayıt tutmak daha yavaş olacak,
eğer sadece o kayıdın okunması yavaş olacak ise (başka mahzuru yok ise yani ) aynı kayıt içinde tutmak benim için daha uygun görünüyor
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Ben genel bilgi vermiştim. Bahsettiğiniz durumda madem Blob alanlar çok uzun o zaman tek tek kayıtlarda saklamak perfomans açısından daha akıllıca. Bu söylediklerim çok kayıtlı sistemler için geçerli, yoksa az sayıda kayıt olan bir veritabanında ne hızı ne de yavaşlığı hissedemezsiniz. Ama yine de yapıyı perfomansa paralel şekilde kurmakta fayda var.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
freeman35
Admin
Mesajlar: 2380
Kayıt: 12 Haz 2003 04:05
Konum: merkez camii yanı

Mesaj gönderen freeman35 »

Yanlış hatırlamıyorsam blobsize 65 kb idi. parçalara ayırmak bencede performans açısından iyi olur. Ama birde şu var eğer sadece 5-6 kayıt ise bunları toplayım tek bir blob ta tutmak bence daha mantıklı, ama her bir kayıt için 5-6 tane ise mutlaka ayırmak gerek. bir başka önerim ise bu blob alanlar sanırım text bilgi içeriyor. Buları blob a gömerken sıkıştırıp gömebilirsiniz, çok fazla yer kazanırsınız. Tabi resim değiller ise. Page size blob tan daha çok index ler ile ilgilidir(bir dip not)

Kolay gele
ZAGOR TENAY TÜRK'tür... TÜRK kalacak...
Zoru başarırım, İmkansız zaman alır
FreeMan 35.5

Soru sormaya üşenmiyorsan, sorunun çözümünü yazmaya da üşenme !!!
Cevapla