Mood Reklam

Rehber

SQL ve Veritabanı Tasarımı: PostgreSQL, MySQL/MariaDB ve SQLite Arasında Nasıl Seçilir?

Veritabanı seçimi teknik bir ayrıntı gibi durur ama barındırmayı, raporlamayı ve verinin geleceğini belirler. PostgreSQL, MySQL/MariaDB ve SQLite’ın yeri, iyi tasarımın işaretleri ve yedek soruları.

· 4 dk okuma · Mood Reklam

Bilgisayar ve telefonda açık bir iş takip paneli: sipariş, randevu, teklif ve stok özetleri
İşletmeye özel yazılım paneli arayüzü — tasarım konsepti.

Bir yazılımcıyla konuşurken “veritabanı olarak PostgreSQL mi kullanalım, MySQL mi?” sorusuyla karşılaşabilirsiniz. Teknik bir soru gibi görünür; ama arkasında işletmeyi doğrudan ilgilendiren konular vardır: programın nerede barındırılacağı, verinin ne kadar sağlam tutulacağı ve yıllar sonra o verinin işinize yarayıp yaramayacağı. Bu yazı, kod bilmeden bu konuşmaya katılabilmeniz için hazırlandı.

Veritabanı ve SQL: kısa bir özet

Veritabanı, programınızın bilgileri sakladığı yerdir: müşteriler, siparişler, ürünler, randevular, ödemeler. İşletme yazılımlarının büyük çoğunluğu ilişkisel veritabanı kullanır. Bilgiler birbirine bağlı tablolarda durur; bir sipariş bir müşteriye, bir müşteri bir şehre bağlanır. Bu tablolar SQL adlı ortak bir sorgu diliyle okunur ve yazılır.

SQL’in işletme açısından önemi şudur: çok uzun süredir kullanılan, hemen her ilişkisel veritabanının anladığı ortak bir dildir. Veriniz SQL tabanlı bir sistemde düzgün tutuluyorsa, ileride programı değiştirseniz bile o veriyi başka bir sisteme taşımak mümkündür. Veriniz tek bir firmanın kapalı dosya biçimine kilitlenmez.

Üç yaygın seçenek, üç farklı yer

Veritabanı Nerede iyi oturur Nerede zorlanır
MySQL / MariaDB Paylaşımlı hosting ve cPanel ortamlarının çoğunda hazır gelir; web siteleri, işletme panelleri, sipariş ve stok takibi Çok karmaşık sorgu ve veri türlerinde PostgreSQL kadar esnek değildir; barındırma firmasının ayarları sınırlayıcı olabilir
PostgreSQL Raporlaması yoğun, kuralları sıkı, büyümesi beklenen sistemler; konum verisi ve esnek alanlar Paylaşımlı hostingde az bulunur; çoğu zaman sanal sunucu ya da yönetilen veritabanı hizmeti gerekir
SQLite Telefon uygulamasının cihaz içindeki verisi, çevrimdışı çalışma, tek kullanıcılı küçük araçlar Aynı anda çok kişinin kayıt yazdığı web panellerinde darboğaz olur; ayrı bir sunucu olarak çalışmaz

MySQL ve MariaDB aynı kökten gelir ve günlük kullanımda birbirine çok benzer; hosting paneliniz hangisini sunuyorsa programın onunla uyumlu yazılması yeterlidir. Bu ortamda yaygın kullanılan bir yolu PHP ve Laravel ile web paneli yazısında anlattık. Mobil uygulamalarda ise sık görülen yapı şudur: telefonda SQLite ile çevrimdışı kayıt, bağlantı gelince sunucudaki MySQL ya da PostgreSQL veritabanına aktarım.

İyi tasarımın işaretleri

