9 ms·
7 Databases in 7 Weeks for 2025
- deleted 2y ago[deleted]
- petesergeant 2y agoOriginal 7 were: Redis, Neo4J, CouchDB, MongoDB, HBase, Postgres, and DynamoDB
- turnsout 2y agoAnother reason to choose Postgres… if you fell asleep and woke up 20 years later like Rip Van Winkle, Postgres would still probably be a 100% valid choice.
- steveBK123 2y agoPrecisely - DBs are the LAST thing I want to have to deal with swapping every 3 years.
- atonse 2y agoI didn't realize this [1] was a thing. I've been informally referring to our Postgres/Elixir stack as "boring, but in the best way possible, it just works with no drama whatsoever" for years. 1: https://boringtechnology.club https://boringtechnology.club
- Jtsummers 2y agohttps://pragprog.com/titles/pwrdata/seven-databases-in-seven-weeks-second-edition/ https://pragprog.com/titles/pwrdata/seven-databases-in-seven... - A book by the same name. Instead of giving you a brief blurb on each database, the authors attempt to give you more context and exercises with them. Last updated in 2018 it covers PostgreSQL, HBase, MongoDB, CouchDB, Neo4J, DynamoDB, and Redis. The first edition covered Riak instead of DynamDB.
- nindalf 2y agoThe only one in common in both lists is Postgres. Insane longevity.
- deleted 2y ago[deleted]
- steveBK123 2y agoYeah and only 6 years ago, which is nothing in the span life databases historically. It's not like DBs are a new tech. Making a decision on DB is somewhat foundational for a lot of system architecture, in that you expect to be able to use it for years. It is not like some UI framework you toss out every 18 months. So the benefits of the new hyped thing may be outweighed by the unknowns & risk of flaming out. This is the kind of hype cycle that gives me pause when a new hot thing like DuckDB which actually ticks a TON of boxes for me, but has attracted some of the usual suspects in my work network that I consider to be contra signals.
- cpursley 2y agoYep, obligatory Postgres Is Enough listicle: https://gist.github.com/cpursley/c8fb81fe8a7e5df038158bdfe0f06dbb#postgresql-is-enough https://gist.github.com/cpursley/c8fb81fe8a7e5df038158bdfe0f...
- cpursley 2y ago(most of the time, at least)
- alex7o 2y agoI like to joke and say that it is the Postgres Cinematic universe
- worksonmymach 2y agoSQL Server and Oracle too but not being open source is a big minus.
- deadbabe 2y agoOn the first day of Christmas my true love sent to me, a brand new Postgres query
- pjmlp 2y agoFor me the pinnacle of boring RDMS are Oracle and SQL Server.
- hobs 2y agoThere's definitely been fixes in the last half decade to make SQL Server a little more boring, but there's plenty of defaults that were simple foot guns. Full recovery mode defaults combined with log growth settings, query parallelism costs, maintenance and backup solutions being offhanded to Ola, etc - many of those things are fixed but things like parameter sniffing are still absolutely causing pages going off for someone today.
- motorest 2y agoTheir hefty pricetag bumps them solidly into exciting territory.
- pjmlp 2y agoDefinitely exciting Fortune 500 projects.
- fipar 2y agoDon't forget DB/2! And, from the same vendor, IBM still ships IMS for those who find Codd's ideas too exciting.
- neverartful 2y agoIBM also still sells Informix.
- ako 2y agoIn this age of AI, I’m missing a database with a focus on AI, e.g, something like a vector database, or maybe something even better…
- nindalf 2y agoPgvecto.rs?
- SahAssar 2y agopgvector? postgresml?
- mble_ 2y agoAuthor here. I deliberately didn't include one because I'm waiting for the dust to settle a bit. There is a lot of activity in the space, from things like TurboPuffer (proprietary), Postgres extensions like VectorChord and pgvector, to established players like Elastic getting in on the action. Not to mention things like Pinecone.
- ako 2y agoFair point, but would be interesting to see what characteristics make for a best in class ai database, rag, vectors? Or do you foresee ai to replace databases? “ChatGPT, can you remember this data for me?”
- mble_ 2y agoDefinitely doesn't replace databases, at least LLMs as they currently are. We're going to be stuck with relational algebra for a long time to come, but the interfaces to interact with store might change over time from SQL to more natural language. > what characteristics make for a best in class ai database As I said before, I think the space is moving too fast on what is "best in class" - see all the vector indexing work that has happened in the last ~6 months or so. Big, centralised vector stores for some applications will have very different profiles to vector stores on the edge/on device, for example. As mentioned, I'm a big fan of boring technology, so I'm going to happily wait we have a boring "winner".
- rho4 2y agoThe article mentions the TigerBeetle Style Guide: https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TIGER_STYLE.md https://github.com/tigerbeetle/tigerbeetle/blob/main/docs/TI... I agree so much with the paragraphs about "Dependencies" and "Tooling".
- archiewood 2y agoDuckDB is really having a moment The ecosystem is very active, and they have recently opened up "community extensions" to bring your own functions, data types and connections. A barrier at the moment is that extensions are written in C++, though this limitation should be removed soon. I've been building a lot on top of DuckDB, two of the projects I'm working on are linked in the article: - Evidence (https://evidence.dev https://evidence.dev): Build data apps with SQL + Markdown - DuckDB GSheets (https://duckdb-gsheets.com https://duckdb-gsheets.com): Read/Write Google Sheets via DuckDB
- dilawar 2y agoDuckdb is really great. DX is awesome. I cloned the CVE repository and ingested it into duckdb without worrying about table structures. Build a fastapi wrapper to query CVEs like SQL. A little bit of caching and it was pretty fast. Was done in a few hours. Shame that their Rust crate wasn't as performant as the python module.
- Scubabear68 2y agoI got into DuckDb thanks to HN comments like these in general, it really shines for doing "desktop" analysis that goes beyond the usual Excel/Numbers shenanigans.
- tlavoie 2y agoThe Developer Voices podcast episode with a couple authors of a DuckDB book was quite good as well: https://www.youtube.com/watch?v=_nA3uDx1rlg https://www.youtube.com/watch?v=_nA3uDx1rlg
- tmpz22 2y agoAre the testimonials on your website real or fake? Apple, Flexport, BMW, etc are using evidence.dev?
- ironchef 2y agoLots of folks out there use evidence.dev. It's a simple way to get some BI up and running without needing to deal with licensing / corporate IT, etc. Remember all it takes is 1 employee to put that claim up there (although I do like evidence.dev).
- maximus93 2y agoDuckDB really seems to be having its moment—projects like Evidence and DuckDB GSheets are super cool examples of its potential. And yeah, Postgres’s longevity is insane, it just keeps adapting. On the AI front, vector databases like Pinecone and pgvector are exciting, but I’d love to see something even more integrated with AI workflows. The possibilities are huge. Curious to hear what others think!
- vjerancrnjak 2y agoI like Clickhouse more. Unrelated, not sure if it is just me, but ever since LLMs became popular, I've been seeing an enormous amounts of special utf8 characters no one used regularly, like this em dash you used. How is this simple to type? If you're on a phone keyboard, you have to switch to special characters, and then have to long-hold the dash and then slide to em dash.
- arglebarnacle 2y agoOn a full keyboard it’s not too bad—just hold alt and tap 0151 on the numpad. Honestly I wish it was harder to type for stylistic reasons—it would help cure me of my em-dash addiction
- vjerancrnjak 2y agoHaha, you haven't used an em dash at all. You even used -- in some of your comments. LLMs are everywhere.
- conductr 2y agoI noticed that certain browsers started auto converting a double hyphen to an emdash as I type, no LLM needed, I think that’s just a timing coincidence
- elcritch 2y agoOn macs you can do `alt` and `-` to get a –. Even on a phone a proper emdash can add effect over a regular dash.
- amazingamazing 2y agoWhy duck db vs chdb?
- mble_ 2y agoI didn't want ClickHouse to take all the glory. /s The actual reason is that DuckDB's API and integration into other places (e.g. Evidence) and its use of extensions (like the aforementioned gsheets one) gives it priority for me. Additionally, its being used in a bunch more places like pg_duckdb that make it more "worth it".
- mmsimanga 2y agoI work in a big none tech corp and I cannot install WSL so I can try out Clickhouse.
- mble_ 2y agoAuthor here. Thanks for sharing! My choices are pretty coloured by personal experience, and I didn't want to re-tread anything from the book (Redis/Valkey, Neo4j etc) other than Postgres - mostly due to Postgres changing _a lot_ over the years. I had considered an OSS Dynamo-like (Cassandra, ScyllaDB, kinda), or a Calvin-like (FaunaDB), but went with FoundationDB instead because to me, that was much more interesting. After a decade of running DBaaS at massive scale, I'm also pretty biased towards easy-to-run.
- leeoniya 2y agowas hoping to see https://github.com/GreptimeTeam/greptimedb https://github.com/GreptimeTeam/greptimedb on the list maybe 2026, or some bonus content for 2025 :) https://www.greptime.com/blogs/2024-09-09-report-summary https://www.greptime.com/blogs/2024-09-09-report-summary
- timbotron 2y agoI'm curious why you said you don't find MongoDB interesting?
- mble_ 2y agoI lived through the MongoDB hype cycle. For document databases, I'm more interested in things like PoloDB and SurrealDB.
- timbotron 2y agoI agree mongo is overhyped and attracts a lot of web newbies who only know javascript and don't want to think through schemas, although one interesting newer feature of mongo is time series collections -- unfortunately they are a bit buggy but they're getting better seem like a legitimate non-relational use case.
- aravindputrevu 2y agoEx-Surrealer here. Thanks for listing us. Never thought someone on HN would cite us esp when it comes to MongoDB.
- dangoodmanUT 2y agoFDB is wildly underrated. Best DB atm
- merqurio 2y agoFondationDB is such an incredible resource, but it’s so hard to access for the general public. It’s no wonder so few people know about it. I’ve always thought that if there were easier ways to interact with it, or some dev-friendly layers built on top (or public) it would become way more popular. it has shown how well it scales with Apple and snowflake, but is not an obvious choice for non-internet scale applications. If you don't know about FDB; there's an amazing video about how they test it that really got me into learning more: https://youtu.be/4fFDFbi3toc?si=9g3hZogBq3Ou25xZ https://youtu.be/4fFDFbi3toc?si=9g3hZogBq3Ou25xZ
- mble_ 2y agoYeah, this is the bit for me. We have almost no good OSS layers for folks to "plug and play". Its a bit of a vicious circle - because there is low exposure, no one is building those layers. Because no one is building the layers, there is no exposure.
- jstimps 2y agoIf you're interested in a layer compatible with Elixir's Ecto, please take a look at the EctoFoundationDB adapter: https://github.com/foundationdb-beam/ecto_foundationdb https://github.com/foundationdb-beam/ecto_foundationdb https://hexdocs.pm/ecto_foundationdb https://hexdocs.pm/ecto_foundationdb
- jeffinhat 2y agoThey are developing this simulation concept as a platform: https://antithesis.com/ https://antithesis.com/
- amazingamazing 2y agoSurprised no one has built a dynamodb compatible api yet. Wouldn’t be that difficult. Dynamodb actually has similar constraints already
- znpy 2y ago> CockroachDB didn't it like go closes-source a while ago?
- mble_ 2y agoStill very much "open-source": https://github.com/cockroachdb/cockroach https://github.com/cockroachdb/cockroach But relicensed to the "CockroachDB Software License" as a form of BSL to prevent reselling.
- maxmcd 2y agoI think "source available" at this point: https://news.itsfoss.com/cockcroachdb-no-open-source/ https://news.itsfoss.com/cockcroachdb-no-open-source/
- deleted 2y ago[deleted]
- littlekey 2y agoI'm just gonna say it: unless I had a specific reason to use it, I would cross CockroachDB off my list purely based on the name. I don't want to be thinking of cockroaches every time I use my database. Names do have meaning, and I have to wonder why they went with that one.
- greghn 2y ago> Names do have meaning, and I have to wonder why they went with that one. "CockroachDB gets its name from cockroaches, as they are known for being disaster-resistant.[5]" https://en.wikipedia.org/wiki/CockroachDB https://en.wikipedia.org/wiki/CockroachDB
- dankwizard 2y agoI go further than judging a book by its cover, I judge it by its name!
- sdesol 2y agoFor those not familiar with DuckDB, it's an amazing database, but it is not a replacement for SQLite, if you are looking for a lightweight server side DB. I'm in love with the DuckDB client and use it to query SQLite databases, but due the fact that it only supports one concurrent write connection, it is not suitable as a server side DB.
- AzzieElbab 2y agono one uses or writes new graph databases. sad
- pphysch 2y agoPure graph DBs, like Neo4j, are toys. Just use a proper relational database or kv store for your vertex/edge data, and then load it into memory in your desired graph format and do your graph analysis on it in your favorite PL.
- kussenverboten 2y agoShouldn't Qdrant be on that list in 2025?
- hobofan 2y agoSee https://news.ycombinator.com/item?id=42331258 https://news.ycombinator.com/item?id=42331258 I feel like the article is written mainly for Database power-users (= people that look beyond the horizon of the default DB choice of Postgres/MySQL), as well as for people getting onto database engineering. I would say for both of those audiences, Qdrant (or any of the dedicated vector databases) isn't too interesting. For the most part they are very normal (and usually less-featured) databases with a heavy focus on a special kind of index, which most DBs on the list can also handle either natively or via extensions.
- pradeepchhetri 2y ago> If I had to only pick two databases to deal with, I’d be quite happy with just Postgres and ClickHouse - the former for OLTP, the latter for OLAP. As the author mentioned, I completely agree with this statement. In fact, many companies like Cloudflare are built with exactly this approach and it has scaled them pretty well without the need of any third database. > Another reason I suggest checking out ClickHouse is that it is a joy to operate - deployment, scaling, backups and so on are well documented - even down to setting the right CPU governor is covered. Another point mentioned by author which is worth highlighting is the ease of deployment. Most distributed databases aren't so easy to run at scale, ClickHouse is much much easier and it has become even more easier with efficient storage-compute separation.
- saisrirampur 2y agoSai from ClickHouse here. Have been living and breathing past year helping customers integrating Postgres and ClickHouse together. Totally agreed with this statement - there are numerous production grade workloads solving most of their data problems using these 2 purpose-built Open Source databases. My team at ClickHouse has been working hard to make the integration even seamless. We work on PeerDB, an open source tool enabling seamless Postgres replication to ClickHouse https://github.com/PeerDB-io/peerdb/ https://github.com/PeerDB-io/peerdb/ This integration is now also natively available in the Cloud through ClickPipes. The private preview was released just last week https://clickhouse.com/cloud/clickpipes/postgres-cdc-connector https://clickhouse.com/cloud/clickpipes/postgres-cdc-connect...
- yas_hmaheshwari 2y agoOut of curiosity: Why not mysql? I am also surprised that no one has even mentioned mysql in any of the comments so far -- so looks like the verdict is very clear on that one PS: I am also a fan of Postgres, and we are using that for our startup. But I don't know the answer if someone asks me, why not Mysql. Hence asking
- codazoda 2y agoI think this might come down to… Oracle. Obviously there are alternatives like MariaDB but Postgres is a quality long standing open source solution.
- breadwinner 2y agoClickHouse is awesome, but there's a newer OLAP database in town: Apache Pinot, and it is significantly better: https://pinot.apache.org/ https://pinot.apache.org/ Here's why it is better: 1. User-facing analytics vs. business analytics. Pinot was designed for user-facing analytics (meaning analytics result is used by end-user (for example, "what is the expected delivery time for this restaurant?"). The demands are much higher, including latency, freshness, concurrency and uptime. 2. Better architecture. To scale out ClickHouse uses sharding. Which means if you want to add a node you have to bring down the database, re-partition the database and reload the data, then bring it back up. Expect downtime of 1 or 2 days at least. Pinot on the other hand uses segments, which is smaller (but self-contained) pieces of data, and there are lots of segments on each node. When you add a node, Pinot just moves around segments, no downtime needed. Furthermore, for high availability ClickHouse uses replicas. Each shard needs 1 or 2 replicas for HA. Pinot does not have shards vs replica nodes. Instead each segment is replicated to 2 to 3 nodes. This is better for hardware utilization. 3. Pre-aggregation. OLAP cubes became popular in the 1990s. They pre-aggregate data to make queries significantly faster, but the downside is high storage cost. ClickHouse doesn't have the equivalent of OLAP cubes at all. Pinot has something better than OLAP cubes: Star trees. Like cubes, star trees pre-aggregate data along multiple dimensions, but don't need as much storage.
- mble_ 2y agoPinot is something I haven't had any personal experience with, so that's why it wasn't on the list - same with StarRocks, or Druid. Something for me to look into next year, clearly.
- memset 2y agoI’d like to learn more! Clickhouse benchmarks don’t show Pinot favorably by comparison. Also, do you have thoughts on Starrocks?
- shadow28 2y ago> Clickhouse benchmarks don’t show Pinot favorably by comparison Looks like they don't configure any indexes for Pinot in their benchmarks, which is one of Pinot's main selling points on the performance front - https://github.com/ClickHouse/ClickBench/issues/37 https://github.com/ClickHouse/ClickBench/issues/37.
- wb14123 2y agoEver since CockroachDB changed their license, I'm searching for alternatives. PostgreSQL is an obvious choice but is there a good HA solution? What people usually do for HA with PostgreSQL or do they just not care about it? I tested Patroni, which is the most popular one in my knowledge, but found some HA issues that makes me hesitate to use: https://www.binwang.me/2024-12-02-PostgreSQL-High-Availability-Solutions-Part-1.html https://www.binwang.me/2024-12-02-PostgreSQL-High-Availabili...
- mble_ 2y ago> What people usually do for HA with PostgreSQL or do they just not care about it? Patroni for most cases. At Heroku we have our own control plane to manage HA and fencing which works very reliably. I also like the approach the Cloud Native PG folks have taken with implementing it in the k8s API via the instance manager[1]. Other options like Stolon or repmgr are popular too. Patroni is, despite the Jepsen testing, used well without issues in the majority of circumstances. I wouldn't over think it. [1]: https://cloudnative-pg.io/documentation/1.24/instance_manager/ https://cloudnative-pg.io/documentation/1.24/instance_manage...
- joeevans1000 2y agoNo bitemporal db (i.e. xtdb)?
- mble_ 2y agoI love Datalog, but its such a niche technology. If I had included it, I would have probably swapped out TigerBeetle for it.
- refset 2y agoThe upcoming XTDB v2 is a SQL-first engine. We also built an experimental Clojure/Datalog-like 'XTQL' language to go along with it, to provide some continuity for v1 users, but the primary API is now SQL over the Postgres wire protocol, where we implemented a variation on SQL:2011 - see https://docs.xtdb.com/quickstart/sql-overview.html https://docs.xtdb.com/quickstart/sql-overview.html
- mble_ 2y agoOh, very cool. I'll have to add this to my list to check out next year.