Database Systems Comparison

Comparison of database types: Relational, Document, Key-Value, Column-Family, Graph, and Vector databases with examples and best-fit use cases.

  • JSON5,331 B
  • YAML3,663 B · −31%
  • TOON2,953 B · −45%

The main families of database systems and what each is best for: relational, document, key-value, column-family, graph and vector, extended with time-series, search, distributed SQL, in-memory and multi-model systems. Each row gives the data model and example products.

Use it when

  • You are picking a category of database for a new system.
  • You need quick examples of each category.

Watch out for

  • Categories overlap and products borrow from each other; PostgreSQL stores JSON and supports vectors, for example.
  • Examples are illustrative, not rankings or recommendations.

The data

Databases

TypeExamplesModelBest for
RelationalPostgreSQL, MySQL, SQLiteTables with rows and columnsStructured data, ACID transactions, complex queries
DocumentMongoDB, CouchDBJSON-like documentsFlexible schemas, rapid development, hierarchical data
Key-ValueRedis, DynamoDBKey-value pairsCaching, session storage, high throughput
Column-FamilyCassandra, HBaseColumns grouped in familiesTime-series, write-heavy workloads, big data
GraphNeo4j, ArangoDBNodes and edgesRelationship-heavy data, social networks, recommendations
VectorPinecone, Weaviate, pgvectorHigh-dimensional vectorsSemantic search, similarity matching, RAG
Time-SeriesInfluxDB, TimescaleDB, PrometheusTimestamped measurements optimized for append and range queriesMetrics, IoT sensor data, monitoring and financial ticks
Search EngineElasticsearch, OpenSearch, Apache SolrInverted indexes over documents with relevance scoringFull-text search, log analytics, faceted navigation
Distributed SQL (NewSQL)CockroachDB, TiDB, Google SpannerRelational tables with SQL and distributed transactionsHorizontally scaled applications that need SQL and strong consistency
In-MemoryRedis, Memcached, SAP HANAData held primarily in RAMCaching, session stores, leaderboards, low-latency analytics
Multi-ModelArangoDB, Azure Cosmos DB, SurrealDBSeveral data models behind one engineApplications mixing document, graph and key-value access

Fields

The shape of this dataset, read from the data itself: every column, its type and a real value. Agents can use this to plan a query without fetching the whole document.

SectionFieldTypeExample
databasestypestringRelational
databasesexamplesstringPostgreSQL, MySQL, SQLite
databasesmodelstringTables with rows and columns
databasesbest_forstringStructured data, ACID transactions, complex que…

Fetch the same bytes

The static files contain the same reference rows as the API, with no API rate limit. Live metadata, such as view counts, may differ. Use the API for content negotiation; use the static files for a cacheable snapshot.

curl "https://yjtoon.com/api/dataset/database-comparison?format=toon"
const res = await fetch(
  "https://yjtoon.com/static-data/dataset/database-comparison.toon"
);
const toon = await res.text();

Rate limit: 120 requests per minute per IP, no key and no signup. API reference →

Topics

  • database
  • sql
  • nosql
  • comparison

Search the library

Search by a topic, title, or keyword.

Start with a collection

Browse all 205 datasets