33 ポイント 投稿者 xguru 2023-08-14 | 11件のコメント | WhatsAppで共有
  • VC資金調達も、DevRelチームもなく、25年間かけてゆっくり進化した
  • Ingres(UCバークレー、1970〜1985)—> Postgres95 —> PostgreSQL
    • Postgres = "Post Ingres"
  • 最初の言語はSQLですらなくQUELだった。SQLサポートはPostgres95がリリースされた1995年に追加された
  • 1996年にPostgreSQL 6.0がリリースされ、開発チームが作られて学界の外へ出た
  • 2000年からPostgresはさまざまな機能を導入し、成長を始めた
    • Write-Ahead-Log (WAL)、Outer JOIN、TOAST、Drop column、IPv6 など
  • 2005年になるとさらに成熟し、かなり安定したDBとして認識され始めた
    • 豊富なトランザクションサポート、広範なSQLサポート、そしてWrite-Ahead-Log (WAL) と VACUUM の改善
    • 同時インデックス作成、Warm Standbyサーバー、Arrays/UUID/ENUM/XMLデータ型、2フェーズコミットなど
  • 2009年のPostgres 8.4からWindow関数とCTEがサポートされた
  • この頃からPostgresは広範なデータエコシステムに影響を与え始めた
    • 堅牢なコードベースとライセンスのおかげで、多くの企業がPostgresを採用してフォークし始めた
    • これらのフォークは現在ではほとんど残っていない: Aster Data は Teradata に買収、Truviso は Cisco に買収、Netezza は IBM に買収…
  • フォーク版が多数生まれたが、Postgresは前進を続けた
  • Postgresがクールになり始めたのは、2010年のPostgres 9.0と9.1のリリースからだった
    • listen/notify(DBに対するpub-sub)サポート
    • hstore(キー/バリューデータ型)
    • pg_upgradeによる簡単なアップグレード
    • GIN/GiSTインデックスの登場により、標準のB-Tree Indexを超えた
  • 拡張機能は常にPostgresの一部だったが、リファクタリングによってより簡単に使えるようになった
  • 異なるPostgres DBを接続できる外部データラッパーが開発された
  • 2012年にJSONを導入
    • NoSQL DBの台頭(Mongo & Couchbase)
    • 開発者たちは自分たちのデータを使う別の方法を求め始めていた
    • 当初は応急的なサポートだったが、2年後にようやく本格対応した。それでも人々の関心を引くには十分だった
    • Herokuが台頭し、PostgresをデフォルトDBとして選択
  • 2014年のPostgres 9.4から、JSONBデータ型によって本格的なJSONサポートを開始
    • JSONのバイナリ表現により、GINインデックスで簡単にインデックス化できるようになった
    • JSONBはいまでも、人々が聞いて最も驚くデータ型のひとつ
  • Logical decoding により、その後数年間のCDC(変更データキャプチャ)をより簡単にする土台が築かれた
  • 9.3の頃、AmazonがRe:InventでRDSにおけるPostgreSQLサポートを発表
    • 筆者自身もRe:Inventに何度も参加したが、聴衆が総立ちで拍手したのはこの発表だけだった
  • 2016年の9.5、9.6、10バージョン
    • Row Level Security、Logical Replication、Table Partitioning などが導入された
    • これらの機能は個人コントリビューターたちの貢献だった
  • では、いつなのか?
    • 私の考えでは、HerokuとJSONの組み合わせがなければ、Hyperscalerがサポートを追加することはなかっただろう
    • しかし、安定したリリースサイクルと、品質を重視した性能・機能の継続的な改善がなければ、そもそもチャンスはなかったはずだ

11件のコメント

 
cosine20 2023-08-16

おお、DB に対する Pub/Sub は興味深いですね

 
inthelife 2023-08-16

ビングレ、チャングレ、ポストグレ!

 
llmrocks 2023-08-15

でも、supabaseのほうがもっとクールだ

 
ggg213 2023-08-15

column の位置を変更できるようにしてください

 
ruinnel 2023-08-14

誤字報告: ライセンス おかげで -> ライセンスのおかげで

 
n1ghtc4t 2023-08-14

かっこいい〜! そうだろう!!!

 
jujumilk3 2023-08-14

好循環するOSSのお手本のような感じすらします

 
qurare 2023-08-14

LK-99のように、数十年にわたって積み上げてきたビルドアップが生むロマンが…

 
jujumilk3 2023-08-14

ロマン合格……

 
bbulbum 2023-08-14

ポストグレス、ファイト!

 
pkj3186 2023-08-14

かっこいい、ポストグレスよ