[フレーム]
PPTX, PDF70,684 views

Battle of the giants: Apache Solr vs ElasticSearch

Elasticsearch and Apache Solr are both distributed search engines that provide full text search capabilities and real-time analytics on large volumes of data. The document compares their architectures, data models, query languages, and other features. Key differences include Elasticsearch having a more dynamic schema while Solr relies more on predefined schemas, and Elasticsearch natively supports features like nested objects and parent/child relationships that require additional configuration in Solr.

Sports
Downloaded 733 times
Battle of the Giants Apache Solr 4.0 vs ElasticSearch 0.20 Rafał Kuć – Sematext International @kucrafal @sematext sematext.com
Who Am I • „Solr 3.1 Cookbook" author (4.0 inc) • Sematext consultant & engineer • Solr.pl co-founder • Father and husband  Copyright 2012 Sematext Int’l. All rights reserved
What Will I Talk About ? Copyright 2012 Sematext Int’l. All rights reserved
Under the Hood • ElasticSearch 0.20 – Apache Lucene 3.6.1 • Apache Solr 4.0 – Apache Lucene 4.0 Copyright 2012 Sematext Int’l. All rights reserved
Architecture • What we expect – Scalability – Fault toleranance – High availablity – Features • What we are also looking for – Manageability – Installation ease – Tools Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Cluster Architecture • Distributed • Fault tolerant • Only ElasticSearch nodes • Single leader • Automatic leader election Copyright 2012 Sematext Int’l. All rights reserved
SolrCloud Cluster Architecture • Distributed • Fault tolerant • Apache Solr + ZooKeeper ensemble • Leader per shard • Automatic leader election Copyright 2012 Sematext Int’l. All rights reserved
Collection vs Index • Collection – Solr main logical index • Index – ElasticSearch main logic structure • Collections and Indices can be spread among different nodes in the cluster Copyright 2012 Sematext Int’l. All rights reserved
Multiple Document Types in Index • ElasticSearch - multiple document types in a single index • Apache Solr - multiple document types in a single collection – shared schema.xml Copyright 2012 Sematext Int’l. All rights reserved
Shards and Replicas • Index / Collection can have many shards • Each shard can have 0 or more replicas • Replicas are automatically updated • Replicas can be promoted to leaders when a leader shard goes off-line Copyright 2012 Sematext Int’l. All rights reserved
Index and Query Routing • Control where documents are going • Control where queries are going • Manual data distribution Copyright 2012 Sematext Int’l. All rights reserved
Querying Without Routing Shard 1 Shard 2 Shard 3 Shard 4 Shard 5 Shard 6 Shard 7 Shard 8 Collection / Index Application Copyright 2012 Sematext Int’l. All rights reserved
Query With Routing Shard 1 Shard 2 Shard 3 Shard 4 Shard 5 Shard 6 Shard 7 Shard 8 Collection / Index Application Copyright 2012 Sematext Int’l. All rights reserved
Routing Docs and Queries in Solr • Requires some effort • Defaults to hash based on document identifiers • Can be turned off using solr.NoOpDistributingUpdateProcessorFactory <updateRequestProcessorChain> <processor class="solr.LogUpdateProcessorFactory" /> <processor class="solr.RunUpdateProcessorFactory" /> <processor class="solr.NoOpDistributingUpdateProcessorFactory" /> </updateRequestProcessorChain> Copyright 2012 Sematext Int’l. All rights reserved
Routing Docs and Queries - ElasticSearch • routing parameter controls target shard which document/query will be forwarded to • defaults to document identifiers • can be changed to any value curl -XPUT localhost:9200/sematext/test/1?routing=1234 -d '{ "title" : "Test routing document" }' curl –XGET localhost:9200/sematext/test/_search/?q=*&routing=1234 Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr Index Structure • Field types defined in schema.xml file • Fields defined in schema.xml file • Allows automatic value copying • Allows dynamic fields • Allows custom similarity definition Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Index Structure • Schema - less • Analyzers and filters defined with HTTP API • Fields defined with an HTTP request • Multi – field support • Allows nested documents • Allows parent – child relationship • Allows structured data Copyright 2012 Sematext Int’l. All rights reserved
Index Structure Manipulation • Possible to some extent in Solr as well as ElasticSearch • ElasticSearch allows dynamic mappings update (not always) Copyright 2012 Sematext Int’l. All rights reserved
Aliasing • Solr – Allows core aliasing • ElasticSearch – Allows index aliasing – We can add filter to alias – We can add index routing – We can add search routing Copyright 2012 Sematext Int’l. All rights reserved
Server Configuration • Solr • ElasticSearch – Static in solrconfig.xml – Static in elasticsearch.yml – Can be reloaded – Properties can be during runtime with changed during runtime collection/core reload (although not all) without reloading Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Gateway Module • Your data time machine • Stores indices and meta data • Currently available: – Local – Shared FS – Hadoop – S3 Copyright 2012 Sematext Int’l. All rights reserved
Discovery • Apache Solr uses ZooKeeper • ElasticSearch uses Zen Discovery Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Zen Discovery • Allows automatic node discovery • Provides multicast and unicast discovery methods • Automatic master detection • Two - way failure detection Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr & Apache ZooKeeper • Requires additional software • ZooKeeper ensemble with 1+ ZooKeeper instances • Prevents split – brain situations • Holds collections configurations • Solr needs to know address of one of the ZooKeeper instances Copyright 2012 Sematext Int’l. All rights reserved
API • HTTP REST API in ElasticSearch or Query String for simple queries • HTTP with Query String in Apache Solr • Both provide specialized Java API – SolrJ for Apache Solr and CloudSolrServer – ElasticSearch with TransportClient for remote connections Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr and Query String • Queries are built of request parameters • Some degree of structuring allowed (local params) curl 'http://localhost:8983/solr/select?q=text:weird&sort=date+desc' Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch REST End-Points • Simple queries built of request parameters • Stuctured queries built as JSON objects curl –XGET 'localhost:9200/sematext/test/_search/?q=_all:weird&sort=date:desc' curl -XGET 'localhost:9200/sematext/test_search' -d '{ "query" : { "term" : { "_all" : "weird" }, "sort" : { "date" : { "order" : "desc" } } }' Copyright 2012 Sematext Int’l. All rights reserved
Data Handling • Solr – Multiple formats allowed as input – Can return results in multiple formats • ElasticSearch – JSON in / JSON out Copyright 2012 Sematext Int’l. All rights reserved
Single or Batch • Solr • ElasticSearch – Single or multiple – Single document with a documents per standard indexing call request – _bulk end – point exposed for batch indexing – _bulk UDP end – point can be exposed for low latency batch indexing Copyright 2012 Sematext Int’l. All rights reserved
Partial Document Updates • Not based on LUCENE-3837 proposed by Andrzej Białecki • Document reindexing on the side of search server • Both servers use versioning to prevent changes being overwritten • Can lead to decreased network traffic in some cases Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Partial Doc Update • Special end – point exposed - _update • Supports parameters like routing, parent, replication, percolate, etc (similar to Index API) • Uses scripts to perform document updates curl -XPOST 'localhost:9200/sematext/test/12345/_update' -d '{ "script" : "ctx._source.enabled = enabled", "params" : { "enabled" : true } }' Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr Partial Doc Update • Sent to the standard update handler • Requires _version_ field to be present curl 'localhost:8983/solr/update?commit=true' -H 'Content- type:application/json' -d '[ { "id" : "12345", "enabled" : { "set" : true } } ]' Copyright 2012 Sematext Int’l. All rights reserved
Solr Collections API • Built on top of Core Admin • Allows: – Collection creation – Collection reload – Collection deletion Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Indices REST API • Allows: – Index creation – Index deletion – Index closing and opening – Index refreshing – Existence checking Copyright 2012 Sematext Int’l. All rights reserved
Analysis Chain Definition • Solr • ElasticSearch – Static in schema.xml – Static in elasticsearch.yml – Can be reloaded – Defined during index/type during runtime with creation with REST call collection/core reload – Possible to change with update mapping call (not all changes allowed) Copyright 2012 Sematext Int’l. All rights reserved
Multilingual Data Handling • Both ElasticSearch and Apache Solr built on top of Apache Lucene • Solr – analyzers defined per field in schema.xml file • ElasticSearch – analyzer defined in mappings, but can be set during query or specified on the basis of field values Copyright 2012 Sematext Int’l. All rights reserved
Results Grouping • Available in Apache Solr only • Allows for results grouping based on: – Field value – Query – Function query (not available during distributed searching) Copyright 2012 Sematext Int’l. All rights reserved
Prospective Search • Allows for checking if a document matches a stored query • Not available in Apache Solr • Available in ElasticSearch under the name of Percolator Copyright 2012 Sematext Int’l. All rights reserved
Spellchecker • Allows to check and correct spelling mistakes • Not available in ElasticSearch currently • Multiple implementations available in Apache Solr – IndexBasedSpellChecker – WordBreakSolrSpellChecker – DirectSolrSpellChecker Copyright 2012 Sematext Int’l. All rights reserved
Full Text Search Capabilities • Variety of queries • Ability to control score calculation • Different query parsers available • Advanced Lucene queries (like SpanQueries) exposed Copyright 2012 Sematext Int’l. All rights reserved
Score Calculation • Leverage Lucene scoring capabilities • Control over document importance • Control over query importance • Control over term and phrase importance Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr and Score Influence • Index time – Document boosts – Field boosts • Query time – Term boosts – Field boosts – Phrases boost – Function queries Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch and Score Influence • Index time – Document and field boosts • Query time – Different queries provide different boost controls – Can calculate distributed term frequencies – Negative and Positive boosting queries – Custom score filters • Scripts – Control scoring with scripts Copyright 2012 Sematext Int’l. All rights reserved
Nested Objects • Possible only in ElasticSearch • Indexed as separate documents • Stored in the same part of the index as the root document • Hidden from standard queries and filters • Need appropriate queries and filters (nested) Copyright 2012 Sematext Int’l. All rights reserved
More Like This • Lets us find similar documents • Solr – More Like This Component • ElasticSearch – More Like This Query – More Like This Field Query – _mlt REST end – point Copyright 2012 Sematext Int’l. All rights reserved
Solr Parent – Child Relationship • Used at query time • Multi core joins possible http://localhost:8983/solr/select?q={!join from=parent to=id}color:Yellow Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Parent – Child Handling • Proper indexing required • Indexed as separate documents • Standard queries don’t return child documents • In order to retrieve parent docs one should use appropriate queries and filters (has_child, has_parent, top_children) Copyright 2012 Sematext Int’l. All rights reserved
Filters • Used to narrown down query results • Good candidates for caching and reuse • Supported by ElasticSearch and Apache Solr • Should be used for repeatable query elements Copyright 2012 Sematext Int’l. All rights reserved
Apache Solr Filter Queries • Multiple filters per query • Filters are addictive • Different query parsers can be used • Local params can be used • Narrow down faceting results Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Filtered Queries • Can be defined using queries exposed by the Query DSL • Can be used for custom score calculation (i.e., custom filters score query) • Doesn’t narrow down faceting results by default (facets have their own filters) Copyright 2012 Sematext Int’l. All rights reserved
Filter Cache Control • Both Solr and ElasticSearch let us control cache for filters • Solr – Using local params and cache property • ElasticSearch – _cache property – _cache_key property Copyright 2012 Sematext Int’l. All rights reserved
Faceting • Both provide common facets – Terms – Range & query – Terms statistics – Spatial distance • Solr – Pivot faceting • ElasticSearch – Histograms Copyright 2012 Sematext Int’l. All rights reserved
Real Time Or Not ? • Allow getting document not yet indexed • Don’t need searcher reopening • ElasticSearch – Separate Get and Multi Get API’s • Apache Solr – Separate Realtime Get Handler – Can be used as a search component Copyright 2012 Sematext Int’l. All rights reserved
Caches and Warming • ElasticSearch and Solr allow caching • Both allow running warming queries • ElasticSearch by default doesn’t limit cache sizes Copyright 2012 Sematext Int’l. All rights reserved
Solr Caches • Types – Filter Cache – Query Result Cache – Document Cache • Implementation choices – LRUCache – FastLRUCache – LFUCache • Other configuration options: – Size – Maximum size – Autowarming count Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Caches • Types – Filter Cache – Field Data Cache • Implementation choices – Resident – Soft – Weak • Other configuration options: – Max size (entries per segment) – Expiration time Copyright 2012 Sematext Int’l. All rights reserved
Cluster State Monitoring • Apache Solr – multiple mbeans exposed by JMX • ElasticSearch – multiple REST end – points exposed to get different statistics Copyright 2012 Sematext Int’l. All rights reserved
ElasticSearch Statistics API • Health and State Check • Nodes Information and Statistics • Cache Statistics • Index Segments Information • Index Information and Statistics • Mappings Information Copyright 2012 Sematext Int’l. All rights reserved
Cluster Monitoring Copyright 2012 Sematext Int’l. All rights reserved
Cluster Monitoring with SPM Copyright 2012 Sematext Int’l. All rights reserved
Cluster Settings Update • ElasticSearch lets us: – Control rebalancing – Control recovery – Control allocation – Change the above on the live cluster Copyright 2012 Sematext Int’l. All rights reserved
Custom Shard Allocation • Possible in ElasticSearch • Cluster level: curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "cluster.routing.allocation.exclude._ip" : "192.168.2.1" } }' • Index level: curl -XPUT localhost:9200/sematext/ -d '{ "index.routing.allocation.include.tag" : "nodeOne,nodeTwo" }' Copyright 2012 Sematext Int’l. All rights reserved
Moving Shards and Replicas • Possible in ElasticSearch, not available in Solr • Allows to move shards and replicas to any node in the cluster on demand • Available in ElasticSearch: curl -XPOST 'localhost:9200/_cluster/reroute' -d '{ "commands" : [ {"move" : {"index" : "sematext", "shard" : 0, "from_node" : "node1", "to_node" : "node2"}}, {"allocate" : {"index" : "sematext", "shard" : 1, "node" : "node3"}} ] }' Copyright 2012 Sematext Int’l. All rights reserved
And The Winner Is ? Copyright 2012 Sematext Int’l. All rights reserved
How to Reach Us • Rafał Kuć – Twitter: @kucrafal – E-mail: rafal.kuc@sematext.com • Sematext – Twitter: @sematext – Website: http://sematext.com • Solr vs ElasticSearch series: • http://blog.sematext.com/2012/08/23/solr-vs- elasticsearch-part-1-overview/ Copyright 2012 Sematext Int’l. All rights reserved
We Are Hiring ! • Dig Search ? • Dig Analytics ? • Dig Big Data ? • Dig Performance ? • Dig working with and in open – source ? • We’re hiring world – wide ! http://sematext.com/about/jobs.html Copyright 2012 Sematext Int’l. All rights reserved

