Saurabh Dashora
Saurabh Dashora

@ProgressiveCod2

2 Tweets 1 reads Dec 23, 2023
12 database types you can use in 2024 and when to use them:
1 - Relational Databases (SQL)
- Ideal choice when your data is structured and needs to be consistent
- Supports ACID transactions and complex relational queries
- Examples: MySQL, PostgreSQL, CockroachDB
2 - Document Databases
- Handles semi-structured data with the possibility of different fields for each document.
- Provides an amazing level of schema flexibility
- Examples: MongoDB, Couchbase
3 - Key-Value Store
- Use when the data model is based on key-value pairs.
- Ideal for fast data retrieval and high throughput.
- Examples: Redis, DynamoDB
4 - Graph Databases
- Excellent choice for data with complex relationships.
- Used in applications such as recommendation engines and navigation maps.
- Examples: Neo4j, Amazon Neptune.
5 - Time-Series Databases
- Perfect choice when dealing with time-series data like IoT sensor readings or server logs in DevOps.
- Provides efficient storage and retrieval of time-stamped data.
- Examples: InfluxDB, Prometheus.
6 - Columnar Databases
- Data is stored by columns instead of rows to optimize reading from a column.
- Great for applications that involve storing massive data sets and running analytical queries.
- Examples: Amazon Redshift, Snowflake
7 - In-Memory Databases:
Ideal for cases when speed is more important than persistence.
Used for caching, real-time analytics, and high-frequency trading.
Examples - Redis and Memcached
8 - Search Engines
- Great for situations when you need to support full-text search on your dataset.
- Essential for applications that require searching through large amounts of data
- Examples - Elasticsearch & Solr
9 - Spatial Databases
- Used for storing geographical and location-based data. Extended on top of traditional databases.
- Choose for applications that require Spatial indexing and geospatial analytics.
- Examples include PostGIS & Oracle Spatial
10 - Blob Datastore
- For applications that need to store large documents, images, audio and video files.
- They provide high availability, durability and cost-effective storage.
- Examples include Azure Blob Storage, Amazon S3
11 - Ledger Databases
- Specialized databases for recording and maintaining tamper-evident and immutable history of transactions.
- They use cryptographic techniques like hashing & chaining to ensure data integrity.
- Examples: Amazon QLDB, Azure SQL Ledger
12 - Vector Databases
- Used to store vector embeddings for fast retrieval and similarity search
- Great for search engines, LLM-based apps, semantic search
- Examples: Pinecone, Milvus
So - how many database types have you used so-far?
And are there any more options I may have missed?
If you find System Design topics like this interesting, subscribe to my free weekly newsletter.
Much more detailed. Also, much more organized.
Join 2800+ software engineers now:
newsletter.systemdesigncodex.com

Loading suggestions...