Функция Таблицы 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 в таблицу:
Глобусы в 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. Включено по умолчанию.
Разрешения
Функция url требует разрешения на CREATE TEMPORARY TABLE. Таким образом, она не будет работать для пользователей с настройкой readonly = 1. Требуется как минимум readonly = 2.
Смотрите также
