Important
The RNI Elasticsearch plugin does not work with the AWS managed elastic service.
Note
You will need read/write permissions on the host system to install RNI-Elasticsearch.
Note
For security reasons, Elasticsearch is only accessible locally by default; this is suitable for a local dev/test environment. For accessible dev/test/production server instances, users need to follow the steps outlined in the Elasticsearch reference manual to enable the appropriate network settings for their specific instance.
Note
When installing on top of an existing version of RNI-ES without reindexing, some changes to the software may not function with an index created on the previous installation, and many newly developed features won't work without reindex. For the best experience, Babel Street recommends reindexing on every installation.
To use RNI-Elasticsearch you need the RNI Elasticsearch plugin, an RLP license file (rlp-license.xml
) and Elasticsearch.
Note
If you are using the Linux distribution of RNI-ES, note that glibc is required. The version of glibc that the native libraries are built against can be found in the filename of the distributed package.
-
If you do not already have it, install Elasticsearch using the setup instructions for the appropriate version.
Download and unzip Elasticsearch-<version>.zip.
Important
The version of Elasticsearch must match the first three digits of the version of the RNI-ES plugin. If your version of Elasticsearch does not match the plugin version, the plugin will not install.
Example:
-
Install the plugin.
Navigate to the elasticsearch-<version>
root directory and run the install command.
On Unix, Linux and MacOS:
bin/elasticsearch-plugin install file:///path/to/rni-es-<version>.x.zip
On Windows:
bin\elasticsearch-plugin install file:///C:\path\to\rni-es-<version>.x.zip
Note
You must use the absolute file path to refer to the plugin zip file. For example, if the file is in the home directory of rniUser on macOS, the command would be:
bin/elasticsearch-plugin install file:///Users/rniUser/rni-es-<version>.x.zip
You may be prompted to grant permissions necessary for the plugin to function.
The plugin is now in plugins/rni
.
Note
For Windows users, you must add
bin\elasticsearch-<version>\plugins\rni\bt_root\rlp\bin\*
to your PATH environment variable. In this case, you must replace * with the name of the subdirectory which contains platform-specific binary library files (for example, amd64-w64-msvc120
).
Additionally, the RNI-Elasticsearch plugin cannot be installed into distributions of Elasticsearch found in the C:\Program Files
directory.
-
Copy the RLP License (rlp-license.xml
) to plugins/rni/bt_root/rlp/rlp/licenses
.
This license must be in place before you can use the RNI-Elasticsearch plugin.
Note
If your index contains complex mappings or searches, including many fields or nested fields, you may need to increase the heap size as described in the Elasticsearch documentation.
To start the Elasticsearch server, run:
bin/elasticsearch
Note
When starting Elasticsearch with the plugin you may see some non-fatal error messages. If a message follows the error stating that “Cluster health status changed from [RED] to [YELLOW]“, the error can be ignored. This may occur when the enableDynamicConfiguration
is set to true
.
RNI uses libpostal to parse addresses; libpostal is a C library for parsing/normalizing street addresses around the world using statistical NLP and open data.
RNI packages libpostal data in plugins/rni/bt_root/rlpnc/data/libpostal
. The data directory is relatively large (~2G). If you are certain that you won't be utilizing address matching of unfielded addresses, you can safely delete the libpostal data directory without impacting any other RNI functionalities.