Veri Tabanında Dosya saklama

Lists: pgsql-tr-genel
From: "Ali Dereli" <derelinux(at)gmail(dot)com>
To: pgsql-tr-genel(at)postgresql(dot)org, linux-programlama(at)liste(dot)linux(dot)org(dot)tr
Subject: Veri Tabanında Dosya saklama
Date: 2007-03-22 07:22:24
Message-ID: dfbe28f10703220022u6fd48addje7f35a139c820610@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-tr-genel

Merhaba;

İç ağda çalısacak web tabanlı uygulamada (JSP) kullanıcılara ait dosyaların
(2 MB ı gecmeyecek sekilde pek cok türde dosya) saklanması gerekiyor. Bu
dosyaları PostgreSQL'e yazdırmakmı evladır yoksa standart sekilde sunucunun
her hangi bir klasöründe saklamakmı?

2 yıl önce bu tarz bi konu tartısılmıstı. Sadece PostgreSQL için degil genel
manada Veri Tabanında dosyaların saklanması ek okuma-yazma getirdiği için
tavsiye edilmiyordu.

Ben Veri Tabanının yedeği alıp bide ilgili dosyaların yedeğini almak
istemiyorum. Tek yedekle işlem sonuçlansın istiyorum. Birde Kullanıcılara
"dosyalarınızı veri tabanında saklıyacaz, sizden başka kimse onlara ulaşamaz
" dediğimizde (nedendir bimem) uygulamaya olan güven, saygı vb. artıyor.
Kısacası fiyakalı bi uygulama oluyor.

Ama sadece fiyakalı olması yetmiyor. Yedekleri geri yüklediğimde acaba sorun
yasarmıyım? hızda belirgin bi azalma olurmu? vb.

Siz ne öneriyorsunuz. Getiri-götürü ye bakıldıgında seçim hangisi olmalı.

Centos 4.3
Postgresql 8.1.4
Tomcat 5.5

Saygılar.


From: Devrim GÜNDÜZ <devrim(at)CommandPrompt(dot)com>
To: Ali Dereli <derelinux(at)gmail(dot)com>
Cc: "pgsql-tr-genel(at)postgresql(dot)org" <pgsql-tr-genel(at)postgresql(dot)org>
Subject: Re: Veri Tabanında Dosya saklama
Date: 2007-03-22 07:43:28
Message-ID: 1174549408.3592.26.camel@laptop.gunduz.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-tr-genel

Merhaba,

On Thu, 2007-03-22 at 09:22 +0200, Ali Dereli wrote:

> İç ağda çalısacak web tabanlı uygulamada (JSP) kullanıcılara ait
> dosyaların (2 MB ı gecmeyecek sekilde pek cok türde dosya) saklanması
> gerekiyor. Bu dosyaları PostgreSQL'e yazdırmakmı evladır yoksa
> standart sekilde sunucunun her hangi bir klasöründe saklamakmı?

Sunucunun herhangi bir dizininde saklamak ve veritabanına sadece yolu
yazmak daha çok kullanılan yöntem.

Burada önemli nedenler şunlar PostgreSQL tarafında:

- Daha az veritabanı verisi ve kolay yedekleme/geri yükleme.

- Replikasyon. Şu anda sadece Mammoth Replicator lob replikasyonu
yapabiliyor. Trigger altyapısı nedeniyle Slony-I lob replike edemiyor.
Sadece bytea alanları replike edebiliyor.

Eğer sizce bu ikisi sorun değilse tabii ki PostgreSQL'de tutabilirsiniz
veriyi.

> Ben Veri Tabanının yedeği alıp bide ilgili dosyaların yedeğini almak
> istemiyorum. Tek yedekle işlem sonuçlansın istiyorum.

Yedek almak tek dert değil burada. Veriyi yüklemeniz gerekecek zamanı da
düşünün. PostgreSQL ile ilgili bir sorunda sadece düz veriyi geri
yüklemek varken lobları PostgreSQL'de tutarsanız onları da yüklemek
zorunda kalacaksınız...

> Birde Kullanıcılara "dosyalarınızı veri tabanında saklıyacaz, sizden
> başka kimse onlara ulaşamaz " dediğimizde (nedendir bimem) uygulamaya
> olan güven, saygı vb. artıyor. Kısacası fiyakalı bi uygulama oluyor.

Bunu encfs ile de yapabilirsiniz sanıyorum; yani dosya sistemi bazında
halledebilirsiniz işinizi. :)

> Ama sadece fiyakalı olması yetmiyor. Yedekleri geri yüklediğimde acaba
> sorun yasarmıyım? hızda belirgin bi azalma olurmu? vb.

Hızda sorun olmaz, Yedek konusunu yukarıda yazmıştım.

> Postgresql 8.1.4

8.1.8'e geçin bu arada. 8.2.3 demiyorum; zira yazın 8.3 çıkacak zaten.

Görüşmek üzere,

--
Devrim GÜNDÜZ
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Managed Services, Shared and Dedicated Hosting
Co-Authors: plPHP, ODBCng - http://www.commandprompt.com/


From: "murat akca" <muratakca(at)gmail(dot)com>
To: "Ali Dereli" <derelinux(at)gmail(dot)com>
Cc: pgsql-tr-genel(at)postgresql(dot)org, linux-programlama(at)liste(dot)linux(dot)org(dot)tr
Subject: Re: Veri Tabanında Dosya saklama
Date: 2007-03-22 08:29:00
Message-ID: e6ec84b60703220129x5a79ef4fiaf4029c61cc20d8f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-tr-genel

Merhaba,

