A list of the extension points exposed by ElasticSearch (as of 0.19.4)

  • Analysis plugins – use different kinds of analyzers
  • River plugins – A river is an external datasource which ES indexes
  • Transport plugins – Different means of exposing ES API, e.g. Thrift, memcached
  • Site plugins – for running various ES-related webapps, like the ES head admin webapp
  • Custom REST endpoint – lets you define a REST action by extending BaseRestHandler.
  • Scripting plugins – providing support for using different scripting languages as search scripts
  • NativeScripts – loosely equivalent to Solr's FunctionQuery. Allows you to return "script fields", custom scores or perform search filtering.

As far as I can tell (from the source), there's no equivalent of Solr's SearchComponent, which allows you to modify the search request processing pipeline in an extremely flexible manner.