DBMS > Datomic vs. InfinityDB vs. LevelDB vs. Memcached vs. SQLite
System Properties Comparison Datomic vs. InfinityDB vs. LevelDB vs. Memcached vs. SQLite
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | InfinityDB Xexclude from comparison | LevelDB Xexclude from comparison | Memcached Xexclude from comparison | SQLite Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | A Java embedded Key-Value Store which extends the Java Map interface | Embeddable fast key-value storage library that provides an ordered mapping from string keys to string values | In-memory key-value store, originally intended for caching | Widely used embeddable, in-process RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Key-value store | Key-value store | Key-value store | Relational DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | boilerbay.com | github.com/google/leveldb | www.memcached.org | www.sqlite.org | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | boilerbay.com/infinitydb/manual | github.com/google/leveldb/blob/main/doc/index.md | github.com/memcached/memcached/wiki | www.sqlite.org/docs.html | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | Boiler Bay Inc. | Danga Interactive originally developed by Brad Fitzpatrick for LiveJournal | Dwayne Richard Hipp | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2002 | 2011 | 2003 | 2000 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 4.0 | 1.23, February 2021 | 1.6.27, May 2024 | 3.46.0 (23 May 2024), May 2024 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | commercial | Open Source BSD | Open Source BSD license | Open Source Public Domain | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java, Clojure | Java | C++ | C | C | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | All OS with a Java VM | Illumos Linux OS X Windows | FreeBSD Linux OS X Unix Windows | server-less | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | yes nested virtual Java Maps, multi-value, logical ‘tuple space’ runtime Schema upgrade | schema-free | schema-free | yes dynamic column types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes all Java primitives, Date, CLOB, BLOB, huge sparse arrays | no | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | no manual creation possible, using inversions based on multi-value capability | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | no | no | yes SQL-92 is not fully supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | Access via java.util.concurrent.ConcurrentNavigableMap Interface Proprietary API to InfinityDB ItemSpace (boilerbay.com/docs/ItemSpaceDataStructures.htm) | Proprietary protocol | ADO.NET inofficial driver JDBC inofficial driver ODBC inofficial driver | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | Java | C++ Go Java 3rd party binding JavaScript (Node.js) 3rd party binding Python 3rd party binding | .Net C C++ ColdFusion Erlang Java Lisp Lua OCaml Perl PHP Python Ruby | 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 | yes Transaction Functions | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | no | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | none | none | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | none | none | none Repcached, a Memcached patch, provides this functionallity | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency READ-COMMITTED or SERIALIZED | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no manual creation possible, using inversions based on multi-value capability | no | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID Optimistic locking for transactions; no isolation for bulk loads | no | no | ACID | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes via file-system locks | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | yes | yes with automatic compression on writes | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes recommended only for testing and development | no | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | no | no | yes using SASL (Simple Authentication and Security Layer) protocol | 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | InfinityDB | LevelDB | Memcached | SQLite | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Redis extends the lead in the DB-Engines key-value store ranking New DB-Engines Ranking shows the popularity of database management systems | Big gains for Relational Database Management Systems in DB-Engines Ranking Nubank buys firm behind Clojure programming language Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach Zoona Case Study Nubank acquires US company; PayPal studies cryptocurrencies provided by Google News Samstealer Attacking Windows Systems To Steal Sensitive Data Pliops unveils XDP-Rocks for RocksDB – Blocks and Files Microsoft Teams stores auth tokens as cleartext in Windows, Linux, Macs Threat Thursday: BlackGuard Infostealer Rises from Russian Underground Markets XanMod, Liquorix Kernels Offer Some Advantages On AMD Ryzen 5 Notebook provided by Google News Why DDoS Threat Actors Are Shifting Their Tactics What are memcached servers, and why are they being used to launch record-setting DDoS attacks? Memcached DDoS: The biggest, baddest denial of service attacker yet Why Redis beats Memcached for caching Unlock on-demand, cost-optimized performance with Amazon ElastiCache Serverless | Amazon Web Services provided by Google News How to work with Dapper and SQLite in ASP.NET Core A Guide to Working with SQLite Databases in Python SQLite Vulnerability Could Put Thousands of Apps at Risk SQLite's new support for binary JSON is similar but different from a PostgreSQL feature • DEVCLASS Universal API Access from Postgres and SQLite provided by Google News |
Share this page