PostgreSQL

PostgreSQL, güvenilirliği ve SQL standardına sıkı bağlılığıyla bilinen açık kaynaklı bir ilişkisel veritabanı. Doğruluğun ve erişim kurallarının önemli olduğu, karmaşık ve birbirine bağlı verilerle çalışan uygulamalarda onu kullanıyoruz.

PostgreSQL Nedir?

Kısaca Postgres olarak da anılan PostgreSQL, açık kaynaklı bir ilişkisel veritabanı sistemidir. Veriyi müşteriler, siparişler ve randevular gibi birbirine bağlı tablolarda saklar; bu tablolar, veritabanlarının standart dili olan SQL ile sorgulanır. Kökeni, Kaliforniya Üniversitesi Berkeley'de 1986'da başlayan POSTGRES projesine dayanır; bugünkü adını 1996'dan beri taşır.

Her değişiklik bir işlem (transaction) içinde yürür: ya tamamı kaydedilir ya da hiçbiri; böylece yarıda kesilen bir işlem veriyi yarım bırakmaz. Kısıtlar (constraints) hatalı kayıtları daha saklanmadan reddeder. Klasik tabloların ötesinde PostgreSQL JSON belgelerini saklayıp dizinleyebilir, Türkçe ve Arapça dahil pek çok dilde kök bulmayı (stemming) destekleyen yerleşik bir tam metin aramasına sahiptir ve örneğin coğrafi veriler için eklentilerle genişletilebilir.

PostgreSQL ücretsizdir ve kendi adını taşıyan, serbest kullanıma izin veren bir açık kaynak lisansla dağıtılır. Tek bir şirkete ait olmayan, dünya çapında bir topluluk olan PostgreSQL Global Development Group tarafından geliştirilir. Yaklaşık yılda bir yeni ana sürüm çıkar, her biri beş yıl desteklenir ve düzeltmeler en az üç ayda bir yayımlanır.

PostgreSQL'i Nerede Kullanıyoruz?

Bir uygulamanın verisi karmaşık, birbirine bağlı ve doğru tutulması önemli olduğunda PostgreSQL'i seçiyoruz. Özellikle şu işlerde kullanıyoruz:

  • Bağlantılı Veri İçeren Uygulamalar

    Müşteri portallarında, rezervasyon sistemlerinde ve şirket içi araçlarda müşteriler, siparişler, randevular ve faturalar birbirine bağlıdır. PostgreSQL bu bağları zorunlu tutar; uygulama büyüdükçe veri tutarlı kalır.

  • JSON ile Esnek Veri

    Üründen ürüne değişen özellikleri ya da zamanla değişen form yanıtlarını normal tabloların yanında JSON olarak saklıyoruz; bu veriler yine de aranabilir ve dizinlenebilir.

  • Erişim Kuralları ve Roller

    Uygulamanın her parçası veritabanına yalnızca ihtiyaç duyduğu yetkilerle bağlanır; satır düzeyinde güvenlik (row-level security) ise her kullanıcıyı doğrudan veritabanında kendi kayıtlarıyla sınırlayabilir.

  • Yedekleme ve Geri Yükleme

    Otomatik yedekler kuruyor, kopyaları ayrı bir yerde tutuyor ve geri yüklemeyi test ediyoruz. Sürekli arşivleme sayesinde veritabanı yalnızca dün geceye değil, belirli bir ana geri döndürülebilir.

Neden PostgreSQL?

  • Güvenebileceğiniz Veri

    İşlemler ve kısıtlar, sistemi aynı anda pek çok kişi kullanırken ya da bir süreç yarıda kesildiğinde bile verinin doğru kalmasını sağlar. Hatalar sonradan bir raporda fark edilmez, daha kapıda reddedilir.

  • Standartlar ve Esneklik

    PostgreSQL SQL standardını yakından izler; bu sayede bilgi ve kod başka ortamlara taşınabilir. JSON desteği ve eklentiler ise klasik tabloların karşılamadığı ihtiyaçları karşılar.

  • Açık Kaynak ve Bağımsız

    Lisans ücreti de tek bir sahibi de yoktur: veritabanı dünya çapında bir topluluk tarafından açıkça geliştirilir ve her sürümün destek takvimi önceden yayımlanır.

Projenizde Nasıl İlerliyoruz?

İşe veriyi sizinle birlikte modelleyerek başlıyoruz: neler saklanacak, parçalar birbirine nasıl bağlanacak, kim neyi görebilecek ya da değiştirebilecek. Buna göre tabloları ve kurallarını tasarlıyor, her değişikliği bir migration olarak yazıyor ve gerçek veri girmeden önce gerçekçi örnek verilerle test ediyoruz.

Yayından önce dizinlerin en yoğun sorguları hızlı tuttuğunu, her bağlantının yalnızca ihtiyaç duyduğu yetkilere sahip olduğunu ve yedeklerin hem alındığını hem de gerçekten geri yüklenebildiğini kontrol ediyoruz. Sunucunun desteklenen bir PostgreSQL sürümünde çalıştığını ve yalnızca şifreli bağlantı kabul ettiğini de doğruluyoruz.

Web Tasarım ve Yazılım

Sıkça Sorulan Sorular

Yardım Merkezi
PostgreSQL mi, MySQL mi: projeme hangisi uygun?

İkisi de güvenilir ilişkisel veritabanlarıdır. Karmaşık veri, sıkı kurallar ya da yoğun JSON kullanımı olan uygulamalarda genellikle PostgreSQL'i tercih ediyoruz; standart hostingdeki daha sade sitelerde ise MySQL çoğu zaman pratik seçimdir. Önerimizi projenize göre yapıyoruz.

Lisans ücreti var mı?

Hayır. PostgreSQL ticari kullanım dahil her kullanım için ücretsizdir. Yalnızca üzerinde çalıştığı sunucu ya da yönetilen veritabanı hizmeti için ödeme yaparsınız.

Verilerim nasıl yedekleniyor?

Ana sunucudan ayrı saklanan düzenli otomatik yedekler kuruyor ve geri yüklemeyi test ediyoruz. Bir sorun çıkarsa veriler yakın bir zaman noktasına geri döndürülebilir.

Verilerime kimler erişebilir?

Yalnızca ihtiyacı olan kişiler ve uygulamanın ilgili parçaları, her biri sınırlı yetkilerle. Bağlantılar şifrelidir; teslimde kendi veritabanınızın erişim bilgilerini size veriyoruz.

Doğru Araç, Doğru Ekiple

Hangi araçların işinize yarayacağını birlikte belirleyelim; projenize uygun bir yol haritasıyla dönelim.