Облачная платформаAdvanced

Из Elasticsearch или CSS

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

Если ссылка‑источник задания описана в Elasticsearch Link Parameters или CSS Link Parameters, настройте параметры задания‑источника на основе Table 1.

Table 1 Параметры задания, когда Elasticsearch или CSS является источником

Category

Parameter

Description

Example Value

Basic parameters

Index

Индекс Elasticsearch, аналогичный имени реляционной базы данных. Имя индекса может содержать только строчные буквы.

index

Type

Тип Elasticsearch, аналогичный имени таблицы реляционной базы данных. Имя типа может содержать только строчные буквы.

NOTE:

В версиях Elasticsearch 7.x и новее пользовательские типы не поддерживаются. Вместо этого можно использовать только тип _doc. В этом случае данный параметр не действует, даже если он установлен.

_doc

Расширенные атрибуты

Разделить вложенное поле

(Optional) Нужно ли разделять JSON‑содержимое вложенных полей. Например, a:{ b:{ c:1, d:{ e:2, f:3 } } } может быть разделено на a.b.c, a.b.d.e и a.b.d.f.

No

Условия фильтрации

(Optional) CDM переносит только данные, соответствующие условиям фильтрации.

  • В настоящее время для фильтрации исходных данных можно использовать только строку запроса (q syntax) Elasticsearch. Синтаксис q используется следующим образом:
    • Для точного совпадения используется формат column:data. column указывает имя поля, а data указывает условие запроса, например, last_name:Smith.

      Кроме того, если data представляет собой строку, содержащую пробелы, её необходимо заключить в двойные кавычки. Если column не указано, все поля будут сопоставлены по data.

    • Несколько условий запроса можно объединять с помощью соединительных слов. Формат: column1:data1 AND column2:data2. Соединительные слова могут быть AND, OR или NOT. Они должны быть в верхнем регистре, и перед и после каждого соединительного слова должен быть пробел.

      Пример: first_name:Alec AND last_name:John

    • При диапазонном сопоставлении можно напрямую использовать условное выражение для фильтрации данных. Выражение имеет формат column:>data. Оператор может быть >, >=, < или <=.

      Пример: time:>=1636905600000 AND time:<1637078400000. Его также можно использовать вместе с макропеременной даты и времени, например, createTime:>${timestamp(dateformat(yyyyMMdd,-1,DAY))} AND createTime:<${timestamp(dateformat(yyyyMMdd))}.

    • При диапазонном сопоставлении также можно использовать синтаксис диапазона для фильтрации данных. Формат: column:{data1 TO data2}. { и } указывает, что значение не включено. [ и ] указывает, что значение включено. TO должно быть написано заглавными буквами, и перед и после него должен быть пробел. * указывает все данные.

      Например, time:{1636992000000 TO *] отфильтровывает все данные, превышающие 1636992000000, в поле time. Также его можно использовать вместе с макропеременной даты и времени, например, createTime:[${timestamp(dateformat(yyyyMMdd,-1,DAY))} TO ${timestamp(dateformat(yyyyMMdd))}}.

  • Исходные данные нельзя отфильтровать с помощью языка запросов (DSL) Elasticsearch.

last_name:Smith

Extract Meta-field

Определяет, следует ли извлекать метаполя индекса. Например, _index, _type, _id и _score.

Да

Размер страницы

Размер страницы Elasticsearch

1000

Время ожидания ScrollId

Во время scroll‑запроса с использованием Elasticsearch записывается scroll_id. Когда запрос истекает или завершается, записанный srcoll_id будет удалён. Можно задать этот параметр, чтобы указать длительность тайм‑аута.

5