Hangi veritabanı seçilirse seçilsin asıl farkı tasarım yaratır. Koda bakmadan da sorabileceğiniz ölçütler:

  • Bir bilgi tek yerde durur. Müşterinin telefonu her siparişe ayrı ayrı yazılmaz; müşteri kaydında durur, siparişler o kayda bağlanır. Numara değişince tek yerden düzeltilir.
  • Kurallar veritabanında da korunur. Aynı vergi numarasıyla iki cari açılamaması ya da silinmiş bir ürüne sipariş bağlanamaması gibi kurallar yalnızca ekranda değil, veritabanında da tanımlıdır.
  • Sık aranan alanlarda dizin vardır. Dizin (index), kitabın arkasındaki konu dizini gibidir; kayıtlar çoğaldığında aramaların yavaşlamasını önler.
  • Silmek yerine iz bırakılır. İptal edilen sipariş yok edilmez, iptal olarak işaretlenir; kimin neyi ne zaman değiştirdiği kaydedilir.
  • Türkçe baştan düşünülür. Karakter seti ve sıralama ayarı doğru seçilmezse “İ” ve “ı” içeren aramalar ve alfabetik listeler hatalı çalışır.

Her veri tabloya mı girmeli?

Belge tabanlı veritabanları (NoSQL olarak da anılır), yapısı sık değişen ya da çok büyük hacimde akan kayıtlar için tasarlanmıştır. İşletme yazılımlarının çoğunda ise veri birbirine sıkı bağlıdır: müşteri, sipariş, fatura, ödeme. Bu durumda ilişkisel veritabanı daha doğal bir seçimdir. Yazılımcınız NoSQL öneriyorsa nedenini sorun; “daha modern” tek başına bir gerekçe değildir. Üstelik PostgreSQL ve MySQL, esnek alanlar için JSON türünü de destekler; çoğu işte ikisi arasında kesin bir seçim yapmak zorunda kalmazsınız.

Excel’den veritabanına geçerken

İskenderun’da işini uzun süredir Excel dosyalarıyla yürüten bir işletme özel yazılıma geçtiğinde en çok vakit alan iş, eski verinin temizlenmesidir: aynı müşterinin birkaç farklı yazımı, boş bırakılmış hücreler, tarih yerine yazılmış notlar. Bu temizlik atlanırsa yeni sistem eski karmaşayı daha düzenli görünen bir yere taşır. Aktarımdan önce hangi sütunların gerçekten gerekli olduğuna karar verin. Veri düzene girdikten sonra ondan rapor ve gösterge paneli üretmek kolaylaşır; bu adımı işletme verisiyle rapor ve panel yazısında anlattık.

Veri kimin, yedek nerede?

  1. Veritabanının hangi sunucuda durduğunu ve erişim bilgilerinin kimde olduğunu yazılı olarak öğrenin.
  2. Yedeklerin ne sıklıkla alındığını, nerede saklandığını ve en son ne zaman geri yüklenerek denendiğini sorun. Hiç denenmemiş yedek, yedek sayılmaz.
  3. Verinin tamamını herkesin açabileceği bir biçimde (CSV ya da SQL dökümü) dışa aktarabildiğinizden emin olun.
  4. Kişisel veri tutuyorsanız kimin neye erişebildiğini sınırlayın; yasal yükümlülükler için bir uzmana danışın.

Veritabanı, işletmeye özel yazılım işinin görünmeyen ama en uzun ömürlü parçasıdır: ekranlar yenilenir, veri kalır. İskenderun’da iş akışınızı yerinde dinleyip verinizin nasıl düzenleneceğini kapsamın içinde yazılı hâle getirmek için arayabilirsiniz.

Okumaya devam edin

İlgili yazılar

Fiyat ve teklif

Fiyat için bizi arayın.

Fiyatı telefonda veriyoruz. Uygulama yapılacak yerin fotoğrafını ve yaklaşık ölçüsünü önceden gönderirseniz görüşme çok daha kısa sürer; net ölçü gereken işlerde yerinde keşif planlarız.

  • Cephe, vitrin veya aracın fotoğrafı
  • Yaklaşık en ve boy ölçüsü (cm ya da m)
  • Varsa logo ve yazılacak metin
Hemen Ara WhatsApp Teklif Al