DBMS > Apache Druid vs. Google Cloud Datastore vs. Microsoft Azure Data Explorer vs. Sphinx vs. Splice Machine
System Properties Comparison Apache Druid vs. Google Cloud Datastore vs. Microsoft Azure Data Explorer vs. Sphinx vs. Splice Machine
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Druid Xexclude from comparison | Google Cloud Datastore Xexclude from comparison | Microsoft Azure Data Explorer Xexclude from comparison | Sphinx Xexclude from comparison | Splice Machine Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Open-source analytics data store designed for sub-second OLAP queries on high dimensionality and high cardinality data | Automatically scaling NoSQL Database as a Service (DBaaS) on the Google Cloud Platform | Fully managed big data interactive analytics platform | Open source search engine for searching in data from different sources, e.g. relational databases | Open-Source SQL RDBMS for Operational and Analytical use cases with native Machine Learning, powered by Hadoop and Spark | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS Time Series DBMS | Document store | Relational DBMS column oriented | Search engine | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store If a column is of type dynamic docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types/dynamic then it's possible to add arbitrary JSON documents in this cell Event Store this is the general usage pattern at Microsoft. Billing, Logs, Telemetry events are stored in ADX and the state of an individual entity is defined by the arg_max(timestamps) Spatial DBMS Search engine support for complex search expressions docs.microsoft.com/en-us/azure/kusto/query/parseoperator FTS, Geospatial docs.microsoft.com/en-us/azure/kusto/query/geo-point-to-geohash-function distributed search -> ADX acts as a distributed search engine Time Series DBMS see docs.microsoft.com/en-us/azure/data-explorer/time-series-analysis | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | druid.apache.org | cloud.google.com/datastore | azure.microsoft.com/services/data-explorer | sphinxsearch.com | splicemachine.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | druid.apache.org/docs/latest/design | cloud.google.com/datastore/docs | docs.microsoft.com/en-us/azure/data-explorer | sphinxsearch.com/docs | splicemachine.com/how-it-works | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation and contributors | Microsoft | Sphinx Technologies Inc. | Splice Machine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2008 | 2019 | 2001 | 2014 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 29.0.1, April 2024 | cloud service with continuous releases | 3.5.1, February 2023 | 3.1, March 2021 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache license v2 | commercial | commercial | Open Source GPL version 2, commercial licence available | Open Source AGPL 3.0, commercial license available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | yes | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++ | Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Unix | hosted | hosted | FreeBSD Linux NetBSD OS X Solaris Windows | Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes schema-less columns are supported | schema-free | Fixed schema with schema-less datatypes (dynamic) | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes, details here | yes bool, datetime, dynamic, guid, int, long, real, string, timespan, double: docs.microsoft.com/en-us/azure/kusto/query/scalar-data-types | no | 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 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | all fields are automatically indexed | yes full-text index on all search fields | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL for querying | SQL-like query language (GQL) | Kusto Query Language (KQL), SQL subset | SQL-like query language (SphinxQL) | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC RESTful HTTP/JSON API | gRPC (using protocol buffers) API RESTful HTTP/JSON API | Microsoft SQL Server communication protocol (MS-TDS) RESTful HTTP API | Proprietary protocol | JDBC Native Spark Datasource ODBC | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure JavaScript PHP Python R Ruby Scala | .Net Go Java JavaScript (Node.js) PHP Python Ruby | .Net Go Java JavaScript (Node.js) PowerShell Python R | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | C# C++ Java JavaScript (Node.js) Python R Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | using Google App Engine | Yes, possible languages: KQL, Python, R | no | yes Java | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | Callbacks using the Google Apps Engine | yes see docs.microsoft.com/en-us/azure/kusto/management/updatepolicy | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding manual/auto, time-based | Sharding | Sharding Implicit feature of the cloud service | Sharding Partitioning is done manually, search queries against distributed index is supported | Shared Nothhing Auto-Sharding, Columnar Partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes, via HDFS, S3 or other storage engines | Multi-source replication using Paxos | yes Implicit feature of the cloud service. Replication either local, cross-facility or geo-redundant. | none | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes using Google Cloud Dataflow | Spark connector (open source): github.com/Azure/azure-kusto-spark | no | Yes, via Full Spark Integration | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency or Eventual Consistency depending on type of query and configuration Strong Consistency is default for entity lookups and queries within an Entity Group (but can instead be made eventually consistent). Other queries are always eventual consistent. | Eventual Consistency Immediate Consistency | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | yes via ReferenceProperties or Ancestor paths | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID Serializable Isolation within Transactions, Read Committed outside of Transactions | no | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes, multi-version concurrency control (MVCC) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes The original contents of fields are not stored in the Sphinx index. | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | no | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | RBAC using LDAP or Druid internals for users and groups for read/write by datasource and system | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | Azure Active Directory Authentication | no | Access rights for users, groups and roles according to SQL-standard | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendorWe 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Druid | Google Cloud Datastore | Microsoft Azure Data Explorer | Sphinx | Splice Machine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | The DB-Engines ranking includes now search engines | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | Apache Druid Wins Best Big Data Product in the 2023 BigDATAwire Readers' Choice Awards 'Lucifer' Botnet Turns Up the Heat on Apache Hadoop Servers New DDoS malware Attacking Apache big-data stack, Hadoop, & Druid Servers Apache Druid Takes Its Place In The Pantheon Of Databases How to connect DataGrip to Apache Druid | by Zisis Flokas provided by Google News | Best cloud storage of 2024 Google Cloud Stops Exit Fees BigID Data Intelligence Platform Now Available on Google Cloud Marketplace What is Google App Engine? | Definition from TechTarget Google says it'll stop charging fees to transfer data out of Google Cloud provided by Google News | Update records in a Kusto Database (public preview) | Azure updates Public Preview: Azure Data Explorer connector for Apache Flink | Azure updates New Features for graph-match KQL Operator: Enhanced Pattern Matching and Cycle Control | Azure updates Public Preview: Azure Data Explorer Add-On for Splunk | Azure updates Azure Data Explorer: Log and telemetry analytics benchmark provided by Google News | Switching From Sphinx to MkDocs Documentation — What Did I Gain and Lose Manticore is a Faster Alternative to Elasticsearch in C++ Perplexity AI: From Its Use To Operation, Everything You Need To Know About Google's Newest Challenger The Pirate Bay was recently down for over a week due to a DDoS attack Beyond the Concert Hall: 5 Organizations Making a Difference in Classical Music in 2018 | WQXR Editorial provided by Google News | Machine learning data pipeline outfit Splice Machine files for insolvency Splice Machine Launches Feature Store to Simplify Feature Engineering Distributed SQL System Review: Snowflake vs Splice Machine Big Data News: Splice Machine, Carpathia, Altiscale, DataGravity Hadoop-based RDBMS Now Available from Splice provided by Google News |
Share this page