PostgreSQL Table Design

Veri tipleri, indeksleme, kısıtlar, performans desenleri ve gelişmiş özellikleri kapsayan PostgreSQL'e özgü bir şema tasarım disiplini, yük altında ayakta kalan bir şema ile zamanla şişip yavaşlayan bir şema arasındaki fark.

Veritabanının gerçek tuzaklarını (FK sütunları otomatik indekslenmez, UNIQUE birden çok NULL'a izin verir, kimlik boşlukları normaldir) ve indekslerde tahmin-etme-ölç yaklaşımını kodlar. Karşılığı hızlı sorgular, güvenilir veri ve emin şekilde dağıtabileceğiniz şema değişiklikleri.

₺369 tek seferlik
Bir kit içine ekle →

Fiyatlara KDV (%20) dahildir. · Gerçek ajans işinden çıkarıldı · tek seferlik, kilit yok

  • Tür Skill
  • Kategori Veri & Analitik
  • Teslimat E-posta · anında
  • Lisans Tek seferlik
Çalışma önizlemesi
forgehouse, postgresql-table-design

Çalışmanın içinden · kara kutu yok

Satın almadan önce işin kendisini gör.

Skill'in tek bir migration gönderilmeden önce her tablo için kolon kolon yürüdüğü tasarım döngüsü. Kara kutu yok, yaptığı iş tam olarak bu:

  1. Her kolon dört soruya cevap vermek zorunda: hangi okuma sorgusu kullanıyor, NULL anlamsal olarak ne demek, ne sıklıkta güncelleniyor ve kardinalitesi ne. Cevap veremeyen kolon silinir, çünkü gerekçesiz kolon şişkinliğe, ölü indekse ve yavaş vacuum'a dönüşür.
  2. Tip disiplini pazarlıksızdır: anahtarlar için BIGINT identity, zaman için TIMESTAMPTZ, varchar(n) yerine CHECK kısıtlı TEXT, para için NUMERIC. Yasaklı tip listesi (zaman dilimi olmayan timestamp, char(n), money, serial) incelemede uygulanır.
  3. Önce 3NF'e normalize edilir, denormalizasyon yalnızca kanıtla yapılır: bir sıcak yol EXPLAIN ANALYZE'da 100ms üzeri join maliyeti göstermeden hiçbir önbellek kolonu eklenmez, veri kopyalamadan önce materialized view denenir.
  4. Kısıt savunması katman katman kurulur: şema seviyesinde NOT NULL artı CHECK, açık ON DELETE davranışlı foreign key ve elle eklenen FK indeksi (Postgres FK kolonlarını kendiliğinden indekslemez), tek null tek satır demekse NULLS NOT DISTINCT ile UNIQUE.
  5. İndeks serpiştirilmez, hak edilir: yalnızca EXPLAIN ANALYZE ile yavaşlığı kanıtlanan sorgular indeks alır, uyduğu yerde partial ve covering indeks tercih edilir, aylık pg_stat_user_indexes incelemesi sıfır taramalı her indeksi düşürür.
  6. Canlıya çıktıktan sonra şema gerçek trafikle gelişmeye devam eder: pg_stat_statements'ın en ağır 20 sorgusu haftalık incelenir, bölümleme yalnızca tutarlı bir filtre anahtarıyla yaklaşık 100 milyon satırı geçince devreye alınır.
Kullanım senaryoları · taktığında neler oluyor

Tek güç kaynağı. 6 hat dışarı.

postgresql-table-design · çekirdek

çekirdek aktif · 6 hat

  1. Temel ilkelerden 3NF'de yeni bir şema tasarlama

    ✓ temel ilkelerden 3nf'de
  2. Doğru indeks türünü seçme (B-tree, GIN, GiST, BRIN, kısmi, kapsayan)

    ✓ doğru indeks türünü seçme
  3. Para, zaman, JSONB, dizi ve aralıkları doğru tiplerle modelleme

    ✓ para, zaman, jsonb, dizi
  4. Çok büyük tabloları aralık, liste veya hash ile bölümleme

    ✓ çok büyük tabloları aralık
  5. Yoğun güncelleme ve yoğun ekleme yüklerini ayarlama

    ✓ yoğun güncelleme ve yoğun
  6. Eşzamanlı indeksler ve bloklamayan DDL ile şemayı güvenli evrimleştirme

    ✓ eşzamanlı indeksler ve b…
Kazanımlar · elinde kalanlar

Aldıkların sende kalır.

Zamanı ileri sar. Ne kaldığını izle.

Sonsuza dek

Sahip olmak tam olarak bu.

Kiralık yığın

yapay zekâ yazım aracı: abonelik

süresi doldu · erişim gitti

analiz paketi: abonelik

süresi doldu · erişim gitti

tasarım platformu: abonelik

süresi doldu · erişim gitti

(geriye bir şey kalmadı)

Senin ocağın

  1. Veritabanı katmanında zorlanan veri bütünlüğü; böylece hatalar ve ham SQL durumu bozamaz

    lisans: kalıcı
  2. Yalnızca gerçekten çalıştırdığınız erişim yollarını indeksleyerek daha hızlı sorgular

    lisans: kalıcı
  3. Kullanılmayan indeksleri kaldırıp erken denormalizasyondan kaçınarak daha düşük depolama ve yazma maliyeti

    lisans: kalıcı
  4. Tam tablo yeniden yazımı ve bloklayan kilitlerden kaçınan daha güvenli göçler

    lisans: kalıcı

abonelikler biter · tapular bitmez

Ne içerir · eksiksiz manifest

Kutudaki her şey.

Bir parçayı eline al. Çalışırken izle.

Açık kullanma-listesiyle veri tipi rehberi (timestamp, char(n), money, serial kullanma)

parça 01 / 06 · kutuda

6 parça · tek çalışan sistem · e-postayla anında teslim

Kimler için

Bu herkes için dövülmedi.

  • Araç kiralamayı sahip olmaya tercih ediyorsan, sana göre değil.
  • Yığınını senin yerine başkası yönetsin istiyorsan, sana göre değil.
  • Tahmin etmekten memnunsan, sana göre değil.
Hâlâ burada mısın? Güzel.

PostgreSQL şemalarının hızlı, dayanıklı ve güvenle evrimleştirilebilir olmasını isteyen arka uç mühendisleri ve veritabanı yöneticileri için.

o zaman bu senin için dövüldü.

Hangi AI ile çalışır

Tasarımı gereği evrensel: her yapay zekada çalışır. Açık Agent Skills + MCP biçiminde gelir (Claude’da yerleşik); ChatGPT, Gemini, Cursor ve Copilot aynı dosyaları kendine uyarlar.

  • Claude Yerleşik biçim
  • ChatGPT Açık standartla uyarlanır
  • Gemini Açık standartla uyarlanır
  • Cursor Açık standartla uyarlanır
  • Copilot Açık standartla uyarlanır
Sorular · hâlâ havada

Aklındakini yakala.

hava temizlendi. seninle ocak arasında hiçbir şey kalmadı.
bir kıvılcım yakala: ocak cevaplar

  1. Zaten üretimde bir şemam var, bu yalnızca sıfırdan tasarım için mi?

    Hayır. Güvenli şema evrimi işin çekirdeğidir: eşzamanlı indeks kurulumları, bloklamayan DDL, kullanılmayan indeksleri kaldırma ve yoğun güncelleme ile yoğun ekleme tabloları için yüke özgü ayar, hepsi yük altındaki sistemlere uygulanır. Sıfırdan 3NF tasarımı da kapsanır ama eldekiyle yaşamak da.

  2. Hangi indeksleri eklemem gerektiğine nasıl karar veriyor?

    Tahmin etme, ölç: gerçekten çalıştırdığınız erişim yollarını indeksleyin, kullanım verisiyle doğrulayın, kullanılmayanı kaldırın. Rehber B-tree, kompozit, kapsayan, kısmi, ifade, GIN, GiST ve BRIN türlerini kapsar; yabancı anahtar sütunlarının Postgres'te otomatik indekslenmediği klasik tuzağı da kodlar.

  3. MySQL veya başka veritabanlarına uygulanır mı?

    Hayır, bu bilinçli bir tercihtir. Değer tam da PostgreSQL'e özgü davranıştadır: birden çok NULL'a izin veren UNIQUE, normal olan kimlik boşlukları, CONCURRENTLY indeks kurulumu, kullanılmayacak tip listesi. MySQL'e çevirmek orada düpedüz yanlış olan tavsiyeleri taşırdı.

  4. Nasıl teslim edilir?

    Satın alımdan hemen sonra e-posta ile iletilir, kuruluma hazır, anında indirilir; bekleme yok.

  5. Tek seferlik mi, abonelik mi?

    Tek seferlik alımdır; abonelik veya gizli ücret yoktur. Fiyata KDV (%20) dahildir.

  6. İade alabilir miyim?

    Dijital ürün olduğu için indirildikten sonra iade yapılmaz. Bu yüzden ne içerdiğini ve kime uygun olduğunu burada açıkça paylaşıyoruz.