More Related Content

Battle of the Giants - Apache Solr vs. Elasticsearch (ApacheCon)
PPTX
Battle of the Giants - Apache Solr vs. Elasticsearch (ApacheCon)
Solr vs ElasticSearch
PPT
Solr vs ElasticSearch
Elasticsearch - Devoxx France 2012 - English version
KEY
Elasticsearch - Devoxx France 2012 - English version
Introduction to Lucene & Solr and Usecases
PPTX
Introduction to Lucene & Solr and Usecases
Battle of the Giants round 2
PPTX
Battle of the Giants round 2
Solr and Elasticsearch, a performance study
PPT
Solr and Elasticsearch, a performance study
Integrating the Solr search engine
PDF
Integrating the Solr search engine
Workshop: Learning Elasticsearch
PDF
Workshop: Learning Elasticsearch
Battle of the Giants - Apache Solr vs. Elasticsearch (ApacheCon)
Battle of the Giants - Apache Solr vs. Elasticsearch (ApacheCon)
Solr vs ElasticSearch
Solr vs ElasticSearch
Elasticsearch - Devoxx France 2012 - English version
Elasticsearch - Devoxx France 2012 - English version
Introduction to Lucene & Solr and Usecases
Introduction to Lucene & Solr and Usecases
Battle of the Giants round 2
Battle of the Giants round 2
Solr and Elasticsearch, a performance study
Solr and Elasticsearch, a performance study
Integrating the Solr search engine
Integrating the Solr search engine
Workshop: Learning Elasticsearch
Workshop: Learning Elasticsearch

