Solr vs. Elasticsearch - Why SearchBlox uses Elasticsearch!



Solr vs. Elasticsearch - Why SearchBlox uses Elasticsearch!

Solr

Solr refers to the main logical data structure as The Collection, which is composed of many Shards.

A Collection can have an exact copy of the Shard, called a Replica.

You must develop a custom search component to index different document types.

ElasticSearch

An Index is the term used for the top logical data structure, which can have multiple Shards.

Lucene indices is the term for Shards and Replicas.

Allows multiple document types in a single Index, which allows you to index different index structures in one place.

Different types of documents can be separated and indexed when querying.

Configuration

Solr requires a schema.xml file to define its index structure, fields, and types. ElasticSearch is schemaless, which means you can start indexing documents without the requirement of a schema. You still can use mapping to define your index structure though, which ElasticSearch uses when new indices are created. It will also make an attempt to create a field from a previously unseen field revealed when a document is indexed. This is an optional feature. In ElasticSearch, all configs are written to a configuration file. In Solr, all configs are defined in the solrconfig.xml file.

Cluster Management

Zen Discovery is the term used for cluster management by ElasticSearch. This is where the master node is detected for the cluster. There is also a plugin called Apache Zookeeper that uses its own Zen Discovery. Solr, on the other hand, uses Apache Zookeeper ensemble. Zookeeper stores all configuration files to keep track of nodes and cluster states. A new node must be matched to a specific Zookeeper ensemble.


Read full article from Solr vs. Elasticsearch - Why SearchBlox uses Elasticsearch!


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts