DSE Search versus Open Source Apache Solr

Differences between DSE Search and Open Source Solr (OSS).

By virtue of its integration into DataStax Enterprise, differences exist between DSE Search and Open Source Solr (OSS).

Major differences

Capability DSE Search OS Solr Description
Includes a database yes no For OSS, create an interface to add a database.
Indexes real-time data yes no Ingests real-time data and automatically indexes the data.
Provides an intuitive way to update data yes no CQL for loading and updating data.
Supports data distribution yes yes [1] Transparently distributes real-time, analytics, and search data to multiple nodes in a cluster.
Balances loads on nodes/shards yes no Unlike Solr and Solr Cloud, DSE Search loads can be efficiently rebalanced.
Spans indexes over multiple datacenters yes no A DSE cluster can have more than one datacenter for different types of nodes.
Makes durable updates to data yes no Updates are durable and written to the commit log for all updates.
Automatically reindexes search data yes no OSS requires the client to reingest everything to reindex data in Solr.
Upgrades of Apache Lucene® preserve data yes no DataStax integrates Lucene upgrades periodically and data is preserved when you upgrade DSE.
Supports timeAllowed queries with deep paging. yes no OSS Solr does not support using timeAllowed queries with deep paging.

[1] OSS requires using Zookeeper.

Feature differences

DSE Search supports limiting queries by time by using the Solr timeAllowed parameter. DSE Search differs from native Solr:
  • If the timeAllowed is exceeded, an exception is thrown.
  • If the timeAllowed is exceeded, and the additional shards.tolerant parameter is set to true, the application returns the partial results collected so far.

    When partial results are returned, the CQL custom payload contains the DSESearch.isPartialResults key.