DBMS > Elasticsearch vs. Milvus vs. Solr vs. Titan vs. Weaviate
System Properties Comparison Elasticsearch vs. Milvus vs. Solr vs. Titan vs. Weaviate
Editorial information provided by DB-Engines | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Name | Elasticsearch Xexclude from comparison | Milvus Xexclude from comparison | Solr Xexclude from comparison | Titan Xexclude from comparison | Weaviate Xexclude from comparison | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Titan has been decommisioned after the takeover by Datastax. It will be removed from the DB-Engines ranking. A fork has been open-sourced as JanusGraph. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 designed for efficient storage of vector data and vector similarity searches | A widely used distributed, scalable search engine based on Apache Lucene | Titan is a Graph DBMS optimized for distributed clusters. | An AI-native realtime vector database engine that integrates scalable machine learning models. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Primary database model | Search engine | Vector DBMS | Search engine | Graph DBMS | Vector DBMS | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary database models | Document store Spatial DBMS Vector DBMS | Spatial DBMS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Website | www.elastic.co/elasticsearch | milvus.io | solr.apache.org | github.com/thinkaurelius/titan | github.com/weaviate/weaviate weaviate.io | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Technical documentation | www.elastic.co/guide/en/elasticsearch/reference/current/index.html | milvus.io/docs/overview.md | solr.apache.org/resources.html | github.com/thinkaurelius/titan/wiki | weaviate.io/developers/weaviate | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Developer | Elastic | Apache Software Foundation | Aurelius, owned by DataStax | Weaviate B.V. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Initial release | 2010 | 2019 | 2006 | 2012 | 2019 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Current release | 8.6, January 2023 | 2.3.4, January 2024 | 9.6.0, April 2024 | 1.19, May 2023 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
License Commercial or Open Source | Open Source Elastic License | Open Source Apache Version 2.0 | Open Source Apache Version 2 | Open Source Apache license, version 2.0 | Open Source commercial license available with Weaviate Enterprise | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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. | Zilliz Cloud – Cloud-native service for Milvus | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Implementation language | Java | C++, Go | Java | Java | Go | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server operating systems | All OS with a Java VM | Linux macOS 10.14 or later Windows with WSL 2 enabled | All OS with a Java VM runs as a servlet in servlet container (e.g. Tomcat, Jetty is included) | Linux OS X Unix Windows | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Data scheme | schema-free Flexible type definitions. Once a type is defined, it is persistent | yes Dynamic Fields enables on-the-fly addition of new fields | yes | yes, maps to GraphQL interface | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typing predefined data types such as float or date | yes | Vector, Numeric and String | yes supports customizable data types and automatic typing | yes | yes string, int, float, geo point, date, cross reference, fuzzy references | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | yes | no | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Secondary indexes | yes All search fields are automatically indexed | no | yes All search fields are automatically indexed | yes | yes all data objects are indexed in a semantic vector space (the Contextionary), all primitive fields are indexed | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SQL Support of SQL | SQL-like query language | no | Solr Parallel SQL Interface | no | GraphQL is used as query language | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
APIs and other access methods | Java API RESTful HTTP/JSON API | RESTful HTTP API | Java API RESTful HTTP/JSON API | Java API TinkerPop Blueprints TinkerPop Frames TinkerPop Gremlin TinkerPop Rexster | GraphQL query language RESTful HTTP/JSON API | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Supported programming languages | .Net Groovy Community Contributed Clients Java JavaScript Perl PHP Python Ruby | C++ Go Java JavaScript (Node.js) Python | .Net Erlang Java JavaScript any language that supports sockets and either XML or JSON Perl PHP Python Ruby Scala | Clojure Java Python | JavaScript / TypeScript Python | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Server-side scripts Stored procedures | yes | no | Java plugins | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Triggers | yes by using the 'percolation' feature | no | yes User configurable commands triggered on index changes | yes | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Partitioning methods Methods for storing different data on different nodes | Sharding | Sharding | Sharding | yes via pluggable storage backends | Sharding | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Replication methods Methods for redundantly storing data on multiple nodes | yes | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MapReduce Offers an API for user-defined Map/Reduce methods | ES-Hadoop Connector | no | spark-solr: github.com/lucidworks/spark-solr and streaming expressions to reduce | yes via Faunus, a graph analytics engine | 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 | Bounded Staleness Eventual Consistency Immediate Consistency Session Consistency Tunable Consistency | Eventual Consistency | Eventual Consistency Immediate Consistency | Eventual Consistency | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Foreign keys Referential integrity | no | no | no | yes Relationships in graph | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Transaction concepts Support to ensure data integrity after non-atomic manipulations of data | no | no | optimistic locking | ACID | no | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Concurrency Support for concurrent manipulation of data | yes | yes | yes | yes | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Durability Support for making data persistent | yes | yes | yes | yes Supports various storage backends: Cassandra, HBase, Berkeley DB, Akiban, Hazelcast | yes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
In-memory capabilities Is there an option to define some or all structures to be held in-memory only. | Memcached and Redis integration | yes | yes | yes | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
User concepts Access control | Role based access control and fine grained access rights | yes | User authentification and security via Rexster Graph Server | API Keys OpenID Connect Discovery | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
More information provided by the system vendor | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Elasticsearch | Milvus | Solr | Titan | Weaviate | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Specific characteristics | Milvus is an open-source and cloud-native vector database built for production-ready... » more | Weaviate is an open source vector database that is robust, scalable, cloud-native,... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Competitive advantages | Highly available, versatile, and robust with millisecond latency. Supports batch... » more | Flexible deployment - Free, open source or fully-managed cloud vector database service... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Typical application scenarios | RAG: retrieval augmented generation Video media : video understanding, video deduplication.... » more | As a database supporting the development of generative AI and semantic search applications... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Key customers | Milvus is trusted by thousands of enterprises, including PayPal, eBay, IKEA, LINE,... » more | All companies that have data. » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Market metrics | As of January 2024, 25k+ GitHub stars 10M+ downloads and installations 3k+ enterprise... » more | As of mid 2023: Over 2 million open source downloads 3500+ Weaviate Slack community... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Licensing and pricing models | Milvus was released under the open-source Apache License 2.0 in October 2019. Fully-managed... » more | Weaviate is open-source, and free to use. Weaviate is also available as a fully managed... » more | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
We 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 | Milvus | Solr | Titan | Weaviate | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | Vector databases | 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 | Graph DBMS increased their popularity by 500% within the last 2 years Graph DBMSs are gaining in popularity faster than any other database category | Weaviate, an ANN Database with CRUD support Elasticsearch Enables 400 Criteo Engineers to Search 4 TB of Log Data per Week Netflix Uses Elasticsearch Percolate Queries to Implement Reverse Searches Efficiently Splunk vs Elasticsearch | A Comparison and How to Choose Using Elasticsearch to Offload Search and Analytics from DynamoDB: Pros and Cons Introducing Elasticsearch Vector Database to Azure OpenAI Service On Your Data (Preview) provided by Google News How NVIDIA GPU Acceleration Supercharged Milvus Vector Database Milvus 2.4 Unveils Game-Changing Features for Enhanced Vector Search AI-Powered Search Engine With Milvus Vector Database on Vultr Zilliz Unveils Game-Changing Features for Vector Search IBM watsonx.data’s integrated vector database: unify, prepare, and deliver your data for AI provided by Google News SOLR-led walkout demands better conditions for Compass workers (SOLR) Technical Pivots with Risk Controls Best Practices from Rackspace for Modernizing a Legacy HBase/Solr Architecture Using AWS Services | Amazon Web ... SOLR hosts teach-in of labor movements at Northwestern Top 5 stock gainers and losers: SOLR.V, GRSL.V, ANON.C provided by Google News Titan Graph Database Integration with DynamoDB: World-class Performance, Availability, and Scale for New Workloads Beyond Titan: The Evolution of DataStax's New Graph Database Amazon DynamoDB Storage Backend for Titan: Distributed Graph Database | Amazon Web Services DataStax acquires Aurelius, the startup behind the Titan graph database 5 Q's with Graph Database Expert Marko Rodriguez – Center for Data Innovation provided by Google News Weaviate Partners with Snowflake to Bring Secure GenAI to Snowpark Container Services Build enterprise-ready generative AI solutions with Cohere foundation models in Amazon Bedrock and Weaviate vector ... Getting Started with Weaviate: A Beginner's Guide to Search with Vector Databases Welcome | Weaviate - Vector Database Weaviate Raises $50 Million Series B Funding to Meet Soaring Demand for AI Native Vector Database Technology ... provided by Google News |
Share this page