Introduction
There are two ways to put your data into ElasticSearch. As you have seen in previous chapters, one way is to use the index API, which allows you to store documents in ElasticSearch via the PUT/POST API or the bulk API. The other way is to use a service that fetches the data from an external source (at one time or periodically) and puts it in the cluster.
ElasticSearch calls these services rivers, and the ElasticSearch community provides several rivers to connect to different data sources, as follows:
- CouchDB
- MongoDB
- RabbitMQ
- SQL DBMS (Oracle, MySQL, PostgreSQL, and so on)
- Redis
- Wikipedia
Rivers are available as external plugins at http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/modules-plugins.html#river, which provides an updated list of the available ElasticSearch rivers. In this chapter, we'll discuss how to manage a river (create, check, and delete) and how to configure the most common ones.
A river is a very handy tool to ingest data in ElasticSearch...