DBMS > Datomic vs. MarkLogic vs. RocksDB vs. Solr vs. Sphinx
System Properties Comparison Datomic vs. MarkLogic vs. RocksDB vs. Solr vs. Sphinx
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Datomic Xexclude from comparison | MarkLogic Xexclude from comparison | RocksDB Xexclude from comparison | Solr Xexclude from comparison | Sphinx Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Description | Datomic builds on immutable values, supports point-in-time queries and uses 3rd party systems for durability | Operational and transactional Enterprise NoSQL database | Embeddable persistent key-value store optimized for fast storage (flash and RAM) | A widely used distributed, scalable search engine based on Apache Lucene | Open source search engine for searching in data from different sources, e.g. relational databases | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Relational DBMS | Document store Native XML DBMS RDF store as of version 7 Search engine | Key-value store | Search engine | Search engine | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Spatial DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
|
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.datomic.com | www.marklogic.com | rocksdb.org | solr.apache.org | sphinxsearch.com | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | docs.datomic.com | docs.marklogic.com | github.com/facebook/rocksdb/wiki | solr.apache.org/resources.html | sphinxsearch.com/docs | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Cognitect | MarkLogic Corp. | Facebook, Inc. | Apache Software Foundation | Sphinx Technologies Inc. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2012 | 2001 | 2013 | 2006 | 2001 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 1.0.6735, June 2023 | 11.0, December 2022 | 8.11.4, April 2024 | 9.5.0, February 2024 | 3.5.1, February 2023 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | commercial limited edition free | commercial restricted free version is available | Open Source BSD | Open Source Apache Version 2 | 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, Clojure | C++ | C++ | Java | C++ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux OS X Windows | Linux | All OS with a Java VM runs as a servlet in servlet container (e.g. Tomcat, Jetty is included) | FreeBSD Linux NetBSD OS X Solaris Windows | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | yes | schema-free Schema can be enforced | schema-free | yes Dynamic Fields enables on-the-fly addition of new fields | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | yes | no | yes supports customizable data types and automatic typing | 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 | yes | no | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes | yes | no | yes All search fields are automatically indexed | yes full-text index on all search fields | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | no | yes SQL92 | no | Solr Parallel SQL Interface | SQL-like query language (SphinxQL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | RESTful HTTP API | Java API Node.js Client API ODBC proprietary Optic API Proprietary Query API, introduced with version 9 RESTful HTTP API SPARQL WebDAV XDBC XQuery XSLT | C++ API Java API | Java API RESTful HTTP/JSON API | Proprietary protocol | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | Clojure Java | C C# C++ Java JavaScript (Node.js) Perl PHP Python Ruby | C C++ Go Java Perl Python Ruby | .Net Erlang Java JavaScript any language that supports sockets and either XML or JSON Perl PHP Python Ruby Scala | C++ unofficial client library Java Perl unofficial client library PHP Python Ruby unofficial client library | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes Transaction Functions | yes via XQuery or JavaScript | no | Java plugins | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | By using transaction functions | yes | yes User configurable commands triggered on index changes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | none But extensive use of caching in the application peers | Sharding | horizontal partitioning | Sharding | Sharding Partitioning is done manually, search queries against distributed index is supported | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | none But extensive use of caching in the application peers | yes | yes | yes | none | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | no | yes via Hadoop Connector, HDFS Direct Access and in-database MapReduce jobs | no | spark-solr: github.com/lucidworks/spark-solr and streaming expressions to reduce | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Consistency concepts Methods to ensure consistency in a distributed system | Immediate Consistency | Immediate Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | no | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | ACID | ACID can act as a resource manager in an XA/JTA transaction | yes | optimistic locking | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes using external storage systems (e.g. Cassandra, DynamoDB, PostgreSQL, Couchbase and others) | 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. | yes recommended only for testing and development | yes, with Range Indexes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | no | Role-based access control at the document and subdocument levels | no | yes | 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 | Speedb: A high performance RocksDB-compliant key-value store optimized for write-intensive workloads. » more | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We invite representatives of vendors of related products to contact us for presenting information about their offerings here. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More resources | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Datomic | MarkLogic | RocksDB | Solr | Sphinx | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
DB-Engines blog posts | Elasticsearch replaced Solr as the most popular search engine Enterprise Search Engines almost double their popularity in the last 12 months The DB-Engines ranking includes now search engines | The DB-Engines ranking includes now search engines Stanchion Turns SQLite Into A Column Store Nubank buys firm behind Clojure programming language Zoona Case Study Architecting Software for Leverage TerminusDB Takes on Data Collaboration with a git-Like Approach provided by Google News MarkLogic “The NoSQL Database”. In the MarkLogic Query Console, you can… | by Abhay Srivastava | Apr, 2024 Database Platform to Simplify Complex Data | Progress Marklogic ABN AMRO Moves Progress-Powered Credit Store App to Azure Cloud; Achieves 40% Faster Data Processing, Lower ... Seven Quick Steps to Setting Up MarkLogic Server in Kubernetes Progress's $355m move for MarkLogic sets the tone for 2023 provided by Google News Did Rockset Just Solve Real-Time Analytics? Pliops Unveils Accelerated Key-Value Store That Boosts RocksDB Performance by 20x at OCP Global Summit Meta’s Velox Means Database Performance Is Not Subject To Interpretation Intel Linux Optimizations Help AMD EPYC "Genoa" Improve Scaling To 384 Threads AMD EPYC vs. Intel Xeon Cascadelake With Facebook's RocksDB Database provided by Google News Keen Solr Review Sale Online | atlantaprogressivenews.com Closing Bell: Solar Alliance Energy Inc flat on Friday (SOLR) SOLR-led walkout demands better conditions for Compass workers Closing Bell: Solar Alliance Energy Inc flat on Tuesday (SOLR) Best Practices from Rackspace for Modernizing a Legacy HBase/Solr Architecture Using AWS Services | Amazon Web ... 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++ The Pirate Bay was recently down for over a week due to a DDoS attack How to Build 600+ Links in One Month Beyond the Concert Hall: 5 Organizations Making a Difference in Classical Music in 2018 | WQXR Editorial provided by Google News |
Share this page