29 Comments

“I heard you like databases, so I added a database of databases on my post about databases” -Justin, probably

Expand full comment

Just one more database bro. One more and I'll be done. Just one more bro

Expand full comment

Super interesting! Thank you

Expand full comment

That is such a useful post and love the database of database.

Expand full comment

💯💯

Expand full comment

Great overview.

Expand full comment

I'd pay for something like this but more in depth!

Expand full comment

What in particular are you looking for more depth on?

Expand full comment

I'm not sure, just more!

Expand full comment

Fair enough 😉

Expand full comment

This is super interesting and incredibly useful. Thanks for putting this together!

Expand full comment

Great overview. Love the database of database.

Expand full comment

Awesome explanation :) thanks

Expand full comment

This is super helpful! Can you please write about indexes and how search systems work under the hood?

Expand full comment

Very informative post, thank you!

A few remarks on the following:

> Cassandra is a NoSQL database built for really big companies who need to store lots of data and retrieve it fast. Unlike MongoDB, which is built as a document database, Cassandra is columnar, which means data is stored in entire columns (like Snowflake, actually). Using Cassandra feels a lot more like using a relational database.

Cassandra is not a columnar database but implements the concept of a wide-column family.

"Cassandra and HBase have a concept of column families, which they inherited from Bigtable. However, it is very misleading to call them column-oriented: within each column family, they store all columns from a row together, along with a row key, and they do not use column compression. Thus, the Bigtable model is still mostly row-oriented."

- Source: Designing Data-Intensive Applications by Martin Kleppmann.

> DynamoDB is AWS’s proprietary NoSQL database

DynamoDB is based on the architecture of Amazon Dynamo whitepaper. Amazon Dynamo was/is used by the Amazon shopping cart because the database was built for extremely high availability. Apache Cassandra can be considered a spinoff because it was built on the architecture of Amazon Dynamo but with a few different design decisions.

Expand full comment

Helpful - just updated. Thank you

Expand full comment

Once upon a time I stayed buried in databases all day long. Oracle, IBM, SQLServer, and yes ... even Postgres once in a while. Thank the Lord I'm retired and don't need to worry about them anymore. I use a plain old notebook for my database these days. It's sooooo much more convenient.

Expand full comment

Sounds secure

Expand full comment

Great overview as usual Justin! With the hype around generative AI and LLMs, which database models do you think are going to used a lot more? I've read comments from MongoDB say it will be an accelerant for their operational database business. Read Snowflake will benefit for their data-sharing. Can you talk about where you think LLMs will use more, obviously not restricted to these two. Could be all fluff for all I know

Expand full comment

Yea, not surprised marketing teams at these companies are trying to make the case that their database is somehow best positioned for AI. I can't really opine on that stuff, I can't predict the future. Same thing with vector databases. Not sure yet!

Expand full comment

I read ‘diabetes’ haha

Expand full comment

Hey Justin, recently a few startups running vector database are raising lots of money. How would you categorize vector database? Is it another type of transactional database?

Expand full comment

Vector databases are an AI thing, definitely not transactional in the traditional sense. It's not entirely clear that they're legit yet so I've avoided them here

Expand full comment

Thanks! So it doesn't fit in any of the three types of DB you mentioned here?

Expand full comment

If I had to pick one, it would depend on the use case of the models that you're using the vector database for. If they're models that power actual experiences in your app (e.g. Hex Magic https://hex.tech/product/magic-ai/), I would say it's a user facing DB. If it's just for models that you use internally, I'd say it's operational

Expand full comment

I thought about SQL and NoSQL when I see the title “Types of Databases” :-)

Expand full comment