I just completed a project to extend Solr as follows:
subclassed the QueryComponent class to add a mandatory filter query (fq) for all user searches
subclassed the UpdateRequestProcessor class to add fields to a document prior to indexing
I then wired up these custom classes in solrconfig.xml and placed my jar file in a lib directory under solr home. Everything ran great. So easy.
Question: Can I do the equivalent in ElasticSearch 4.3.1? I ask because I came across this comparison, which claims that ElasticSearch 2.0 does not provide Pluggable search/update workflow as I described above with Solr. I haven't found any comparisons for more recent versions, nor have I found anything in the ElasticSearch documentation that answers my question.
It is true that Elasticsearch's extension points are completely different from Solr's. Some things that you can do with Solr can't be done with Elasticsearch and vice-versa.
is more complicated: there is the mapping transform feature https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-transform.html but this has been deprecated because getting the source document out of sync with the document that was passed to the indexing chain created some corner cases. Hopefully there will be something better to replace it soon. Otherwise you can do it externally, eg. using logstash (which is something that LOTs of users do)
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.