Движок таблиц AzureQueue
Этот движок обеспечивает интеграцию с экосистемой Azure Blob Storage, позволяя импортировать потоковые данные.
Создание таблицы
Параметры движка
Параметры AzureQueue такие же, как и поддерживаемые движком таблиц AzureBlobStorage. См. раздел параметров здесь.
Подобно AzureBlobStorage пользователи могут использовать эмулятор Azurite для локальной разработки Azure Storage. Подробности здесь.
Пример
Настройки
Набор поддерживаемых настроек такой же, как и для движка таблиц S3Queue, но без префикса s3queue_. См. полный список настроек.
Чтобы получить список настроек, настроенных для таблицы, используйте таблицу system.azure_queue_settings. Доступно с 24.10.
Описание
SELECT не особенно полезен для потокового импорта (за исключением отладки), поскольку каждый файл может быть импортирован только один раз. Практичнее создавать потоки в реальном времени, используя материализованные представления. Для этого:
- Используйте движок для создания таблицы для потребления из указанного пути в S3 и рассматривайте её как поток данных.
- Создайте таблицу с нужной структурой.
- Создайте материализованное представление, которое конвертирует данные из движка и помещает их в ранее созданную таблицу.
Когда MATERIALIZED VIEW соединяется с движком, он начинает собирать данные в фоновом режиме.
Пример:
Виртуальные столбцы
_path— Путь к файлу._file— Имя файла.
Для получения дополнительной информации о виртуальных столбцах см. здесь.
Интроспекция
Включите запись для таблицы через настройку таблицы enable_logging_to_s3queue_log=1.
Возможности интроспекции такие же, как и у движка таблиц S3Queue с несколькими отличиями:
- Используйте
system.azure_queueдля состояния очереди в памяти для серверных версий >= 25.1. Для старых версий используйтеsystem.s3queue(он будет содержать информацию о таблицахazure). - Включите
system.azure_queue_logчерез основную конфигурацию ClickHouse, например:
Эта постоянная таблица содержит ту же информацию, что и system.s3queue, но для обработанных и неудачных файлов.
Таблица имеет следующую структуру:
Пример: