DBMS > BoltDB vs. Dragonfly vs. Google Cloud Datastore vs. LevelDB vs. SQLite
System Properties Comparison BoltDB vs. Dragonfly vs. Google Cloud Datastore vs. LevelDB vs. SQLite
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | BoltDB Xexclude from comparison | Dragonfly Xexclude from comparison | Google Cloud Datastore Xexclude from comparison | LevelDB Xexclude from comparison | SQLite Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An embedded key-value store for Go. | A drop-in Redis replacement that scales vertically to support millions of operations per second and terabyte sized workloads, all on a single instance | Automatically scaling NoSQL Database as a Service (DBaaS) on the Google Cloud Platform | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | Widely used embeddable, in-process RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Key-value store | Document store | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/boltdb/bolt | github.com/dragonflydb/dragonfly www.dragonflydb.io | cloud.google.com/datastore | github.com/google/leveldb | www.sqlite.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.dragonflydb.io/docs | cloud.google.com/datastore/docs | github.com/google/leveldb/blob/main/doc/index.md | www.sqlite.org/docs.html | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | DragonflyDB team and community contributors | Dwayne Richard Hipp | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2013 | 2023 | 2008 | 2011 | 2000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0, March 2023 | 1.23, February 2021 | 3.46.0 (23 May 2024), May 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source MIT License | Open Source BSL 1.1 | commercial | Open Source BSD | Open Source Public Domain | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Go | C++ | C++ | C | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | BSD Linux OS X Solaris Windows | Linux | hosted | Illumos Linux OS X Windows | server-less | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | scheme-free | schema-free | schema-free | yes dynamic column types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | no | strings, hashes, lists, sets, sorted sets, bit arrays | yes, details here | no | yes not rigid because of 'dynamic typing' concept. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | no | yes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | SQL-like query language (GQL) | no | yes SQL-92 is not fully supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol RESP - REdis Serialization Protocol | gRPC (using protocol buffers) API RESTful HTTP/JSON API | ADO.NET inofficial driver JDBC inofficial driver ODBC inofficial driver | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Go | C C# C++ Clojure D Dart Elixir Erlang Go Haskell Java JavaScript (Node.js) Lisp Lua Objective-C Perl PHP Python R Ruby Rust Scala Swift Tcl | .Net Go Java JavaScript (Node.js) PHP Python Ruby | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | Actionscript Ada Basic C C# C++ D Delphi Forth Fortran Haskell Java JavaScript Lisp Lua MatLab Objective-C OCaml Perl PHP PL/SQL Python R Ruby Scala Scheme Smalltalk Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | no | Lua | using Google App Engine | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | publish/subscribe channels provide some trigger functionality | Callbacks using the Google Apps Engine | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none | Sharding | none | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none | Source-replica replication | Multi-source replication using Paxos | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | yes using Google Cloud Dataflow | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | none | Eventual 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. | Immediate Consistency | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | yes via ReferenceProperties or Ancestor paths | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | yes | Atomic execution of command blocks and scripts | ACID Serializable Isolation within Transactions, Read Committed outside of Transactions | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes, strict serializability by the server | yes | yes | yes via file-system locks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes with automatic compression on writes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | no | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Password-based authentication | Access rights for users, groups and roles based on Google Cloud Identity and Access Management (IAM) | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 services | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3rd parties | Navicat for SQLite is a powerful and comprehensive SQLite GUI that provides a complete set of functions for database management and development. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
BoltDB | Dragonfly | Google Cloud Datastore | LevelDB | SQLite | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Big gains for Relational Database Management Systems in DB-Engines Ranking What I learnt from building 3 high traffic web applications on an embedded key value store. 4 Instructive Postmortems on Data Downtime and Loss Roblox’s cloud-native catastrophe: A post mortem How to Put a GUI on Ansible, Using Semaphore Grafana Loki: Architecture Summary and Running in Kubernetes provided by Google News DragonflyDB Announces $21m in New Funding and General Availability DragonflyDB reels in $21M for its speedy in-memory database Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Intel Linux Kernel Optimizations Show Huge Benefit For High Core Count Servers New Kubernetes Operator for Dragonfly In-Memory Datastore Now Available for Simplified Operations and Increased ... provided by Google News Best cloud storage of 2024 Google Cloud Stops Exit Fees BigID Data Intelligence Platform Now Available on Google Cloud Marketplace Google Cloud is NOT magicking away data egress fees Why Google is waiving egress fees for disgruntled customers ditching GCP provided by Google News Pliops unveils XDP-Rocks for RocksDB – Blocks and Files Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook Rust-Based Info Stealers Abuse GitHub Codespaces Threat Thursday: BlackGuard Infostealer Rises from Russian Underground Markets provided by Google News Copilot‘s screen-snapping Recall data stored in plain text SQLite in Python: A Practical Guide for Developers How to work with Dapper and SQLite in ASP.NET Core SQLite's new support for binary JSON is similar but different from a PostgreSQL feature • DEVCLASS A Guide to Working with SQLite Databases in Python provided by Google News |
Share this page