Перейти к основному содержимому
Перейти к основному содержимому

azureBlobStorage Табличная Функция

Предоставляет интерфейс, подобный таблице, для выбора/вставки файлов в Azure Blob Storage. Эта табличная функция аналогична функции s3.

Синтаксис

Аргументы

  • connection_string|storage_account_url — строка подключения включает имя аккаунта и ключ (Создать строку подключения) или вы также можете предоставить URL аккаунта хранения здесь, а имя аккаунта и ключ аккаунта как отдельные параметры (см. параметры account_name и account_key)
  • container_name - Имя контейнера
  • blobpath - путь к файлу. Поддерживает следующие подстановочные знаки в режиме только для чтения: *, **, ?, {abc,def} и {N..M}, где N, M — числа, 'abc', 'def' — строки.
  • account_name - если используется storage_account_url, то имя аккаунта можно указать здесь
  • account_key - если используется storage_account_url, то ключ аккаунта можно указать здесь
  • formatформат файла.
  • compression — Поддерживаемые значения: none, gzip/gz, brotli/br, xz/LZMA, zstd/zst. По умолчанию будет автоматически определена компрессия по расширению файла. (то же самое, что и установка на auto).
  • structure — Структура таблицы. Формат 'column1_name column1_type, column2_name column2_type, ...'.

Возвращаемое значение

Таблица с заданной структурой для чтения или записи данных в указанном файле.

Примеры

Аналогично таблице AzureBlobStorage движка таблиц, пользователи могут использовать эмулятор Azurite для локальной разработки Azure Storage. Дополнительные сведения здесь. Ниже мы предполагаем, что Azurite доступен по имени хоста azurite1.

Запишите данные в azure blob storage, используя следующее:

А затем его можно прочитать, используя

или с использованием connection_string

Виртуальные Столбцы

  • _path — Путь к файлу. Тип: LowCardinality(String).
  • _file — Название файла. Тип: LowCardinality(String).
  • _size — Размер файла в байтах. Тип: Nullable(UInt64). Если размер файла неизвестен, значение будет NULL.
  • _time — Время последнего изменения файла. Тип: Nullable(DateTime). Если время неизвестно, значение будет NULL.

Смотрите Также

Разбиение по типу Hive

Когда use_hive_partitioning установлено в 1, ClickHouse будет определять разбиение по типу Hive в пути (/name=value/) и позволит использовать столбцы разбиения как виртуальные столбцы в запросе. Эти виртуальные столбцы будут иметь те же имена, что и в разбиенном пути, но начинаются с _.

Пример

Используйте виртуальный столбец, созданный с разбиением по типу Hive

Использование Подписей на Общий Доступ (SAS)

Подпись на Общий Доступ (SAS) — это URI, который предоставляет ограниченный доступ к контейнеру или файлу Azure Storage. Используйте его, чтобы предоставить временно ограниченный доступ к ресурсам учетной записи хранения без раскрытия ключа вашей учетной записи хранения. Дополнительные сведения здесь.

Функция azureBlobStorage поддерживает Подписи на Общий Доступ (SAS).

Токен SAS для Blob содержит всю необходимую информацию для аутентификации запроса, включая целевой blob, разрешения и срок действия. Чтобы построить URL для blob, добавьте токен SAS к конечной точке службы blob. Например, если конечная точка https://clickhousedocstest.blob.core.windows.net/, запрос выглядит так:

В качестве альтернативы пользователи могут использовать созданный URL SAS для Blob: