Термины и определения Query
Соединение
Соединение — это набор параметров, необходимых для подключения Yandex Query к источникам и приемникам данных. Например, при использовании в качестве источника данных файла из Yandex Object Storage, соединение содержит информацию об имени бакета и параметрах авторизации в нем.
В Yandex Query поддерживаются следующие типы соединений:
- Object Storage — соединение с бакетом Yandex Object Storage, может быть как источником, так и приемником данных.
- Managed Service for PostgreSQL — соединение с базой данных Managed Service for PostgreSQL, может быть только источником данных.
- Managed Service for ClickHouse® — соединение с базой данных Managed Service for ClickHouse®, может быть только источником данных.
- Data Streams — соединение с базой данных Yandex Managed Service for YDB, в которой расположен поток Yandex Data Streams, может быть как источником, так и приемником данных.
- Monitoring — соединение с Yandex Monitoring, может быть только приемником данных.
Привязка
Один и тот же YQL-запрос можно выполнять на данных, которые доступны через разные типы соединений (например, на данных в бакете и в потоке). В этом случае удобно для каждого соединения создать привязку — ресурс, который содержит информацию о соединении, формате и схеме данных.
Привязки данных можно создать только для файловых источников данных - к Object Storage.
Запрос
Запрос — это выражение на языке YQL
С помощью запросов Yandex Query можно выполнять аналитическую и потоковую обработку данных.
Информация о запусках запроса
Один и тот же запрос можно запускать многократно. Для каждого запуска запроса сохраняется следующая информация:
- статус выполнения запроса;
- дата и время начала выполнения запроса;
- продолжительность выполнения запроса;
- имя пользователя, который выполнил запрос;
- метрики исполнения запроса.
Для последнего запуска запроса в течение 24 часов также сохраняется результат.
Схема данных
Схема данных — это перечень полей и типов данных источника, которые не обладают явной схемой, например, бакеты Object Storage или потоки Data Streams. В схеме необходимо описать все поля, которые будут использованы в запросе. Если запрос обращается к данным через соединение, схема указывается в теле запроса. В случае использования привязки схема данных задается в ее свойствах.
При работе с Managed Service for ClickHouse® или Managed Service for PostgreSQL схема автоматически извлекается из самих систем управления базами данных, поэтому для этих источников явно указать ее нельзя.
Контрольная точка
Системы потокового анализа обрабатывают бесконечные (не имеющие начала и конца) потоки данных. При перезапуске запроса, чтобы не обрабатывать все данные из потока данных каждый раз с начала, Yandex Query запоминает смещения (offsets) обработанных данных. При остановке и последующем восстановлении обработки Yandex Query перематывает поток данных на сохраненное смещение и продолжает обработку с этого места.
Контрольные точки содержат информацию про потоковый запрос, в том числе про смещения внутри потоков данных.
Если добавить в текст запроса обращение к новым потоковым источникам данных, то в контрольных точках не будет информации про смещения внутри потоков данных. Это может привести к тому, что часть данных будет считываться из существующих потоков данных с последней точки, а часть данных с момента появления новых сообщений в новых потоках данных.
Примечание
Настройки способа выполнения запроса: обработка данных с контрольной точки или обработка данных заново - задаются в момент запуска запроса.
ClickHouse® является зарегистрированным товарным знаком ClickHouse, Inc