What's hot

From zero to hero - Easy log centralization with Logstash and Elasticsearch
PDF
From zero to hero - Easy log centralization with Logstash and Elasticsearch
Solr Recipes
PDF
Solr Recipes
Introduction to Apache Lucene/Solr
PPTX
Introduction to Apache Lucene/Solr
Introduction to Apache Solr
PPTX
Introduction to Apache Solr
Rapid Prototyping with Solr
PDF
Rapid Prototyping with Solr
Introduction to Apache Solr
PDF
Introduction to Apache Solr
Apache Solr/Lucene Internals by Anatoliy Sokolenko
PDF
Apache Solr/Lucene Internals by Anatoliy Sokolenko
How Solr Search Works
PDF
How Solr Search Works
State-of-the-Art Drupal Search with Apache Solr
KEY
State-of-the-Art Drupal Search with Apache Solr
ElasticSearch in action
PDF
ElasticSearch in action
Solr: 4 big features
PDF
Solr: 4 big features
Introduction to Elasticsearch with basics of Lucene
PPTX
Introduction to Elasticsearch with basics of Lucene
ElasticSearch in Production: lessons learned
PPTX
ElasticSearch in Production: lessons learned
Intro to Elasticsearch
PDF
Intro to Elasticsearch
Introduction to Apache Solr
PDF
Introduction to Apache Solr
Rapid Prototyping with Solr
PDF
Rapid Prototyping with Solr
Hacking Lucene for Custom Search Results
PPTX
Hacking Lucene for Custom Search Results
Building Intelligent Search Applications with Apache Solr and PHP5
PPT
Building Intelligent Search Applications with Apache Solr and PHP5
Lucene's Latest (for Libraries)
PDF
Lucene's Latest (for Libraries)
Elastic search apache_solr
PPT
Elastic search apache_solr
From zero to hero - Easy log centralization with Logstash and Elasticsearch
From zero to hero - Easy log centralization with Logstash and Elasticsearch
Solr Recipes
Solr Recipes
Introduction to Apache Lucene/Solr
Introduction to Apache Lucene/Solr
Introduction to Apache Solr
Introduction to Apache Solr
Rapid Prototyping with Solr
Rapid Prototyping with Solr
Introduction to Apache Solr
Introduction to Apache Solr
Apache Solr/Lucene Internals by Anatoliy Sokolenko
Apache Solr/Lucene Internals by Anatoliy Sokolenko
How Solr Search Works
How Solr Search Works
State-of-the-Art Drupal Search with Apache Solr
State-of-the-Art Drupal Search with Apache Solr
ElasticSearch in action
ElasticSearch in action
Solr: 4 big features
Solr: 4 big features
Introduction to Elasticsearch with basics of Lucene
Introduction to Elasticsearch with basics of Lucene
ElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learned
Intro to Elasticsearch
Intro to Elasticsearch
Introduction to Apache Solr
Introduction to Apache Solr
Rapid Prototyping with Solr
Rapid Prototyping with Solr
Hacking Lucene for Custom Search Results
Hacking Lucene for Custom Search Results
Building Intelligent Search Applications with Apache Solr and PHP5
Building Intelligent Search Applications with Apache Solr and PHP5
Lucene's Latest (for Libraries)
Lucene's Latest (for Libraries)
Elastic search apache_solr
Elastic search apache_solr

