url Функция Таблицы
Функция url создает таблицу из URL с заданным форматом и структурой.
Функция url может быть использована в SELECT и INSERT запросах на данные в URL таблицах.
Синтаксис
Параметры
URL— адрес HTTP или HTTPS сервера, который может приниматьGETилиPOSTзапросы (дляSELECTилиINSERTзапросов соответственно). Тип: String.format— Формат данных. Тип: String.structure— Структура таблицы в формате'UserID UInt64, Name String'. Определяет имена и типы колонок. Тип: String.headers- Заголовки в формате'headers('key1'='value1', 'key2'='value2')'. Вы можете задать заголовки для HTTP вызова.
Возвращаемое значение
Таблица с указанным форматом и структурой и с данными из определенного URL.
Примеры
Получение первых 3 строк таблицы, которая содержит колонки типа String и UInt32 из HTTP-сервера, который отвечает в CSV формате.
Вставка данных из URL в таблицу:
Globs в URL
Шаблоны в фигурных скобках { } используются для генерации набора шардов или для указания резервных адресов. Поддерживаемые типы шаблонов и примеры см. в описании функции remote.
Символ | внутри шаблонов используется для указания резервных адресов. Они перебираются в том же порядке, в котором указаны в шаблоне. Количество сгенерированных адресов ограничено настройкой glob_expansion_max_elements.
Виртуальные колонки
_path— Путь кURL. Тип:LowCardinality(String)._file— Имя ресурсаURL. Тип:LowCardinality(String)._size— Размер ресурса в байтах. Тип:Nullable(UInt64). Если размер неизвестен, значение будетNULL._time— Время последнего изменения файла. Тип:Nullable(DateTime). Если время неизвестно, значение будетNULL._headers- Заголовки ответа HTTP. Тип:Map(LowCardinality(String), LowCardinality(String)).
Разделение в стиле Hive
Когда параметр use_hive_partitioning установлен в 1, ClickHouse будет выявлять разделение в стиле Hive в пути (/name=value/) и позволит использовать колонки раздела в качестве виртуальных колонок в запросе. Эти виртуальные колонки будут иметь такие же имена, как в разделенном пути, но начинаться с _.
Пример
Использование виртуальной колонки, созданной с разделением в стиле Hive
Настройки Хранения
- engine_url_skip_empty_files - позволяет пропускать пустые файлы во время чтения. Отключено по умолчанию.
- enable_url_encoding - позволяет включать/выключать декодирование/кодирование пути в uri. Включено по умолчанию.
См. также