DBMS > KeyDB vs. LokiJS vs. Microsoft Azure AI Search vs. Microsoft Azure Cosmos DB vs. MySQL
System Properties Comparison KeyDB vs. LokiJS vs. Microsoft Azure AI Search vs. Microsoft Azure Cosmos DB vs. MySQL
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | KeyDB Xexclude from comparison | LokiJS Xexclude from comparison | Microsoft Azure AI Search Xexclude from comparison | Microsoft Azure Cosmos DB former name was Azure DocumentDB Xexclude from comparison | MySQL Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | An ultra-fast, open source Key-value store fully compatible with Redis API, modules, and protocols | In-memory JavaScript DBMS | Search-as-a-service for web and mobile app development | Globally distributed, horizontally scalable, multi-model database service | Widely used open source RDBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Key-value store | Document store | Search engine | Document store Graph DBMS Key-value store Wide column store | Relational DBMS Key/Value like access via memcached API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Vector DBMS | Spatial DBMS | Document store Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | github.com/Snapchat/KeyDB keydb.dev | github.com/techfort/LokiJS | azure.microsoft.com/en-us/services/search | azure.microsoft.com/services/cosmos-db | www.mysql.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.keydb.dev | techfort.github.io/LokiJS | learn.microsoft.com/en-us/azure/search | learn.microsoft.com/azure/cosmos-db | dev.mysql.com/doc | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | EQ Alpha Technology Ltd. | Microsoft | Microsoft | Oracle since 2010, originally MySQL AB, then Sun | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2019 | 2014 | 2015 | 2014 | 1995 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | V1 | 8.4.0, April 2024 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source BSD-3 | Open Source | commercial | commercial | Open Source GPL version 2. Commercial licenses with extended functionallity are available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Cloud-based only Only available as a cloud service | no | no | yes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DBaaS offerings (sponsored links) Database as a Service Providers of DBaaS offerings, please contact us to be listed. | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | C++ | JavaScript | C and C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | Linux | server-less, requires a JavaScript environment (browser, Node.js) | hosted | hosted | FreeBSD Linux OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free | schema-free | yes | schema-free | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | partial Supported data types are strings, hashes, lists, sets and sorted sets, bit arrays, hyperloglogs and geospatial indexes | no | yes | yes JSON types | 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 | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes by using the Redis Search module | yes via views | yes | yes All properties auto-indexed by default | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | no | no | SQL-like query language | yes with proprietary extensions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Proprietary protocol RESP - REdis Serialization Protoco | JavaScript API | RESTful HTTP API | DocumentDB API Graph API (Gremlin) MongoDB API RESTful HTTP API Table API | ADO.NET JDBC ODBC Proprietary native API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | C C# C++ Clojure Crystal D Dart Elixir Erlang Fancy Go Haskell Haxe Java JavaScript (Node.js) Lisp Lua MatLab Objective-C OCaml Pascal Perl PHP Prolog Pure Data Python R Rebol Ruby Rust Scala Scheme Smalltalk Swift Tcl Visual Basic | JavaScript | C# Java JavaScript Python | .Net C# Java JavaScript JavaScript (Node.js) MongoDB client drivers written for various programming languages Python | Ada C C# C++ D Delphi Eiffel Erlang Haskell Java JavaScript (Node.js) Objective-C OCaml Perl PHP Python Ruby Scheme Tcl | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | Lua | View functions in JavaScript | no | JavaScript | yes proprietary syntax | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | no | yes | no | JavaScript | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding Implicit feature of the cloud service | Sharding Implicit feature of the cloud service | horizontal partitioning, sharding with MySQL Cluster or MySQL Fabric | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | Multi-source replication Source-replica replication | none | yes Implicit feature of the cloud service | yes Implicit feature of the cloud service | Multi-source replication Source-replica replication | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes | no | with Hadoop integration Integration with Hadoop/HDInsight on Azure* | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Strong eventual consistency with CRDTs | none | Immediate Consistency | Bounded Staleness Consistent Prefix Eventual Consistency Immediate Consistency Consistency level configurable on request level Session Consistency | Immediate Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | yes not for MyISAM storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | Optimistic locking, atomic execution of commands blocks and scripts | no atomic operations within a single collection possible | no | Multi-item ACID transactions with snapshot isolation within a partition | ACID not for MyISAM storage engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes table locks or row locks depending on storage engine | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes Configurable mechanisms for persistency via snapshots and/or operations logs | yes Serialization of a DB in a Node.JS/Cordova/PhoneGap environment. Usage of the IndexedDB-API in a browser. | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | yes | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | simple password-based access control and ACL | no | yes using Azure authentication | Access rights can be defined down to the item level | Users with fine-grained authorization concept no user groups or roles | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | CData: Connect to Big Data & NoSQL through standard Drivers. » more | Aiven for MySQL: Fully managed MySQL, deployable in the cloud of your choice, with seamless integrations and lightning-fast setup.
» more Navicat for MySQL is the ideal solution for MySQL/MariaDB administration and development. » more CData: Connect to Big Data & NoSQL through standard Drivers. » more Navicat Monitor is a safe, simple and agentless remote server monitoring tool for MySQL and many other database management systems. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
KeyDB | LokiJS | Microsoft Azure AI Search | Microsoft Azure Cosmos DB former name was Azure DocumentDB | MySQL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | New kids on the block: database management systems implemented in JavaScript | MySQL is the DBMS of the Year 2019 MariaDB strengthens its position in the open source RDBMS market The struggle for the hegemony in Oracle's database empire Oh, snap! Snap snaps up database developer KeyDB Garnet–open-source faster cache-store speeds up applications, services Snap Acquires KeyDB for Open-Source Services Dragonfly 1.0 Released For What Claims To Be The World's Fastest In-Memory Data Store Microsoft open-sources Garnet cache-store -- a Redis rival? provided by Google News LokiJS - A JavaScript Database provided by Google News Announcing updates to Azure AI Search to help organizations build and scale generative AI applications Microsoft and ServiceNow at Knowledge 2024: Introducing generative AI innovation Azure OpenAI Service: Transforming legal practices with generative AI solutions Public Preview of Azure OpenAI and AI Search in-app connectors for Logic Apps (Standard) | Azure updates Raise the bar on AI-powered app development with Azure Database for PostgreSQL provided by Google News Start your AI journey with Microsoft Azure Cosmos DB—compete for $10K Public Preview: DiskANN vector indexing and search in Azure Cosmos DB NoSQL | Azure updates Public preview: Change partition key of a container in Azure Cosmos DB (NoSQL API) | Azure updates Building Planet-Scale .NET Apps with Azure Cosmos DB Public preview: Filtered vector search in vCore-based Azure Cosmos DB for MongoDB | Azure updates provided by Google News Early MySQL engineer questions whether Oracle is unintentionally killing off the open source database Amazon Aurora MySQL version 2 (with MySQL 5.7 compatibility) to version 3 (with MySQL 8.0 compatibility) upgrade ... Enterprise Manager: How Comcast enhanced monitoring for MySQL InnoDB Clusters Zendesk Moves from DynamoDB to MySQL and S3 to Save over 80% in Costs How to Create a MySQL 8 Database User With Remote Access provided by Google News |
Share this page