Konular

EBooklar

Postgresql nedir?postgresqlin tarihçesi?postgresqlin özellikleri nelerdir?

POSTGRESQL VE ÖZELLİKLERİ

      Postgresql'in ilk olarak kısa tarihçesine bakalım;
 
      PostgreSQL’in  geçmişi 1977’de Kaliforniya’ daki Berkeley Üniversitesinde (UCB) yapılan çalışmalara dayanır. UCB’de 1977-1985 yılları arasında Ingres adı verilen relational veritabanı geliştirildi. Ingres kodu Relational Technologies/Ingres Corporation tarafından satın alındı ve ilk ticari relational veritabanlarından biri oldu.Aynı süreçte, Berkeley’deki relational veritabanı sunucusu üzerindeki çalışmalar  1986 – 1994 arasında devam etti ve bu veritabanı Postgres adını aldı. Bu kod ise Illustra tarafından satın alındı ve Informix olarak geliştirilmeye başlandı.1994’te SQL özellikleri Postgres’e eklendi ve bu veritabanı Postgres95 adını aldı.
1996 yılında Postgres tanınmaya başlandı ve kod geliştirmesi için e-posta listesi açılmasından sonra bir çok gönüllü Postgres’i geliştirmek için çalışmaya başladı. Bu aşamadan sonra Postgres son kez adını değiştirdi ve adındaki “95” ekinin yerine daha uygun olan SQL konmasına karar verildi. Bunun nedeni Postgres’in artık SQL standartlarını desteklemesiydi. Böylece PostgreSQL doğdu.

Postgresql Nedir?
    
       PostgreSQL, diğer bir çok gelişmiş veritabanında olduğu gibi dışarıdan kendisine bağlanan istemciler ile belirli bir dilde konuşup anlaşabilmek için bir Sunucu/İstemci protolüne sahiptir. Herhangi bir istemci bu mimarinin getirdiği standartlar doğrultusunda veritabanı üzerinde protokolce desteklenen tüm sorgulama işlemlerini gerçekleştirebilir.Bunun için yapılması gereken tek şey veritabanı sunucusu ile kurulacak bir soket bağlantısı üzerinden basit read/write sistem çağrılarında bulunmaktan ibaret olacaktır.Fakat hiçbir kullanıcı - özel amaçlar doğrultusunda sıfırdan bir kütüphane geliştirmediği sürece - PostgreSQL'in bu iç işleyişi ile uğraşmak istemez. İşte bu noktada devreye API (Application Programming Interface/Uygulama Programlama Arayüzü) kavramı girmektedir.
    PostgreSQL, dışarıdan kendisine bağlanacak programlama dilleri için bir ara katman oluşturan uygulama arayüzlerine sahiptir. Bu sayede, veritabanına ulaşmak isteyen programcılar, PostgreSQL'in kendi iç işleyişi ile ilgili hiçbir çalışma mekanizmasından haberdar olmak zorunda kalmadan da, kullandıkları dilin kendilerine sundukları API kütüphanesinden faydalanarak kolaylıkla veritabanı ile etkileşime geçip, ilgili sorgulamalarını gerçekleştirebilirler.Yazılım piyasasındaki neredeyse tüm popüler programlama dilleri PostgreSQL veritabanı için bir programlama arayüzünü beraberinde sunmaktadır. 
     
