|This was tested and developed against Elastic Search 2.1.0.|
Another index provider that ModeShape includes is an Elasticsearch index provider. As obvious this provider uses Elasticsearch for index data. Usually Elasticsearch cluster resides outside of the Modeshape process and thus all communications are established via Elasticsearch public REST API.
Elasticsearch index provider supports all kinds of indexes defined by Modeshape, it is applicable for multiple columns and support full text search.
Since Elasticsearch index provider operates as a 'client' of a remote Elasticsearch cluster the configuration itself is pretty simple and includes in general only 'address' where to lookup the Elasticsearch node. The full list of provider parameters are as follows:
- classname a constant fully qualified name of the class that implements provider; it tells to Modeshape to activate provider - org.modeshape.jcr.index.EsIndexProvider;
- host the address of the node running Elasticsearch; it might be ip address or domain name. default value localhost;
- port the port number where Elasticsearch listens for connections. Default value is 9200.
In dependence of Modeshape usage there are two different formats for the index provider configurations.
To configure the local index provider in embedded (JSON) mode you need to add the following section:
In case of Modeshape running as JBoss AS susbsytem use the following format:
It is possible to skip the host and port parameters, which default to localhost and 9200 respectively.
|Starting with ModeShape 5 you can replace the value of the classname attribute with the elasticsearch alias.|