33 पॉइंट द्वारा xguru 2023-08-14 | 11 टिप्पणियां | WhatsApp पर शेयर करें
  • VC funding या DevRel team के बिना 25 साल तक धीरे-धीरे विकसित हुआ
  • Ingres(UC Berkeley, 1970~1985) —> Postgres95 —> PostgreSQL
    • Postgres = "Post Ingres"
  • इसकी पहली भाषा SQL भी नहीं बल्कि QUEL थी। SQL support 1995 में Postgres95 के release के साथ जोड़ा गया
  • 1996 में PostgreSQL 6.0 release होने पर development team बनी और यह academia से बाहर आया
  • 2000 से Postgres ने कई features अपनाने शुरू किए और growth शुरू हुई
    • Write-Ahead-Log (WAL), Outer JOIN, TOAST, Drop column, IPv6,..
  • 2005 तक आते-आते इसे अधिक mature और काफ़ी stable DB के रूप में पहचाना जाने लगा
    • समृद्ध transaction support, व्यापक SQL support, और Write-Ahead-Log (WAL) तथा VACUUM में सुधार
    • concurrent index creation, Warm standby server, Arrays/UUID/ENUM/XML data types, two-phase commit आदि
  • 2009 में Postgres 8.4 से Window functions और CTE support किया गया
  • इसी दौर से Postgres ने व्यापक data ecosystem पर असर डालना शुरू किया
    • मज़बूत codebase और license की वजह से कई कंपनियों ने Postgres को अपनाकर fork करना शुरू किया
    • ये forks अब लगभग बचे नहीं हैं: Aster Data को Teradata ने अधिग्रहित किया, Truviso को Cisco ने, Netezza को IBM ने..
  • fork versions बहुत बने, लेकिन Postgres आगे बढ़ता रहा
  • Postgres का कूल बनना 2010 में Postgres 9.0 और 9.1 के release से शुरू हुआ
    • listen/notify(DB के लिए pub-sub) support
    • hstore(key/value data type)
    • pg_upgrade के ज़रिए आसान upgrade
    • GIN/GiST indexes के आने से standard B-Tree Index से आगे बढ़ा
  • extensions हमेशा से Postgres का हिस्सा रहे, लेकिन refactoring के ज़रिए उन्हें और आसानी से इस्तेमाल किया जा सका
  • अलग-अलग Postgres DB को जोड़ने के लिए foreign data wrappers विकसित किए गए
  • 2012 में JSON जोड़ा गया
    • NoSQL DB का उभार(Mongo & Couchbase)
    • developers अपने data को इस्तेमाल करने के दूसरे तरीके चाहने लगे
    • शुरुआत में यह थोड़ा workaround जैसा support था, और 2 साल बाद जाकर proper support मिला। लेकिन लोगों का ध्यान खींचने के लिए इतना काफ़ी था
    • Heroku के उभरने के साथ Postgres को default DB के रूप में चुना गया
  • 2014 में Postgres 9.4 से JSONB data type के ज़रिए सही मायने में JSON support शुरू हुआ
    • JSON के binary representation के कारण GIN index से इसे आसानी से index किया जा सका
    • JSONB आज भी ऐसा data type है जिसे सुनकर लोग सबसे ज़्यादा चौंकते हैं
  • Logical decoding ने आने वाले कुछ वर्षों के लिए CDC(change data capture) को आसान बनाने की नींव रखी
  • लगभग 9.3 के समय Amazon ने Re:Invent के ज़रिए RDS में PostgreSQL support की घोषणा की
    • लेखक कई बार Re:Invent में शामिल हुए, लेकिन दर्शकों की standing ovation उन्हें सिर्फ़ इसी घोषणा पर याद है
  • 2016 में 9.5, 9.6, 10 versions
    • Row Level Security, Logical Replication, Table Partitioning आदि जोड़े गए
    • ये features व्यक्तिगत contributors के योगदान से आए
  • तो आखिर कब?
    • मेरे विचार में अगर Heroku और JSON का मेल न होता, तो hyperscalers शायद support नहीं जोड़ते
    • लेकिन यदि लगातार release cycle और quality पर ज़ोर देते हुए performance व features में निरंतर सुधार न हुए होते, तो यह मौका भी नहीं मिलता

11 टिप्पणियां

 
cosine20 2023-08-16

ओह, DB के लिए Pub/Sub काफ़ी दिलचस्प है

 
inthelife 2023-08-16

बिंगग्रे जांगग्रे Postgres!

 
llmrocks 2023-08-15

लेकिन supabase ज़्यादा कूल है

 
ggg213 2023-08-15

कृपया column की position बदलने की सुविधा दें

 
ruinnel 2023-08-14

टाइपो रिपोर्ट: 라이선스 벅분에 -> 라이선스 덕분에

 
n1ghtc4t 2023-08-14

क्या ही कमाल है! यही है ना!!!

 
jujumilk3 2023-08-14

यह सचमुच सद्गति से आगे बढ़ने वाले OSS की एक पाठ्यपुस्तक जैसा लगता है।

 
qurare 2023-08-14

LK-99 की तरह, दशकों तक जमा किए गए build-up से पैदा हुई वह रूमानी भावना...

 
jujumilk3 2023-08-14

रोमांस पास....

 
bbulbum 2023-08-14

Postgres ज़िंदाबाद!

 
pkj3186 2023-08-14

कमाल है, Postgres!