DBMS > Elasticsearch vs. Realm vs. Riak KV vs. RRDtool vs. Sphinx
System Properties Comparison Elasticsearch vs. Realm vs. Riak KV vs. RRDtool vs. Sphinx
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | Realm Xexclude from comparison | Riak KV Xexclude from comparison | RRDtool Xexclude from comparison | Sphinx Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | A distributed, RESTful modern search and analytics engine based on Apache Lucene Elasticsearch lets you perform and combine many types of searches such as structured, unstructured, geo, and metric | A DBMS built for use on mobile devices that’s a fast, easy to use alternative to SQLite and Core Data | Distributed, fault tolerant key-value store | Industry standard data logging and graphing tool for time series data. RRD is an acronym for round-robin database. The data is stored in a circular buffer, thus the system storage footprint remains constant over time. | Open source search engine for searching in data from different sources, e.g. relational databases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine | Document store | Key-value store with links between data sets and object tags for the creation of secondary indexes | Time Series DBMS | Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS Vector DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | realm.io | oss.oetiker.ch/rrdtool | sphinxsearch.com | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | realm.io/docs | www.tiot.jp/riak-docs/riak/kv/latest | oss.oetiker.ch/rrdtool/doc | sphinxsearch.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | Realm, acquired by MongoDB in May 2019 | OpenSource, formerly Basho Technologies | Tobias Oetiker | Sphinx Technologies Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2014 | 2009 | 1999 | 2001 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 3.2.0, December 2022 | 1.8.0, 2022 | 3.5.1, February 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | Open Source | Open Source Apache version 2, commercial enterprise edition | Open Source GPL V2 and FLOSS | Open Source GPL version 2, commercial licence available | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Erlang | C Implementations in Java (e.g. RRD4J) and C# available | C++ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Android Backend: server-less iOS Windows | Linux OS X | HP-UX Linux | FreeBSD Linux NetBSD OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | yes | schema-free | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | Numeric data only | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 Exporting into and restoring from XML files possible | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | yes | restricted | no | yes full-text index on all search fields | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | no | no | no | SQL-like query language (SphinxQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | HTTP API Native Erlang Interface | in-process shared library Pipes | Proprietary protocol | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | .Net Java with Android only Objective-C React Native Swift | C unofficial client library C# C++ unofficial client library Clojure unofficial client library Dart unofficial client library Erlang Go unofficial client library Groovy unofficial client library Haskell unofficial client library Java JavaScript unofficial client library Lisp unofficial client library Perl unofficial client library PHP Python Ruby Scala unofficial client library Smalltalk unofficial client library | C with librrd library C# with a different implementation of RRDTool Java with a different implementation of RRDTool JavaScript (Node.js) with a different implementation of RRDTool Lua Perl PHP with a wrapper library Python Ruby | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | no runs within the applications so server-side scripts are unnecessary | Erlang | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | yes Change Listeners | yes pre-commit hooks and post-commit hooks | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | none | Sharding no "single point of failure" | none | Sharding Partitioning is done manually, search queries against distributed index is supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | none | selectable replication factor | none | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | no | yes | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Eventual Consistency Synchronous doc based replication. Get by ID may show delays up to 1 sec. Configurable write consistency: one, quorum, all | Immediate Consistency | Eventual Consistency | none | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no links between data sets can be stored | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | ACID | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes by using the rrdcached daemon | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes | yes The original contents of fields are not stored in the Sphinx index. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Memcached and Redis integration | yes In-Memory realm | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | yes | yes, using Riak Security | 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 servicesWe invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | Realm | Riak KV | RRDtool | Sphinx | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | PostgreSQL is the DBMS of the Year 2017 Elasticsearch moved into the top 10 most popular database management systems MySQL, PostgreSQL and Redis are the winners of the March ranking | MySQL, PostgreSQL and Redis are the winners of the March ranking | Time Series DBMS are the database category with the fastest increase in popularity Time Series DBMS as a new trend? | The DB-Engines ranking includes now search engines 8 Powerful Alternatives to Elasticsearch Splunk vs Elasticsearch | A Comparison and How to Choose Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently Introducing Elasticsearch Vector Database to Azure OpenAI Service On Your Data (Preview) Elasticsearch Open Inference API Supports Cohere Rerank 3 provided by Google News MongoDB aims to unify developer experience with launch of MongoDB Cloud Danish CEO explains Silicon Valley learning curve for European entrepreneurs - San Francisco Business Times MongoDB Cloud Gives Developers An Escape From Data Silos With First-Ever Unified Cloud-To-Mobile Experience Is Swift the Future of Server-side Development? Kotlin Programming Language Will Surpass Java On Android Next Year provided by Google News SQLi vulnerability in Cacti could lead to RCE (CVE-2023-51448) Critical IP spoofing bug patched in Cacti How to install Cacti SNMP Monitor on Ubuntu The 16 Best Open Source Network Monitoring Tools in 2023 Graph Your Network with Cacti 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 How to Build 600+ Links in One Month provided by Google News |
Share this page