Viewers also liked

Getting started with Elasticsearch and .NET
PPTX
Getting started with Elasticsearch and .NET
Apache Solr crash course
PDF
Apache Solr crash course
Solr vs. Elasticsearch - Case by Case
PPTX
Solr vs. Elasticsearch - Case by Case
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
PDF
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Scaling massive elastic search clusters - Rafał Kuć - Sematext
PDF
Scaling massive elastic search clusters - Rafał Kuć - Sematext
Building a real time, solr-powered recommendation engine
PPTX
Building a real time, solr-powered recommendation engine
Solr Application Development Tutorial
PDF
Solr Application Development Tutorial
ElasticSearch for .NET Developers
PPTX
ElasticSearch for .NET Developers
Side by Side with Elasticsearch & Solr, Part 2
PDF
Side by Side with Elasticsearch & Solr, Part 2
Using Apache Solr
PDF
Using Apache Solr
Solr Anti - patterns
PDF
Solr Anti - patterns
Working with deeply nested documents in Apache Solr
PDF
Working with deeply nested documents in Apache Solr
Tuning Elasticsearch Indexing Pipeline for Logs
PPTX
Tuning Elasticsearch Indexing Pipeline for Logs
Scaling Solr with Solr Cloud
PPTX
Scaling Solr with Solr Cloud
Introduction to Apache Solr.
PPT
Introduction to Apache Solr.
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
PPT
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Administering and Monitoring SolrCloud Clusters
PPTX
Administering and Monitoring SolrCloud Clusters
Elastic search introduction
PPT
Elastic search introduction
Catalogue de stage
PDF
Catalogue de stage
ElasticSearch Introduction
PPTX
ElasticSearch Introduction
Getting started with Elasticsearch and .NET
Getting started with Elasticsearch and .NET
Apache Solr crash course
Apache Solr crash course
Solr vs. Elasticsearch - Case by Case
Solr vs. Elasticsearch - Case by Case
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Brief introduction on Hadoop,Dremel, Pig, FlumeJava and Cassandra
Scaling massive elastic search clusters - Rafał Kuć - Sematext
Scaling massive elastic search clusters - Rafał Kuć - Sematext
Building a real time, solr-powered recommendation engine
Building a real time, solr-powered recommendation engine
Solr Application Development Tutorial
Solr Application Development Tutorial
ElasticSearch for .NET Developers
ElasticSearch for .NET Developers
Side by Side with Elasticsearch & Solr, Part 2
Side by Side with Elasticsearch & Solr, Part 2
Using Apache Solr
Using Apache Solr
Solr Anti - patterns
Solr Anti - patterns
Working with deeply nested documents in Apache Solr
Working with deeply nested documents in Apache Solr
Tuning Elasticsearch Indexing Pipeline for Logs
Tuning Elasticsearch Indexing Pipeline for Logs
Scaling Solr with Solr Cloud
Scaling Solr with Solr Cloud
Introduction to Apache Solr.
Introduction to Apache Solr.
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Administering and Monitoring SolrCloud Clusters
Administering and Monitoring SolrCloud Clusters
Elastic search introduction
Elastic search introduction
Catalogue de stage
Catalogue de stage
ElasticSearch Introduction
ElasticSearch Introduction

Similar to Battle of the giants: Apache Solr vs ElasticSearch

Battle of the Giants Round 2 - Apache Solr vs. Elasticsearch
PPTX
Battle of the Giants Round 2 - Apache Solr vs. Elasticsearch
Scaling Massive Elasticsearch Clusters
PPTX
Scaling Massive Elasticsearch Clusters
Introduction to Solr
PDF
Introduction to Solr
Large Scale Performance Monitoring for ElasticSearch, HBase, Solr, SenseiDB, ...
ODP
Large Scale Performance Monitoring for ElasticSearch, HBase, Solr, SenseiDB, ...
Solr4 nosql search_server_2013
PDF
Solr4 nosql search_server_2013
Apache Solr - Enterprise search platform
KEY
Apache Solr - Enterprise search platform
Solr
KEY
Solr Powered Lucene
PDF
Solr Powered Lucene
ApacheCon Europe 2012 -Big Search 4 Big Data
KEY
ApacheCon Europe 2012 -Big Search 4 Big Data
Search Engine Building with Lucene and Solr (So Code Camp San Diego 2014)
PPTX
Search Engine Building with Lucene and Solr (So Code Camp San Diego 2014)
Elastic search Walkthrough
PPTX
Elastic search Walkthrough
Introduction to Solr
PDF
Introduction to Solr
Elasticsearch JVM-MX Meetup April 2016
PDF
Elasticsearch JVM-MX Meetup April 2016
Introduction to elasticsearch
PDF
Introduction to elasticsearch
ElasticSearch: Distributed Multitenant NoSQL Datastore and Search Engine
PDF
ElasticSearch: Distributed Multitenant NoSQL Datastore and Search Engine
Assamese search engine using SOLR by Moinuddin Ahmed ( moin )
PPTX
Assamese search engine using SOLR by Moinuddin Ahmed ( moin )
Elasticsearch and Spark
PDF
Elasticsearch and Spark
NoSQL, Apache SOLR and Apache Hadoop
PDF
NoSQL, Apache SOLR and Apache Hadoop
Elasticsearch for beginners
ODP
Elasticsearch for beginners
Solr -
PPT
Solr -
Battle of the Giants Round 2 - Apache Solr vs. Elasticsearch
Battle of the Giants Round 2 - Apache Solr vs. Elasticsearch
Scaling Massive Elasticsearch Clusters
Scaling Massive Elasticsearch Clusters
Introduction to Solr
Introduction to Solr
Large Scale Performance Monitoring for ElasticSearch, HBase, Solr, SenseiDB, ...
Large Scale Performance Monitoring for ElasticSearch, HBase, Solr, SenseiDB, ...
Solr4 nosql search_server_2013
Solr4 nosql search_server_2013
Apache Solr - Enterprise search platform
Apache Solr - Enterprise search platform
Solr
Solr Powered Lucene
Solr Powered Lucene
ApacheCon Europe 2012 -Big Search 4 Big Data
ApacheCon Europe 2012 -Big Search 4 Big Data
Search Engine Building with Lucene and Solr (So Code Camp San Diego 2014)
Search Engine Building with Lucene and Solr (So Code Camp San Diego 2014)
Elastic search Walkthrough
Elastic search Walkthrough
Introduction to Solr
Introduction to Solr
Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016
Introduction to elasticsearch
Introduction to elasticsearch
ElasticSearch: Distributed Multitenant NoSQL Datastore and Search Engine
ElasticSearch: Distributed Multitenant NoSQL Datastore and Search Engine
Assamese search engine using SOLR by Moinuddin Ahmed ( moin )
Assamese search engine using SOLR by Moinuddin Ahmed ( moin )
Elasticsearch and Spark
Elasticsearch and Spark
NoSQL, Apache SOLR and Apache Hadoop
NoSQL, Apache SOLR and Apache Hadoop
Elasticsearch for beginners
Elasticsearch for beginners
Solr -
Solr -