Ben uzun zaman once calistigim projede yasadigimiz bazi sorunlari aktarmak
isterim. Bizim yeniden hazirladigimiz yazilim tum dosyalari veritabaninda
saklayan bir yazilimdi. Fakat belirli bir sure sonra veri tabaninin
buyuklugu 40 GB gibi bir buyukluge ulastigi icin calisilamaz bir hale
gelmisti. Yedegini almak vs cok buyuk problemler yasaniyordu.

Devrim Bey'inde belirttigi gibi eger veritabanina sadece dosyalarin sistem
uzerindeki adreslerini koysalardi veri tabani buyuklugu 100 MB civarina
dusuyordu.

Ve biz bu projeyi sadece veritabanini bu hale donusturmek icin almistik.
Ayrica ileride dosyalrinizi saklamak icin cok buyuk boyutta disk alanina
ihtiyaciniz olursa isletim sistemi ozellikleri yardimiyla (nfs yada samba
vb) daginik sistemler kurmaniz cok kolay olacaktir.

Iyi Calismalar

Murat Akca

On 3/22/07, Ali Dereli <derelinux(at)gmail(dot)com> wrote:
>
> Merhaba;
>
> İç ağda çalısacak web tabanlı uygulamada (JSP) kullanıcılara ait
> dosyaların (2 MB ı gecmeyecek sekilde pek cok türde dosya) saklanması
> gerekiyor. Bu dosyaları PostgreSQL'e yazdırmakmı evladır yoksa standart
> sekilde sunucunun her hangi bir klasöründe saklamakmı?
>
> 2 yıl önce bu tarz bi konu tartısılmıstı. Sadece PostgreSQL için degil
> genel manada Veri Tabanında dosyaların saklanması ek okuma-yazma getirdiği
> için tavsiye edilmiyordu.
>
> Ben Veri Tabanının yedeği alıp bide ilgili dosyaların yedeğini almak
> istemiyorum. Tek yedekle işlem sonuçlansın istiyorum. Birde Kullanıcılara
> "dosyalarınızı veri tabanında saklıyacaz, sizden başka kimse onlara ulaşamaz
> " dediğimizde (nedendir bimem) uygulamaya olan güven, saygı vb. artıyor.
> Kısacası fiyakalı bi uygulama oluyor.
>
> Ama sadece fiyakalı olması yetmiyor. Yedekleri geri yüklediğimde acaba
> sorun yasarmıyım? hızda belirgin bi azalma olurmu? vb.
>
> Siz ne öneriyorsunuz. Getiri-götürü ye bakıldıgında seçim hangisi olmalı.
>
> Centos 4.3
> Postgresql 8.1.4
> Tomcat 5.5
>
> Saygılar.
>


From: "Adnan DURSUN" <a_dursun(at)hotmail(dot)com>
To: <pgsql-tr-genel(at)postgresql(dot)org>
Subject: Re: [pgsql-tr-genel] Veri Tabanında Dosya saklama
Date: 2007-03-23 18:46:23
Message-ID: BAY106-DAV249DA1F483C3713BF4B10FA6A0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: 토토 사이트 PostgreSQL


Merhaba

Sorunuza genel veritabanları açısından cevap vereyim :

Veritabanında LOB data saklamanın

Avantajları :

1. Güvenlik
2. Sorgularda içerik araması kolaylığı
* indexleme yeteneği
* SQL kullanabilme
3. Yedekleme yönetiminin kolaylığı

Dejavantajları :

1. Transaction zamanlarını uzatması
(veritabanlarında bu sürenin kısa olması tavsiye olunur)
2. Veritabanı büyüklüğünü artırması

Bunlara değinmemin amacı; bu konuda grup içinde beyin cimnastiği yaratma isteğimdendir. Bazı veritabanlarının bu yöndeki yetenekleri çok gelişmiş olabilir.
Dolayısiyle dosya saklama seçimi, kullanılacak veritabanının yetenekleri değerlendirerek yapılmalıdır.

Saygılarımla

Adnan DURSUN
ASRIN Bilişim Ltd.
----- Original Message -----
From: Ali Dereli
To: pgsql-tr-genel(at)postgresql(dot)org ; linux-programlama(at)liste(dot)linux(dot)org(dot)tr
Sent: Thursday, March 22, 2007 9:22 AM
Subject: [pgsql-tr-genel] Veri Tabanında Dosya saklama

Merhaba;

İç ağda çalısacak web tabanlı uygulamada (JSP) kullanıcılara ait dosyaların (2 MB ı gecmeyecek sekilde pek cok türde dosya) saklanması gerekiyor. Bu dosyaları PostgreSQL'e yazdırmakmı evladır yoksa standart sekilde sunucunun her hangi bir klasöründe saklamakmı?

2 yıl önce bu tarz bi konu tartısılmıstı. Sadece PostgreSQL için degil genel manada Veri Tabanında dosyaların saklanması ek okuma-yazma getirdiği için tavsiye edilmiyordu.

Ben Veri Tabanının yedeği alıp bide ilgili dosyaların yedeğini almak istemiyorum. Tek yedekle işlem sonuçlansın istiyorum. Birde Kullanıcılara "dosyalarınızı veri tabanında saklıyacaz, sizden başka kimse onlara ulaşamaz " dediğimizde (nedendir bimem) uygulamaya olan güven, saygı vb. artıyor. Kısacası fiyakalı bi uygulama oluyor.

Ama sadece fiyakalı olması yetmiyor. Yedekleri geri yüklediğimde acaba sorun yasarmıyım? hızda belirgin bi azalma olurmu? vb.

Siz ne öneriyorsunuz. Getiri-götürü ye bakıldıgında seçim hangisi olmalı.

Centos 4.3
Postgresql 8.1.4
Tomcat 5.5

Saygılar.