DBMS > Google Cloud Spanner vs. H2 vs. HBase vs. Milvus vs. QuestDB
System Properties Comparison Google Cloud Spanner vs. H2 vs. HBase vs. Milvus vs. QuestDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Google Cloud Spanner Xexclude from comparison | H2 Xexclude from comparison | HBase Xexclude from comparison | Milvus Xexclude from comparison | QuestDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A horizontally scalable, globally consistent, relational database service. It is the externalization of the core Google database that runs the biggest aspects of Google, like Ads and Google Play. | Full-featured RDBMS with a small footprint, either embedded into a Java application or used as a database server. | Wide-column store based on Apache Hadoop and on concepts of BigTable | A DBMS designed for efficient storage of vector data and vector similarity searches | A high performance open source SQL database for time series data | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Relational DBMS | Wide column store | Vector DBMS | Time Series DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | Relational DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | cloud.google.com/spanner | www.h2database.com | hbase.apache.org | milvus.io | questdb.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | cloud.google.com/spanner/docs | www.h2database.com/html/main.html | hbase.apache.org/book.html | milvus.io/docs/overview.md | questdb.io/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Thomas Mueller | Apache Software Foundation Apache top-level project, originally developed by Powerset | QuestDB Technology Inc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2017 | 2005 | 2008 | 2019 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 2.2.220, July 2023 | 2.3.4, January 2021 | 2.3.4, January 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial | Open Source dual-licence (Mozilla public license, Eclipse public license) | Open Source Apache version 2 | Open Source Apache Version 2.0 | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | yes | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Zilliz Cloud – Cloud-native service for Milvus | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | Java | C++, Go | Java (Zero-GC), C++, Rust | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | hosted | All OS with a Java VM | Linux Unix Windows using Cygwin | Linux macOS 10.14 or later Windows with WSL 2 enabled | Linux macOS Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes | schema-free, schema definition possible | yes schema-free via InfluxDB Line Protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | options to bring your own types, AVRO | Vector, Numeric and String | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
XML support Some form of processing data in XML format, e.g. support for XML data structures, and/or support for XPath, XQuery or XSLT. | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | yes Query statements complying to ANSI 2011 | yes | no | no | SQL with time-series extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | gRPC (using protocol buffers) API JDBC At present, JDBC supports read-only queries. No support for DDL or DML statements. RESTful HTTP API | JDBC ODBC | Java API RESTful HTTP API Thrift | RESTful HTTP API | HTTP REST InfluxDB Line Protocol (TCP/UDP) JDBC PostgreSQL wire protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go Java JavaScript (Node.js) Python | Java | C C# C++ Groovy Java PHP Python Scala | C++ Go Java JavaScript (Node.js) Python | C PostgreSQL driver C++ Go Java JavaScript (Node.js) Python Rust over HTTP | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | Java Stored Procedures and User-Defined Functions | yes Coprocessors in Java | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding | Sharding | horizontal partitioning (by timestamps) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication with 3 replicas for regional instances. | With clustering: 2 database servers on different computers operate on identical copies of a database | Multi-source replication Source-replica replication | Source-replica replication with eventual consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes using Google Cloud Dataflow | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Immediate Consistency or Eventual Consistency | Bounded Staleness Eventual Consistency Immediate Consistency Session Consistency Tunable Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | yes by using interleaved tables, this features focuses more on performance improvements than on referential integrity | yes | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID Strict serializable isolation | ACID | Single row ACID (across millions of columns) | no | ACID for single-table writes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, multi-version concurrency control (MVCC) | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | yes | yes | yes through memory mapped files | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | fine grained access rights according to SQL-standard | Access Control Lists (ACL) for RBAC, integration with Apache Ranger for RBAC & ABAC | Role based access control and fine grained access rights | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Google Cloud Spanner | H2 | HBase | Milvus | QuestDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Milvus is an open-source and cloud-native vector database built for production-ready... » more | Relational model with native time series support Column-based storage and time partitioned... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Highly available, versatile, and robust with millisecond latency. Supports batch... » more | High ingestion throughput: peak of 4M rows/sec (TSBS Benchmark) Code optimizations... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | RAG: retrieval augmented generation Video media : video understanding, video deduplication.... » more | Financial tick data Industrial IoT Application Metrics Monitoring » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Milvus is trusted by thousands of enterprises, including PayPal, eBay, IKEA, LINE,... » more | Banks & Hedge funds, Yahoo, OKX, Airbus, Aquis Exchange, Net App, Cloudera, Airtel,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | As of January 2024, 25k+ GitHub stars 10M+ downloads and installations 3k+ enterprise... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Milvus was released under the open-source Apache License 2.0 in October 2019. Fully-managed... » more | Open source Apache 2.0 QuestDB Enterprise QuestDB Cloud » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
News | QuestDB and Raspberry Pi 5 benchmark, a pocket-sized powerhouse Build your own resource monitor with QuestDB and Grafana Does "vpmovzxbd" Scare You? Here's Why it Doesn't Have To Create an ADS-B flight radar with QuestDB and a Raspberry Pi Build a temperature IoT sensor with Raspberry Pi Pico & QuestDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of system vendors to contact us for updating and extending the system information, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Related products and servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Google Cloud Spanner | H2 | HBase | Milvus | QuestDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Cloudera's HBase PaaS offering now supports Complex Transactions Why is Hadoop not listed in the DB-Engines Ranking? | Vector databases | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Google Improves Cloud Spanner: More Compute and Storage without Price Increase Google makes its Cloud Spanner database service faster and more cost-efficient Google turns up the heat on AWS, claims Cloud Spanner is half the cost of DynamoDB Google Cloud just fired a major volley at AWS as the cloud wars heat up Google Spanner: When Do You Need to Move to It? provided by Google News | What Is HBase? Less Components, Higher Performance: Apache Doris instead of ClickHouse, MySQL, Presto, and HBase HBase: The database big data left behind Monitor Apache HBase on Amazon EMR using Amazon Managed Service for Prometheus and Amazon Managed ... HydraBase – The evolution of HBase@Facebook - Engineering at Meta provided by Google News | How NVIDIA GPU Acceleration Supercharged Milvus Vector Database AI-Powered Search Engine With Milvus Vector Database on Vultr Milvus 2.4 Unveils Game-Changing Features for Enhanced Vector Search Zilliz Unveils Game-Changing Features for Vector Search IBM watsonx.data’s integrated vector database: unify, prepare, and deliver your data for AI provided by Google News | QuestDB snares $12M Series A with hosted version coming soon SQL Extensions for Time-Series Data in QuestDB QuestDB gets $12M Series A funding amid growing interest in time-series databases Read the Pitch Deck Database Startup QuestDB Used to Raise $12 Million Q&A: Nicolas Hourcard, QuestDB: The advantages of a time-series database provided by Google News |
Share this page