Recently uploaded

Minnesota Wild Acquire David Jiricek in November 2024
PDF
Minnesota Wild Acquire David Jiricek in November 2024
FIFA World Cup Quarter Final Uniting the Continent through the Lovely Ready.docx
DOCX
FIFA World Cup Quarter Final Uniting the Continent through the Lovely Ready.docx
Poland FIFA World Cup Poland move up to No. 33 in FIFA rankings.docx
DOCX
Poland FIFA World Cup Poland move up to No. 33 in FIFA rankings.docx
Portugal FIFA World Cup Tickets Ronaldo Starts for Portugal Against Ghana in ...
PDF
Portugal FIFA World Cup Tickets Ronaldo Starts for Portugal Against Ghana in ...
Canada FIFA World Cup Tickets Canada Soars, Hosts Mexico, Crashes While Prepp...
PDF
Canada FIFA World Cup Tickets Canada Soars, Hosts Mexico, Crashes While Prepp...
London New Year Eve Fireworks 2025 Booking Frenzy.docx
DOCX
London New Year Eve Fireworks 2025 Booking Frenzy.docx
Ecuador FIFA World Cup Tickets How Chelsea Wonderkid Kendry Paez Fared in Ecu...
PDF
Ecuador FIFA World Cup Tickets How Chelsea Wonderkid Kendry Paez Fared in Ecu...
London New Year Eve Fireworks Harrow’s Firework Caution Drive.docx
DOCX
London New Year Eve Fireworks Harrow’s Firework Caution Drive.docx
Mexico FIFA World Cup Tickets Mexico Plans the Next Step to Strengthen FIFA 2...
DOCX
Mexico FIFA World Cup Tickets Mexico Plans the Next Step to Strengthen FIFA 2...
13 FIFA 2026 Cities Set to Unlock Massive Sponsorship Potential.docx
DOCX
13 FIFA 2026 Cities Set to Unlock Massive Sponsorship Potential.docx
Romeo Lavia Represent Ghana at the World Cup 2026.docx
DOCX
Romeo Lavia Represent Ghana at the World Cup 2026.docx
Kelompok Class Meeting Sepak Bola SD.docx
DOCX
Kelompok Class Meeting Sepak Bola SD.docx
Cristiano_Ronaldo_Personality best_PPT.pptx
PPTX
Cristiano_Ronaldo_Personality best_PPT.pptx
London New Year Eve Fireworks Autumn Skies Unite.docx
DOCX
London New Year Eve Fireworks Autumn Skies Unite.docx
FIFA 2026 Venues All Stadiums and Host Cities in the USA.docx
DOCX
FIFA 2026 Venues All Stadiums and Host Cities in the USA.docx
Uzbekistan FIFA World Cup Tickets Uzbekistan to Face Egypt in Dubai This Nove...
PDF
Uzbekistan FIFA World Cup Tickets Uzbekistan to Face Egypt in Dubai This Nove...
High Performance Periodization — Building Champions Through Smart Training Cy...
PDF
High Performance Periodization — Building Champions Through Smart Training Cy...
NEW BALANCE TENIS DIFERENTES MODELOS.pdf
PDF
NEW BALANCE TENIS DIFERENTES MODELOS.pdf
Sports Quiz 2.0, Spirit 2024, IIT Guwahati
PDF
Sports Quiz 2.0, Spirit 2024, IIT Guwahati
Caelan Doris to Lead Ireland in Autumn Internationals 2025.docx
DOCX
Caelan Doris to Lead Ireland in Autumn Internationals 2025.docx
Minnesota Wild Acquire David Jiricek in November 2024
Minnesota Wild Acquire David Jiricek in November 2024
FIFA World Cup Quarter Final Uniting the Continent through the Lovely Ready.docx
FIFA World Cup Quarter Final Uniting the Continent through the Lovely Ready.docx
Poland FIFA World Cup Poland move up to No. 33 in FIFA rankings.docx
Poland FIFA World Cup Poland move up to No. 33 in FIFA rankings.docx
Portugal FIFA World Cup Tickets Ronaldo Starts for Portugal Against Ghana in ...
Portugal FIFA World Cup Tickets Ronaldo Starts for Portugal Against Ghana in ...
Canada FIFA World Cup Tickets Canada Soars, Hosts Mexico, Crashes While Prepp...
Canada FIFA World Cup Tickets Canada Soars, Hosts Mexico, Crashes While Prepp...
London New Year Eve Fireworks 2025 Booking Frenzy.docx
London New Year Eve Fireworks 2025 Booking Frenzy.docx
Ecuador FIFA World Cup Tickets How Chelsea Wonderkid Kendry Paez Fared in Ecu...
Ecuador FIFA World Cup Tickets How Chelsea Wonderkid Kendry Paez Fared in Ecu...
London New Year Eve Fireworks Harrow’s Firework Caution Drive.docx
London New Year Eve Fireworks Harrow’s Firework Caution Drive.docx
Mexico FIFA World Cup Tickets Mexico Plans the Next Step to Strengthen FIFA 2...
Mexico FIFA World Cup Tickets Mexico Plans the Next Step to Strengthen FIFA 2...
13 FIFA 2026 Cities Set to Unlock Massive Sponsorship Potential.docx
13 FIFA 2026 Cities Set to Unlock Massive Sponsorship Potential.docx
Romeo Lavia Represent Ghana at the World Cup 2026.docx
Romeo Lavia Represent Ghana at the World Cup 2026.docx
Kelompok Class Meeting Sepak Bola SD.docx
Kelompok Class Meeting Sepak Bola SD.docx
Cristiano_Ronaldo_Personality best_PPT.pptx
Cristiano_Ronaldo_Personality best_PPT.pptx
London New Year Eve Fireworks Autumn Skies Unite.docx
London New Year Eve Fireworks Autumn Skies Unite.docx
FIFA 2026 Venues All Stadiums and Host Cities in the USA.docx
FIFA 2026 Venues All Stadiums and Host Cities in the USA.docx
Uzbekistan FIFA World Cup Tickets Uzbekistan to Face Egypt in Dubai This Nove...
Uzbekistan FIFA World Cup Tickets Uzbekistan to Face Egypt in Dubai This Nove...
High Performance Periodization — Building Champions Through Smart Training Cy...
High Performance Periodization — Building Champions Through Smart Training Cy...
NEW BALANCE TENIS DIFERENTES MODELOS.pdf
NEW BALANCE TENIS DIFERENTES MODELOS.pdf
Sports Quiz 2.0, Spirit 2024, IIT Guwahati
Sports Quiz 2.0, Spirit 2024, IIT Guwahati
Caelan Doris to Lead Ireland in Autumn Internationals 2025.docx
Caelan Doris to Lead Ireland in Autumn Internationals 2025.docx

