Introduction
ElasticSearch is designed to be extended with plugins to improve its capabilities. In the previous chapters, we installed and used a lot of them (Transport, River, and Scripting plugins).
The plugins are application extensions that can cover a lot of aspects of ElasticSearch. They can have the following usages:
- Adding new transport layer (thrift and memcached plugins are examples of this type)
- Adding new language scripting (that is, Python and JavaScript plugins)
- Extending Lucene supported analyzers and tokenizers
- Using the native scripting for speeding up computation of scores, filters, and field manipulations
- Extending node capabilities, for example, creating a Node plugin that can execute your logic
- Adding a new river to support new sources
- Monitoring and administering the cluster
ElasticSearch plugins are of two different kinds: site and jar plugins.
The site plugin is generally a standard HTML5 web application. The jar-native one is a standard Java JAR file with some extra resources...