33 poin oleh xguru 2023-08-14 | 11 komentar | Bagikan ke WhatsApp
  • Berevolusi perlahan selama 25 tahun tanpa pendanaan VC maupun tim DevRel
  • Ingres (UC Berkeley, 1970~1985) —> Postgres95 —> PostgreSQL
    • Postgres = "Post Ingres"
  • Bahasa pertamanya bahkan bukan SQL melainkan QUEL. Dukungan SQL ditambahkan saat Postgres95 dirilis pada 1995
  • Pada 1996, saat PostgreSQL 6.0 dirilis, tim pengembang dibentuk dan proyek ini keluar dari ranah akademik
  • Sejak 2000, Postgres mulai berkembang dengan memperkenalkan berbagai fitur
    • Write-Ahead-Log (WAL), Outer JOIN, TOAST, Drop column, IPv6,..
  • Pada 2005, Postgres menjadi lebih matang dan mulai dipandang sebagai DB yang cukup stabil
    • Dukungan transaksi yang kaya, dukungan SQL yang luas, serta peningkatan pada Write-Ahead-Log (WAL) dan VACUUM
    • Pembuatan indeks konkuren, server warm standby, tipe data Arrays/UUID/ENUM/XML, two-phase commit, dan lain-lain
  • Sejak Postgres 8.4 pada 2009, Window functions dan CTE mulai didukung
  • Sekitar masa ini, Postgres mulai memengaruhi ekosistem data yang lebih luas
    • Berkat fondasi kode yang kokoh dan lisensinya, banyak perusahaan mengadopsi Postgres lalu mulai membuat fork
    • Fork-fork ini sekarang hampir tidak tersisa: Aster Data diakuisisi Teradata, Truviso diakuisisi Cisco, Netezza diakuisisi IBM..
  • Meski banyak versi fork bermunculan, Postgres terus melaju
  • Postgres mulai menjadi keren sejak rilis Postgres 9.0 dan 9.1 pada 2010
    • Dukungan listen/notify (pub-sub terhadap DB)
    • hstore (tipe data key/value)
    • Upgrade yang mudah melalui pg_upgrade
    • Peluncuran indeks GIN/GiST yang melampaui indeks B-Tree standar
  • Ekstensi selalu menjadi bagian dari Postgres, tetapi melalui refactoring menjadi lebih mudah digunakan
  • Foreign data wrapper dikembangkan untuk menghubungkan DB Postgres yang berbeda
  • JSON diperkenalkan pada 2012
    • Kebangkitan DB NoSQL (Mongo & Couchbase)
    • Pengembang mulai menginginkan cara lain untuk memanfaatkan data mereka
    • Awalnya didukung dengan cara seadanya, dan baru dua tahun kemudian didukung dengan benar. Namun itu sudah cukup untuk menarik perhatian orang
    • Saat Heroku mulai naik daun, ia memilih Postgres sebagai DB default
  • Sejak Postgres 9.4 pada 2014, dukungan JSON yang sesungguhnya dimulai lewat tipe data JSONB
    • Representasi biner dari JSON membuatnya mudah diindeks dengan indeks GIN
    • JSONB masih menjadi tipe data yang paling mengejutkan bagi banyak orang saat mendengarnya
  • Logical decoding meletakkan dasar agar CDC (change data capture) menjadi lebih mudah dalam beberapa tahun berikutnya
  • Sekitar 9.3, Amazon mengumumkan dukungan PostgreSQL di RDS melalui Re:Invent
    • Penulis sudah beberapa kali ikut Re:Invent, dan ini satu-satunya pengumuman yang pernah mendapat standing ovation dari audiens
  • Pada 2016, versi 9.5, 9.6, dan 10
    • Row Level Security, Logical Replication, Table Partitioning, dan lain-lain diperkenalkan
    • Fitur-fitur ini merupakan kontribusi dari kontributor individu
  • Jadi kapan tepatnya?
    • Menurut saya, tanpa kombinasi Heroku dan JSON, para hyperscaler tidak akan menambahkan dukungan
    • Tetapi tanpa siklus rilis yang konsisten serta peningkatan berkelanjutan pada performa dan fitur dengan fokus pada kualitas, peluang itu juga tidak akan pernah ada

11 komentar

 
cosine20 2023-08-16

Oh, Pub/Sub untuk DB itu menarik ya

 
inthelife 2023-08-16

Binggrae Janggrae Postgrae!

 
llmrocks 2023-08-15

Tapi supabase lebih keren

 
ggg213 2023-08-15

Tolong izinkan mengubah posisi kolom

 
ruinnel 2023-08-14

Laporan typo: 라이선스 벅분에 -> 라이선스 덕분에

 
n1ghtc4t 2023-08-14

Keren~ banget! Betul!!!

 
jujumilk3 2023-08-14

Rasanya seperti contoh buku teks dari OSS yang menciptakan siklus positif.

 
qurare 2023-08-14

Romantisme yang dibangun lewat akumulasi selama puluhan tahun seperti LK-99...

 
jujumilk3 2023-08-14

Lulus dengan romantis....

 
bbulbum 2023-08-14

Semangat, Postgres!

 
pkj3186 2023-08-14

Keren banget, Postgres.