DBMS > Apache Drill vs. Dgraph vs. LokiJS vs. TiDB vs. YugabyteDB
System Properties Comparison Apache Drill vs. Dgraph vs. LokiJS vs. TiDB vs. YugabyteDB
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Apache Drill Xexclude from comparison | Dgraph Xexclude from comparison | LokiJS Xexclude from comparison | TiDB Xexclude from comparison | YugabyteDB Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Schema-free SQL Query Engine for Hadoop, NoSQL and Cloud Storage | Distributed and scalable native Graph DBMS | In-memory JavaScript DBMS | TiDB is an open source distributed SQL database that supports Hybrid Transactional/Analytical Processing (HTAP) workloads. It is MySQL compatible and features horizontal scalability, strong consistency, and high availability. | High-performance distributed SQL database for global, internet-scale applications. Wire and feature compatible with PostgreSQL. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Document store Relational DBMS | Graph DBMS | Document store | Relational DBMS | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store | Document store Wide column store | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | drill.apache.org | dgraph.io | github.com/techfort/LokiJS | pingcap.com | www.yugabyte.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | drill.apache.org/docs | dgraph.io/docs | techfort.github.io/LokiJS | docs.pingcap.com/tidb/stable | docs.yugabyte.com github.com/yugabyte/yugabyte-db | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Apache Software Foundation | Dgraph Labs, Inc. | PingCAP, Inc. | Yugabyte Inc. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2016 | 2014 | 2016 | 2017 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.20.3, January 2023 | 8.1.0, May 2024 | 2.19, September 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Apache Version 2 | Open Source Apache 2.0 | Open Source | Open Source Apache 2.0 | Open Source Apache 2.0 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | TiDB Cloud: Fully-managed TiDB Service. Bring everything great about TiDB to the cloud. | YugabyteDB Managed is the fully managed database-as-a-service offering of YugabyteDB. Get started quickly, and effortlessly ensure continuous availability and limitless scale of your cloud native applications. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | JavaScript | Go, Rust | C and C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux OS X Windows | Linux OS X Windows | server-less, requires a JavaScript environment (browser, Node.js) | Linux | Linux OS X | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | schema-free | yes | depending on used data model | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | yes | 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 | no | yes | yes via views | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL SELECT statement is SQL:2003 compliant | no | no | yes | yes, PostgreSQL compatible | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | JDBC ODBC RESTful HTTP API | GraphQL query language gRPC (using protocol buffers) API HTTP API | JavaScript API | GORM JDBC ODBC Proprietary protocol SQLAlchemy | JDBC YCQL, an SQL-based flexible-schema API with its roots in Cassandra Query Language YSQL - a fully relational SQL API that is wire compatible with the SQL language in PostgreSQL | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C++ | C# C++ Go Java JavaScript (Node.js) PHP Python Ruby | JavaScript | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | C C# C++ Go Java JavaScript (Node.js) PHP Python Ruby Rust Scala | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | user defined functions | no | View functions in JavaScript | no | yes sql, plpgsql, C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | yes | none | horizontal partitioning (by key range) | Hash and Range Sharding, row-level geo-partitioning | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Synchronous replication via Raft | none | Using Raft consensus algorithm to ensure data replication with strong consistency among multiple replicas. | Based on Raft distributed consensus protocol, minimum 3 replicas for continuous availability | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | yes | no | yes | yes with TiSpark Connector | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Immediate Consistency | none | Immediate Consistency | Strong consistency on writes and tunable consistency on reads | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes full support since version 6.6 | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no atomic operations within a single collection possible | ACID | Distributed ACID with Serializable & Snapshot Isolation. Inspired by Google Spanner architecture. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | Depending on the underlying data source | yes | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | yes based on RocksDB | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Depending on the underlying data source | yes | no | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Depending on the underlying data source | no Planned for future releases | no | Fine grained access rights according to SQL-standard | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Dgraph | LokiJS | TiDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | TiDB is an advanced open-source, distributed SQL database for modern application... » more | YugabyteDB is an open source distributed SQL database for cloud native transactional... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | - HORIZONTAL SCALING : TiDB grants total transparency into your data workloads without... » more | PostgreSQL compatible: Get instantly productive with a PostgreSQL compatible RDBMS.... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | TiDB is ideal for transactional applications that require extreme scalability and... » more | Systems of record and engagement for cloud native applications that require resilience,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Block, Pinterest, Catalyst, Bolt, Flipkart, Capcom, Shopee (E-commerce), JD Cloud... » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | 34K+ GitHub stars 5K+ members in TiDB Community Slack 1K+ community contributors... » more | 2 Million+ lifetime clusters deployed, 6.5K+ GitHub stars, 7K YugabyteDB Community... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | TiDB Community : Free open source software (Apache 2.0) TiDB Self-Hosted : Enterprise... » more | Apache 2.0 license for the database » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Apache Drill | Dgraph | LokiJS | TiDB | YugabyteDB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Recent citations in the news | MapR to Speak on Stream Processing Systems, Apache Spark and Drill at Industry Events in January Apache Drill case study: A tutorial on processing CSV files Apache Drill vs. Apache Spark — Which SQL query engine is better for you? Apache Drill Poised to Crack Tough Data Challenges Apache Drill improves big data SQL query engine provided by Google News | Popular Open Source GraphQL Company Dgraph Secures $6M in Seed Round with New Leadership The 12 Best Graph Databases to Consider for 2024 Dgraph on AWS: Setting up a horizontally scalable graph database | Amazon Web Services Dgraph Rises to the Top Graph Database on GitHub With 11 G2 Badges and 11M Downloads Dgraph Raises $6M in Seed Funding provided by Google News | LokiJS - A JavaScript Database provided by Google News | PingCAP Receives Customers' Choice Distinction in the 2024 How PingCAP transformed TiDB into a serverless DBaaS using Amazon S3 and Amazon EBS | Amazon Web Services PingCAP Launches TiDB 7.5, Enhancing Distributed SQL Database Tech Google Cloud's C3D Instances Provide Strong Performance Value For PingCAP's TiDB TiDB by PingCAP Leads Data Management Revolution at GIDS 2024, Empowering India's Burgeoning Developer ... provided by Google News | YugabyteDB Becomes First Distributed SQL Database Vendor to Complete CIS Benchmark YugabyteDB 2.21 Introduces Industry's First Native Disaster Recovery Orchestration Solution for a Distributed SQL ... The surprising link between Formula One and enterprise PostgreSQL optimisation Yugabyte Achieves PCI DSS Level 1 Compliance, Validating Secure and Scalable Distributed PostgreSQL for ... Can Yugabyte Become The Defacto Database For Large-Scale, Cloud Native Applications? provided by Google News |
Share this page