Battle of the giants: Apache Solr vs ElasticSearch

  • 1.
    Battle of the Giants Apache Solr 4.0 vs ElasticSearch 0.20 Rafał Kuć – Sematext International @kucrafal @sematext sematext.com
  • 2.
    Who Am I • „Solr 3.1 Cookbook" author (4.0 inc) • Sematext consultant & engineer • Solr.pl co-founder • Father and husband  Copyright 2012 Sematext Int’l. All rights reserved
  • 3.
    What Will I Talk About ? Copyright 2012 Sematext Int’l. All rights reserved
  • 4.
    Under the Hood • ElasticSearch 0.20 – Apache Lucene 3.6.1 • Apache Solr 4.0 – Apache Lucene 4.0 Copyright 2012 Sematext Int’l. All rights reserved
  • 5.
    Architecture • What we expect – Scalability – Fault toleranance – High availablity – Features • What we are also looking for – Manageability – Installation ease – Tools Copyright 2012 Sematext Int’l. All rights reserved
  • 6.
    ElasticSearch Cluster Architecture • Distributed • Fault tolerant • Only ElasticSearch nodes • Single leader • Automatic leader election Copyright 2012 Sematext Int’l. All rights reserved
  • 7.
    SolrCloud Cluster Architecture • Distributed • Fault tolerant • Apache Solr + ZooKeeper ensemble • Leader per shard • Automatic leader election Copyright 2012 Sematext Int’l. All rights reserved
  • 8.
    Collection vs Index • Collection – Solr main logical index • Index – ElasticSearch main logic structure • Collections and Indices can be spread among different nodes in the cluster Copyright 2012 Sematext Int’l. All rights reserved
  • 9.
    Multiple Document Types in Index • ElasticSearch - multiple document types in a single index • Apache Solr - multiple document types in a single collection – shared schema.xml Copyright 2012 Sematext Int’l. All rights reserved
  • 10.
    Shards and Replicas • Index / Collection can have many shards • Each shard can have 0 or more replicas • Replicas are automatically updated • Replicas can be promoted to leaders when a leader shard goes off-line Copyright 2012 Sematext Int’l. All rights reserved
  • 11.
    Index and Query Routing • Control where documents are going • Control where queries are going • Manual data distribution Copyright 2012 Sematext Int’l. All rights reserved
  • 12.
    Querying Without Routing Shard 1 Shard 2 Shard 3 Shard 4 Shard 5 Shard 6 Shard 7 Shard 8 Collection / Index Application Copyright 2012 Sematext Int’l. All rights reserved
  • 13.
    Query With Routing Shard 1 Shard 2 Shard 3 Shard 4 Shard 5 Shard 6 Shard 7 Shard 8 Collection / Index Application Copyright 2012 Sematext Int’l. All rights reserved
  • 14.
    Routing Docs and Queries in Solr • Requires some effort • Defaults to hash based on document identifiers • Can be turned off using solr.NoOpDistributingUpdateProcessorFactory <updateRequestProcessorChain> <processor class="solr.LogUpdateProcessorFactory" /> <processor class="solr.RunUpdateProcessorFactory" /> <processor class="solr.NoOpDistributingUpdateProcessorFactory" /> </updateRequestProcessorChain> Copyright 2012 Sematext Int’l. All rights reserved
  • 15.
    Routing Docs and Queries - ElasticSearch • routing parameter controls target shard which document/query will be forwarded to • defaults to document identifiers • can be changed to any value curl -XPUT localhost:9200/sematext/test/1?routing=1234 -d '{ "title" : "Test routing document" }' curl –XGET localhost:9200/sematext/test/_search/?q=*&routing=1234 Copyright 2012 Sematext Int’l. All rights reserved
  • 16.
    Apache Solr Index Structure • Field types defined in schema.xml file • Fields defined in schema.xml file • Allows automatic value copying • Allows dynamic fields • Allows custom similarity definition Copyright 2012 Sematext Int’l. All rights reserved
  • 17.
    ElasticSearch Index Structure • Schema - less • Analyzers and filters defined with HTTP API • Fields defined with an HTTP request • Multi – field support • Allows nested documents • Allows parent – child relationship • Allows structured data Copyright 2012 Sematext Int’l. All rights reserved
  • 18.
    Index Structure Manipulation • Possible to some extent in Solr as well as ElasticSearch • ElasticSearch allows dynamic mappings update (not always) Copyright 2012 Sematext Int’l. All rights reserved
  • 19.
    Aliasing • Solr – Allows core aliasing • ElasticSearch – Allows index aliasing – We can add filter to alias – We can add index routing – We can add search routing Copyright 2012 Sematext Int’l. All rights reserved
  • 20.
    Server Configuration • Solr • ElasticSearch – Static in solrconfig.xml – Static in elasticsearch.yml – Can be reloaded – Properties can be during runtime with changed during runtime collection/core reload (although not all) without reloading Copyright 2012 Sematext Int’l. All rights reserved
  • 21.
    ElasticSearch Gateway Module • Your data time machine • Stores indices and meta data • Currently available: – Local – Shared FS – Hadoop – S3 Copyright 2012 Sematext Int’l. All rights reserved
  • 22.
    Discovery • Apache Solr uses ZooKeeper • ElasticSearch uses Zen Discovery Copyright 2012 Sematext Int’l. All rights reserved
  • 23.
    ElasticSearch Zen Discovery • Allows automatic node discovery • Provides multicast and unicast discovery methods • Automatic master detection • Two - way failure detection Copyright 2012 Sematext Int’l. All rights reserved
  • 24.
    Apache Solr & Apache ZooKeeper • Requires additional software • ZooKeeper ensemble with 1+ ZooKeeper instances • Prevents split – brain situations • Holds collections configurations • Solr needs to know address of one of the ZooKeeper instances Copyright 2012 Sematext Int’l. All rights reserved
  • 25.
    API • HTTP REST API in ElasticSearch or Query String for simple queries • HTTP with Query String in Apache Solr • Both provide specialized Java API – SolrJ for Apache Solr and CloudSolrServer – ElasticSearch with TransportClient for remote connections Copyright 2012 Sematext Int’l. All rights reserved
  • 26.
    Apache Solr and Query String • Queries are built of request parameters • Some degree of structuring allowed (local params) curl 'http://localhost:8983/solr/select?q=text:weird&sort=date+desc' Copyright 2012 Sematext Int’l. All rights reserved
  • 27.
    ElasticSearch REST End-Points • Simple queries built of request parameters • Stuctured queries built as JSON objects curl –XGET 'localhost:9200/sematext/test/_search/?q=_all:weird&sort=date:desc' curl -XGET 'localhost:9200/sematext/test_search' -d '{ "query" : { "term" : { "_all" : "weird" }, "sort" : { "date" : { "order" : "desc" } } }' Copyright 2012 Sematext Int’l. All rights reserved
  • 28.
    Data Handling • Solr – Multiple formats allowed as input – Can return results in multiple formats • ElasticSearch – JSON in / JSON out Copyright 2012 Sematext Int’l. All rights reserved
  • 29.
    Single or Batch • Solr • ElasticSearch – Single or multiple – Single document with a documents per standard indexing call request – _bulk end – point exposed for batch indexing – _bulk UDP end – point can be exposed for low latency batch indexing Copyright 2012 Sematext Int’l. All rights reserved
  • 30.
    Partial Document Updates • Not based on LUCENE-3837 proposed by Andrzej Białecki • Document reindexing on the side of search server • Both servers use versioning to prevent changes being overwritten • Can lead to decreased network traffic in some cases Copyright 2012 Sematext Int’l. All rights reserved
  • 31.
    ElasticSearch Partial Doc Update • Special end – point exposed - _update • Supports parameters like routing, parent, replication, percolate, etc (similar to Index API) • Uses scripts to perform document updates curl -XPOST 'localhost:9200/sematext/test/12345/_update' -d '{ "script" : "ctx._source.enabled = enabled", "params" : { "enabled" : true } }' Copyright 2012 Sematext Int’l. All rights reserved
  • 32.
    Apache Solr Partial Doc Update • Sent to the standard update handler • Requires _version_ field to be present curl 'localhost:8983/solr/update?commit=true' -H 'Content- type:application/json' -d '[ { "id" : "12345", "enabled" : { "set" : true } } ]' Copyright 2012 Sematext Int’l. All rights reserved
  • 33.
    Solr Collections API • Built on top of Core Admin • Allows: – Collection creation – Collection reload – Collection deletion Copyright 2012 Sematext Int’l. All rights reserved
  • 34.
    ElasticSearch Indices REST API • Allows: – Index creation – Index deletion – Index closing and opening – Index refreshing – Existence checking Copyright 2012 Sematext Int’l. All rights reserved
  • 35.
    Analysis Chain Definition • Solr • ElasticSearch – Static in schema.xml – Static in elasticsearch.yml – Can be reloaded – Defined during index/type during runtime with creation with REST call collection/core reload – Possible to change with update mapping call (not all changes allowed) Copyright 2012 Sematext Int’l. All rights reserved
  • 36.
    Multilingual Data Handling • Both ElasticSearch and Apache Solr built on top of Apache Lucene • Solr – analyzers defined per field in schema.xml file • ElasticSearch – analyzer defined in mappings, but can be set during query or specified on the basis of field values Copyright 2012 Sematext Int’l. All rights reserved
  • 37.
    Results Grouping • Available in Apache Solr only • Allows for results grouping based on: – Field value – Query – Function query (not available during distributed searching) Copyright 2012 Sematext Int’l. All rights reserved
  • 38.
    Prospective Search • Allows for checking if a document matches a stored query • Not available in Apache Solr • Available in ElasticSearch under the name of Percolator Copyright 2012 Sematext Int’l. All rights reserved
  • 39.
    Spellchecker • Allows to check and correct spelling mistakes • Not available in ElasticSearch currently • Multiple implementations available in Apache Solr – IndexBasedSpellChecker – WordBreakSolrSpellChecker – DirectSolrSpellChecker Copyright 2012 Sematext Int’l. All rights reserved
  • 40.
    Full Text Search Capabilities • Variety of queries • Ability to control score calculation • Different query parsers available • Advanced Lucene queries (like SpanQueries) exposed Copyright 2012 Sematext Int’l. All rights reserved
  • 41.
    Score Calculation • Leverage Lucene scoring capabilities • Control over document importance • Control over query importance • Control over term and phrase importance Copyright 2012 Sematext Int’l. All rights reserved
  • 42.
    Apache Solr and Score Influence • Index time – Document boosts – Field boosts • Query time – Term boosts – Field boosts – Phrases boost – Function queries Copyright 2012 Sematext Int’l. All rights reserved
  • 43.
    ElasticSearch and Score Influence • Index time – Document and field boosts • Query time – Different queries provide different boost controls – Can calculate distributed term frequencies – Negative and Positive boosting queries – Custom score filters • Scripts – Control scoring with scripts Copyright 2012 Sematext Int’l. All rights reserved
  • 44.
    Nested Objects • Possible only in ElasticSearch • Indexed as separate documents • Stored in the same part of the index as the root document • Hidden from standard queries and filters • Need appropriate queries and filters (nested) Copyright 2012 Sematext Int’l. All rights reserved
  • 45.
    More Like This • Lets us find similar documents • Solr – More Like This Component • ElasticSearch – More Like This Query – More Like This Field Query – _mlt REST end – point Copyright 2012 Sematext Int’l. All rights reserved
  • 46.
    Solr Parent – Child Relationship • Used at query time • Multi core joins possible http://localhost:8983/solr/select?q={!join from=parent to=id}color:Yellow Copyright 2012 Sematext Int’l. All rights reserved
  • 47.
    ElasticSearch Parent – Child Handling • Proper indexing required • Indexed as separate documents • Standard queries don’t return child documents • In order to retrieve parent docs one should use appropriate queries and filters (has_child, has_parent, top_children) Copyright 2012 Sematext Int’l. All rights reserved
  • 48.
    Filters • Used to narrown down query results • Good candidates for caching and reuse • Supported by ElasticSearch and Apache Solr • Should be used for repeatable query elements Copyright 2012 Sematext Int’l. All rights reserved
  • 49.
    Apache Solr Filter Queries • Multiple filters per query • Filters are addictive • Different query parsers can be used • Local params can be used • Narrow down faceting results Copyright 2012 Sematext Int’l. All rights reserved
  • 50.
    ElasticSearch Filtered Queries • Can be defined using queries exposed by the Query DSL • Can be used for custom score calculation (i.e., custom filters score query) • Doesn’t narrow down faceting results by default (facets have their own filters) Copyright 2012 Sematext Int’l. All rights reserved
  • 51.
    Filter Cache Control • Both Solr and ElasticSearch let us control cache for filters • Solr – Using local params and cache property • ElasticSearch – _cache property – _cache_key property Copyright 2012 Sematext Int’l. All rights reserved
  • 52.
    Faceting • Both provide common facets – Terms – Range & query – Terms statistics – Spatial distance • Solr – Pivot faceting • ElasticSearch – Histograms Copyright 2012 Sematext Int’l. All rights reserved
  • 53.
    Real Time Or Not ? • Allow getting document not yet indexed • Don’t need searcher reopening • ElasticSearch – Separate Get and Multi Get API’s • Apache Solr – Separate Realtime Get Handler – Can be used as a search component Copyright 2012 Sematext Int’l. All rights reserved
  • 54.
    Caches and Warming • ElasticSearch and Solr allow caching • Both allow running warming queries • ElasticSearch by default doesn’t limit cache sizes Copyright 2012 Sematext Int’l. All rights reserved
  • 55.
    Solr Caches • Types – Filter Cache – Query Result Cache – Document Cache • Implementation choices – LRUCache – FastLRUCache – LFUCache • Other configuration options: – Size – Maximum size – Autowarming count Copyright 2012 Sematext Int’l. All rights reserved
  • 56.
    ElasticSearch Caches • Types – Filter Cache – Field Data Cache • Implementation choices – Resident – Soft – Weak • Other configuration options: – Max size (entries per segment) – Expiration time Copyright 2012 Sematext Int’l. All rights reserved
  • 57.
    Cluster State Monitoring • Apache Solr – multiple mbeans exposed by JMX • ElasticSearch – multiple REST end – points exposed to get different statistics Copyright 2012 Sematext Int’l. All rights reserved
  • 58.
    ElasticSearch Statistics API • Health and State Check • Nodes Information and Statistics • Cache Statistics • Index Segments Information • Index Information and Statistics • Mappings Information Copyright 2012 Sematext Int’l. All rights reserved
  • 59.
    Cluster Monitoring Copyright 2012 Sematext Int’l. All rights reserved
  • 60.
    Cluster Monitoring with SPM Copyright 2012 Sematext Int’l. All rights reserved
  • 61.
    Cluster Settings Update • ElasticSearch lets us: – Control rebalancing – Control recovery – Control allocation – Change the above on the live cluster Copyright 2012 Sematext Int’l. All rights reserved
  • 62.
    Custom Shard Allocation • Possible in ElasticSearch • Cluster level: curl -XPUT localhost:9200/_cluster/settings -d '{ "persistent" : { "cluster.routing.allocation.exclude._ip" : "192.168.2.1" } }' • Index level: curl -XPUT localhost:9200/sematext/ -d '{ "index.routing.allocation.include.tag" : "nodeOne,nodeTwo" }' Copyright 2012 Sematext Int’l. All rights reserved
  • 63.
    Moving Shards and Replicas • Possible in ElasticSearch, not available in Solr • Allows to move shards and replicas to any node in the cluster on demand • Available in ElasticSearch: curl -XPOST 'localhost:9200/_cluster/reroute' -d '{ "commands" : [ {"move" : {"index" : "sematext", "shard" : 0, "from_node" : "node1", "to_node" : "node2"}}, {"allocate" : {"index" : "sematext", "shard" : 1, "node" : "node3"}} ] }' Copyright 2012 Sematext Int’l. All rights reserved
  • 64.
    And The Winner Is ? Copyright 2012 Sematext Int’l. All rights reserved
  • 65.
    How to Reach Us • Rafał Kuć – Twitter: @kucrafal – E-mail: rafal.kuc@sematext.com • Sematext – Twitter: @sematext – Website: http://sematext.com • Solr vs ElasticSearch series: • http://blog.sematext.com/2012/08/23/solr-vs- elasticsearch-part-1-overview/ Copyright 2012 Sematext Int’l. All rights reserved
  • 66.
    We Are Hiring ! • Dig Search ? • Dig Analytics ? • Dig Big Data ? • Dig Performance ? • Dig working with and in open – source ? • We’re hiring world – wide ! http://sematext.com/about/jobs.html Copyright 2012 Sematext Int’l. All rights reserved

AltStyle によって変換されたページ (->オリジナル) /