Postgresql'in Özellikleri
   
     Veritabanı büyüklüğü:Sınırsız
     PostgreSQL bir veritabanının toplam büyüklüğü için herhangi bir sınır koymaz.PostgreSQL’in veriyi düzenleme yönteminden dolayı çok fazla tablo içeren veritabanlarında başarım gittikçe düşer. PostgreSQL veriyi saklamak için çok sayıda dosya kullanacaktır, ve işletim sistemi tek bir dizinde bu kadar çok dosyayı yönetemezse, başarım düşecektir.

     Tablo büyüklüğü: 16Tb-64Tb
     PostgreSQL normalde tablo verilerini 8k’lık parçalarda tutar. Bu blokların sayıları 32-bit signed integer kadar sınırlıdır (2 milyarın hemen üstü) ve 16 TeraByte kadar bir tablo büyüklüğü sağlar. Temel blok büyüklüğü PostgreSQL kurulurken 32k ya kadar  yükseltilebilir ve bu da teorik olarak 64 TB’lık bir sınır getirir.Bazı işletim sistemleri dosya büyüklükleri için bir sınır koyarlar. Bu nedenden, PostgreSQL tablo verilerini her biri en fazla 1GB büyüklükte olabilecek çoklu dosyalarda tutar. Büyük tablolar için bu bir çok dosya anlamına gelecek ve daha önce de belirttiğim gibi sistem başarımının düşmesine neden olacaktır.Bu büyüklük işletim sisteminden bağımsızdır.

     Tablodaki satır sayısı: Sınırsız
     PostgreSQL tablodaki satırlarda herhangi bir sınır koymaz. Aslında toplam  COUNT fonksiyonu 32-bit tamsayı döndürür, dolayısıyla 2 milyar satırın üzerindeki tablolar için COUNT anlamsız olacaktır.Bu değer sürüm 7.1 ve sonrasında sınırsız olmuştur.

     Tablo indexleri: Sınırsız
     Tablo üzerinde yaratılabilecek indexlerde PostgreSQL tarafından konan herhangi bir limit yoktur. Ancak unutulmaması gereken, oldukça fazla kolon içeren bir tabloda çok fazla index yaratma çalışırsak başarım gittikçe düşecektir.

     Field büyüklüğü: 1Gb
     PostgreSQL , sürüm 7.1 ve sonrasında bir tablodaki herhangi bir field için 1 GB’lik bir sınır getirmiştir. Pratikte bu limit sunucunun veriyi işleme ve istemciye transfer etmesi için gerekli hafıza miktarından gelir.
  
     Tablodaki kolon sayısı: 250+
     PostgreSQL’de tutulabilecek en fazla kolon sayısı, konfigure edilmiş blok büyüklükleri ve kolon tiplerine bağlıdır. Varsayılan değer olarak blok büyüklüğü olan 8k’da en az 250 kolon saklanabilir, bu sayı eğer fieldlar oldukça basit ise (tamsayı değerleri gibi) 1600 e kadar çıkabilir.Blok büyüklüğünü arttırmak eş zamanlı olarak bu limitleri de arttırır.

     Satır büyüklüğü : Sınırsız
     Bir satırın büyüklüğü için bir sınır yoktur, ancak kolonlar ve onların büyüklüğü yukarıda anlatıldığı gibi sınırlıdır.Bu sınır, sürüm 7.1’den sonra kaldırılmıştır.
    
    Desteklediği İşletim Sistemleri
    Windows , Mac/Os X , Linux , BSD , Unix .
  

Süleyman AYDOSLU
 

Yorumunuzu Ekleyin


Yorumlar

  1. mpolat
    tşk
    22 Mart 2011 17:03:22, Salı Like
  • Veritabanı Nedir?
  • Veritabanı Nedir? ~ 91,325

    Veritabanı basit olarak bilgi depolayan bir yazılımdır. Bir çok yazılım bilgi depolayabilir ama aradaki fark, veritabanın bu bilgiyi verimli ve hizli bir şekilde yönetip degiştirebilmesidir. Veritabanı, bilgi sisteminin kalbidir ve etkili kullanmakla değe...


  • Sql Komutları
  • Sql Komutları ~ 88,379

    Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı












  • Join İşlemleri
  • Join İşlemleri ~ 28,072

    İlişkisel veritabanının en temelinde birden fazla tablo üstünde birlikte işlem yapabilmek yatar. Bu sayede verilerin tekrarlaması önlenmiş olur ve sonuçta veri yönetimi kolaylaşır.


  • View Oluşturma ~ 26,626

    Sql komutlarından view oluşturma ve faydaları, myadminde gösterimi









  • Sql Komutları ~ 19,153

    Dıstınct, ın, not ın, ınselect..., any, all, exısts, not exısts, unıon, except, between









  • Joinler
  • Joinler ~ 16,036

    Joinler, inner join, left join, right join