TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

PostgreSQL is eating the database world

108 pointsby janpioabout 1 year ago

10 comments

kstrauserabout 1 year ago
Always has been.<p>I&#x27;ve been using PostgreSQL for a decades, and I feel so spoiled. It always Just Works. Not to say there&#x27;ve <i>never</i> been bugs, but compared to anything else with that much surface area, it&#x27;s a brilliant piece of engineering.<p>It&#x27;s astonishing how often it&#x27;s a perfectly fine stand-in for the &quot;right&quot; solution. Need a K-V store to hold a bunch of JSON docs indexed by UUID? Fine. Want to make an append-only log DB? Why not. Should you do those things? Probably not, but unless you specifically need to architect for global-scale concurrent usage, it&#x27;s likely to work out just fine.<p>For me, it&#x27;s the default place to stick data unless I have a specific requirement that only something else can meet. I&#x27;ve never once regretted using it to launch a production system, and only a couple of times have needed to migrate off of it due to performance demands.<p>Thanks, PostgreSQL team! You rock.
评论 #39761429 未加载
评论 #39760175 未加载
评论 #39763155 未加载
whartungabout 1 year ago
The magic of Postgres (and, quite arguably, MySQL, SQLite, etc.) is simply the idea that a sophisticated RDBMS is ubiquitous.<p>I came from the Old Days when we had to chisel BASIC code into cooling silicon. Having something like a SQL RDBMS just sitting there, busy, or not, maybe just wasting away, ready for any weird nonsense you throw at it, is just a treasure.<p>I have postgres on my mac. I&#x27;ve had postgres on my mac since I&#x27;ve had a Mac, so, what, 2006? I still have DBs on there that are now pushing 17 years old (after several PG version upgrades). I have the space, no reason to delete them. Just there. Old projects, strange experiments, idle.<p>That I have this much capability languishing is amazing.<p>SQL databases used to be a Big Deal. They were large step up from hand coding B-Tree indexes. I remember once we got a call from a client complaining about performance on a system we installed. We popped in, took a look around, and, yea, we dropped the ball. Not a single index was created on their system. It was just the tables. No wonder it was slowing down. 10 minutes of mad index creation later, all was well.<p>If you weren&#x27;t there in those days, it&#x27;s remarkable that we had a system where indexes were (mostly) a performance thing, rather than a core thing the entire system was designed around. A paradigm shift in development.<p>SQL DBs were amazing. They were also rare, and expensive. Custom libraries to access them, etc. But also, generic query tools, no code to write to beat on the data, or dump out quick queries, just the SQL front end. Powerful. Capable. So, yea, I held them on a bit of a pedestal.<p>And I can now just let one of those things, with untold modern capability and range, just sit idle on my machine. Just like I can leave a Calculator window open. Waiting for whenever I deign I need to work with it some.<p>Extraordinary.
评论 #39761405 未加载
irrationalabout 1 year ago
We were on Oracle for 15 years. Then the license costs became too burdensome, so we moved to Postgres. Though, it took us two years to make the move. Postgres is amazing compared to Oracle. Faster. More standards compliant. Better error messages. Far simpler to do backups and replication. Etc. Etc. It is quite astonishing how much better Postgres is than Oracle.
finnhabout 1 year ago
The author should remove - or at the very least _credit_, come on - the image used in &quot;The Pendulum of Database Realm&quot; section. It&#x27;s from Martin Kleppmann&#x27;s &quot;Designing Data-Intensive Applications&quot;, a particularly good O&#x27;Reilly book with illustrations by Rebecca Demarest.
xnxabout 1 year ago
Dupe:<p>Postgres is eating the database world<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=39711863">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=39711863</a><p>5 days ago 138 comments<p>Edit: included the wrong link
评论 #39759956 未加载
eivanov89about 1 year ago
That&#x27;s indeed amusing! I just published a post with title &quot;When Postgres is not enough&quot;. It seems that the true distributed databases we have evaluated aren&#x27;t quite Postgres&#x27;s cup of tea: <a href="https:&#x2F;&#x2F;blog.ydb.tech&#x2F;when-postgres-is-not-enough-performance-evaluation-of-postgresql-vs-distributed-dbmss-23bf39db2d31" rel="nofollow">https:&#x2F;&#x2F;blog.ydb.tech&#x2F;when-postgres-is-not-enough-performanc...</a>
da39a3eeabout 1 year ago
Small thing but postgres should deprecate the names it uses for the CLI commands like &quot;adduser&quot; &quot;createuser&quot; etc; they should have a prefix like &quot;pg-adduser&quot; or more modern, be subcommands of a single &quot;pg&quot; or &quot;pgctl&quot; command. Has there been a move toward that yet?
edhelasabout 1 year ago
Good
roynasserabout 1 year ago
I feel like I&#x27;ve seen this more than I&#x27;ve seen my parents since year!
ralusekabout 1 year ago
Love Postgres, but here&#x27;s what I wish was different:<p>RDS Proxy&#x2F;PG Bouncer should be default connection behavior. Ideally no persistent connection at all, more akin to https would be great.<p>Vacuuming is ridiculous. It doesn&#x27;t make sense to me what could possibly take so long. It also doesn&#x27;t make sense to me that it needs to be blocking (I understand that it&#x27;s now parallelizable-ish). Using a comparatively slow interpreted language, I can iterate through millions of items, on disk, and do any number of things, within a few seconds at most. I have had databases with like, a few thousand items, somehow take hours upon hours to vacuum&#x2F;analyze.<p>Nested transactions would be great. I know there are savepoints but it doesn&#x27;t work well when dealing with anything in parallel.<p>And finally, my #1 complaint: Please let ME decide when to roll back&#x2F;invalidate a transaction. If I want to write something like an upsert, maybe my code says &quot;insert this record, and if I catch an unique constraint error, update the record.&quot; In Postgres, at the initial insert, because there&#x27;s an error, it will just invalidate my transaction! I could have done 100 other things in this transaction so far, all invalidated because of a DB error. An error that I was expecting to catch and handle myself at the application level, and now the entire transaction needs to be rolled back. WHY?
评论 #39760126 未加载
评论 #39760149 未加载
评论 #39760077 未加载