Движок таблиц 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_queue_log=1
.
Возможности интроспекции такие же, как и у S3Queue table engine с несколькими отличиями:
- Используйте
system.azure_queue
для состояния очереди в памяти для серверных версий >= 25.1. Для более старых версий используйтеsystem.s3queue
(он будет содержать информацию и для таблицazure
). - Включите
system.azure_queue_log
через основную конфигурацию ClickHouse, например:
Эта постоянная таблица содержит ту же информацию, что и system.s3queue
, но для обработанных и неудачных файлов.
Таблица имеет следующую структуру:
Пример: