58 lines
1.6 KiB
Plaintext
58 lines
1.6 KiB
Plaintext
[[docs-bulk-udp]]
|
|
== Bulk UDP API
|
|
|
|
A Bulk UDP service is a service listening over UDP for bulk format
|
|
requests. The idea is to provide a low latency UDP service that allows
|
|
to easily index data that is not of critical nature.
|
|
|
|
The Bulk UDP service is disabled by default, but can be enabled by
|
|
setting `bulk.udp.enabled` to `true`.
|
|
|
|
The bulk UDP service performs internal bulk aggregation of the data and
|
|
then flushes it based on several parameters:
|
|
|
|
`bulk.udp.bulk_actions`::
|
|
The number of actions to flush a bulk after,
|
|
defaults to `1000`.
|
|
|
|
`bulk.udp.bulk_size`::
|
|
The size of the current bulk request to flush
|
|
the request once exceeded, defaults to `5mb`.
|
|
|
|
`bulk.udp.flush_interval`::
|
|
An interval after which the current
|
|
request is flushed, regardless of the above limits. Defaults to `5s`.
|
|
`bulk.udp.concurrent_requests`::
|
|
The number on max in flight bulk
|
|
requests allowed. Defaults to `4`.
|
|
|
|
The allowed network settings are:
|
|
|
|
`bulk.udp.host`::
|
|
The host to bind to, defaults to `network.host`
|
|
which defaults to any.
|
|
|
|
`bulk.udp.port`::
|
|
The port to use, defaults to `9700-9800`.
|
|
|
|
`bulk.udp.receive_buffer_size`::
|
|
The receive buffer size, defaults to `10mb`.
|
|
|
|
Here is an example of how it can be used:
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
> cat bulk.txt
|
|
{ "index" : { "_index" : "test", "_type" : "type1" } }
|
|
{ "field1" : "value1" }
|
|
{ "index" : { "_index" : "test", "_type" : "type1" } }
|
|
{ "field1" : "value1" }
|
|
--------------------------------------------------
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
> cat bulk.txt | nc -w 0 -u localhost 9700
|
|
--------------------------------------------------
|
|
|
|
|