ConsumeElasticsearch
Описание
Процессор, который многократно выполняет постраничный запрос по полю с использованием Range-запроса для получения новых документов из индекса/запроса Elasticsearch. Процессор будет получать несколько страниц результатов, пока не закончится либо результаты, либо время жизни пагинации. После этого запрос автоматически обновит ограничение поля на основе значения последнего полученного документа.
Теги
elasticsearch, elasticsearch5, elasticsearch6, elasticsearch7, elasticsearch8, query, scroll, page, search, json
Свойства
Название | Описание |
---|---|
Range Query Field | Поле, которое будет отслеживаться в рамках запроса Elasticsearch Range с использованием привязки «gt». Это поле должно существовать в документе Elasticsearch, чтобы его можно было получить. |
Sort Order | Порядок сортировки поля «RANGE_FIELD». К любому предоставленному предложению «SORT» будет добавлено предложение «sort» для поля «RANGE_FIELD». Если для поля "RANGE_FIELD" уже существует предложение "sort", оно не будет обновлено. |
Initial Value | Начальное значение, используемое для запроса, если процессор не запускался ранее. Если процессор запускался ранее и сохранил значение в своем состоянии, это свойство будет проигнорировано. Если значение не указано и процессор ранее не запускался, то не будут использоваться границы запроса диапазона, т. е. будут получены все документы . |
Initial Value Date Format | If the "Range Query Field" is a Date field, convert the "Initial Value" to a date with this format. If not specified, Elasticsearch will use the date format provided by the "Range Query Field"'s mapping. For valid syntax, see https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-date-format.htmlThis Property is only considered if the [Initial Value] Property has a value specified. |
Initial Value Date Time Zone | If the "Range Query Field" is a Date field, convert the "Initial Value" to UTC with this time zone. Valid values are ISO 8601 UTC offsets, such as "+01:00" or "-08:00", and IANA time zone IDs, such as "Europe/London".This Property is only considered if the [Initial Value] Property has a value specified. |
Additional Filters | Один или несколько фильтров запроса в синтаксисе JSON, а не в синтаксисе Lucene. Пример: [{"match":{"somefield":"somevalue"}}, {"match":{"anotherfield":"anothervalue"}}]. Эти фильтры будут использоваться как часть логического запроса. |
Size | The maximum number of documents to retrieve in the query. If the query is paginated, this "size" applies to each page of the query, not the "size" of the entire result set. Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Sort | Sort results by one or more fields, in JSON syntax. Ex: [{"price" : {"order" : "asc", "mode" : "avg"}}, {"post_date" : {"format": "strict_date_optional_time_nanos"}}] Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Aggregations | One or more query aggregations (or "aggs"), in JSON syntax. Ex: {"items": {"terms": {"field": "product", "size": 10}}} Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Fields | Fields of indexed documents to be retrieved, in JSON syntax. Ex: ["user.id", "http.response.*", {"field": "@timestamp", "format": "epoch_millis"}] Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Script Fields | Fields to created using script evaluation at query runtime, in JSON syntax. Ex: {"test1": {"script": {"lang": "painless", "source": "doc['price'].value * 2"}}, "test2": {"script": {"lang": "painless", "source": "doc['price'].value * params.factor", "params": {"factor": 2.0}}}} Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Query Attribute | If set, the executed query will be set on each result flowfile in the specified attribute. Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Index | The name of the index to use. Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Type | The type of this document (used by Elasticsearch for indexing and searching). Поддерживает язык выражений: true (будет оцениваться только с использованием переменных среды) |
Max JSON Field String Length | The maximum allowed length of a string value when parsing a JSON document or attribute. |
Client Service | An Elasticsearch client service to use for running queries. |
Search Results Split | Выводит файл потока, содержащий все результаты поиска, или один файл потока для каждого отдельного результата поиска, или один файл потока, содержащий все результаты поиска из всех постраничных ответов. |
Search Results Format | Формат вывода результатов поиска. |
Aggregation Results Split | Выводит файл потока, содержащий все агрегации, или по одному файлу потока для каждой отдельной агрегации. |
Aggregation Results Format | Формат результатов агрегации. |
Output No Hits | Output a "hits" flowfile even if no hits found for query. If true, an empty "hits" flowfile will be output even if "aggregations" are output. |
Pagination Type | Используемый метод разбиения на страницы. Не все типы доступны для всех версий Elasticsearch. Ознакомьтесь с документацией Elasticsearch, чтобы узнать, какие типы применимы и рекомендуются для вашего сервиса. |
Pagination Keep Alive | Pagination "keep_alive" period. Period Elasticsearch will keep the scroll/pit cursor alive in between requests (this is not the time expected for all pages to be returned, but the maximum allowed time for requests between page retrievals). |
Взаимосвязи
- aggregations: Агрегации направляются в эту связь.
- hits: Результаты поиска направляются в эту связь.