diff options
author | Hilko Bengen <bengen@debian.org> | 2014-06-07 12:02:12 +0200 |
---|---|---|
committer | Hilko Bengen <bengen@debian.org> | 2014-06-07 12:02:12 +0200 |
commit | d5ed89b946297270ec28abf44bef2371a06f1f4f (patch) | |
tree | ce2d945e4dde69af90bd9905a70d8d27f4936776 /docs/river | |
download | elasticsearch-d5ed89b946297270ec28abf44bef2371a06f1f4f.tar.gz |
Imported Upstream version 1.0.3upstream/1.0.3
Diffstat (limited to 'docs/river')
-rw-r--r-- | docs/river/couchdb.asciidoc | 11 | ||||
-rw-r--r-- | docs/river/index.asciidoc | 77 | ||||
-rw-r--r-- | docs/river/rabbitmq.asciidoc | 9 | ||||
-rw-r--r-- | docs/river/twitter.asciidoc | 10 | ||||
-rw-r--r-- | docs/river/wikipedia.asciidoc | 8 |
5 files changed, 115 insertions, 0 deletions
diff --git a/docs/river/couchdb.asciidoc b/docs/river/couchdb.asciidoc new file mode 100644 index 0000000..5a2555e --- /dev/null +++ b/docs/river/couchdb.asciidoc @@ -0,0 +1,11 @@ +[[river-couchdb]] +== CouchDB River + +The CouchDB River allows to automatically index couchdb and make it +searchable using the excellent +http://guide.couchdb.org/draft/notifications.html[_changes] stream +couchdb provides. + +See +https://github.com/elasticsearch/elasticsearch-river-couchdb/blob/master/README.md[README +file] for details. diff --git a/docs/river/index.asciidoc b/docs/river/index.asciidoc new file mode 100644 index 0000000..9d587f9 --- /dev/null +++ b/docs/river/index.asciidoc @@ -0,0 +1,77 @@ +[[river]] += Rivers + +== Intro + +A river is a pluggable service running within elasticsearch cluster +pulling data (or being pushed with data) that is then indexed into the +cluster. + +A river is composed of a unique name and a type. The type is the type of +the river (out of the box, there is the `dummy` river that simply logs +that it is running). The name uniquely identifies the river within the +cluster. For example, one can run a river called `my_river` with type +`dummy`, and another river called `my_other_river` with type `dummy`. + + +[[how-it-works]] +== How it Works + +A river instance (and its name) is a type within the `_river` index. All +different rivers implementations accept a document called `_meta` that +at the very least has the type of the river (twitter / couchdb / ...) +associated with it. Creating a river is a simple curl request to index +that `_meta` document (there is actually a `dummy` river used for +testing): + +[source,js] +-------------------------------------------------- +curl -XPUT 'localhost:9200/_river/my_river/_meta' -d '{ + "type" : "dummy" +}' +-------------------------------------------------- + +A river can also have more data associated with it in the form of more +documents indexed under the given index type (the river name). For +example, storing the last indexed state can be stored in a document that +holds it. + +Deleting a river is a call to delete the type (and all documents +associated with it): + +[source,js] +-------------------------------------------------- +curl -XDELETE 'localhost:9200/_river/my_river/' +-------------------------------------------------- + + +[[allocation]] +== Cluster Allocation + +Rivers are singletons within the cluster. They get allocated +automatically to one of the nodes and run. If that node fails, a river +will be automatically allocated to another node. + +River allocation on nodes can be controlled on each node. The +`node.river` can be set to `_none_` disabling any river allocation to +it. The `node.river` can also include a comma separated list of either +river names or types controlling the rivers allowed to run on it. For +example: `my_river1,my_river2`, or `dummy,twitter`. + + +[[status]] +== Status + +Each river (regardless of the implementation) exposes a high level +`_status` doc which includes the node the river is running on. Getting +the status is a simple curl GET request to +`/_river/{river name}/_status`. + +include::couchdb.asciidoc[] + +include::rabbitmq.asciidoc[] + +include::twitter.asciidoc[] + +include::wikipedia.asciidoc[] + diff --git a/docs/river/rabbitmq.asciidoc b/docs/river/rabbitmq.asciidoc new file mode 100644 index 0000000..cdad9f8 --- /dev/null +++ b/docs/river/rabbitmq.asciidoc @@ -0,0 +1,9 @@ +[[river-rabbitmq]] +== RabbitMQ River + +RabbitMQ River allows to automatically index a +http://www.rabbitmq.com/[RabbitMQ] queue. + +See +https://github.com/elasticsearch/elasticsearch-river-rabbitmq/blob/master/README.md[README +file] for details. diff --git a/docs/river/twitter.asciidoc b/docs/river/twitter.asciidoc new file mode 100644 index 0000000..355c187 --- /dev/null +++ b/docs/river/twitter.asciidoc @@ -0,0 +1,10 @@ +[[river-twitter]] +== Twitter River + +The twitter river indexes the public +http://dev.twitter.com/pages/streaming_api[twitter stream], aka the +hose, and makes it searchable. + +See +https://github.com/elasticsearch/elasticsearch-river-twitter/blob/master/README.md[README +file] for details. diff --git a/docs/river/wikipedia.asciidoc b/docs/river/wikipedia.asciidoc new file mode 100644 index 0000000..c65107a --- /dev/null +++ b/docs/river/wikipedia.asciidoc @@ -0,0 +1,8 @@ +[[river-wikipedia]] +== Wikipedia River + +A simple river to index http://en.wikipedia.org[Wikipedia]. + +See +https://github.com/elasticsearch/elasticsearch-river-wikipedia/blob/master/README.md[README +file] for details. |