Hive
Движок Hive позволяет выполнять запросы SELECT
к таблицам Hive на HDFS. В настоящее время он поддерживает следующие форматы ввода:
-
Text: поддерживает только простые скалярные типы столбцов, кроме
binary
-
ORC: поддерживает простые скалярные типы столбцов, кроме
char
; поддерживает только сложные типы, такие какarray
-
Parquet: поддерживает все простые скалярные типы столбцов; поддерживает только сложные типы, такие как
array
Создание таблицы
Смотрите подробное описание запроса CREATE TABLE.
Структура таблицы может отличаться от оригинальной структуры таблицы Hive:
- Имена столбцов должны совпадать с именами в оригинальной таблице Hive, но вы можете использовать только некоторые из этих столбцов в любом порядке, также вы можете использовать алиас-столбцы, вычисляемые на основе других столбцов.
- Типы столбцов должны соответствовать типам в оригинальной таблице Hive.
- Выражение для разделения должно быть согласовано с оригинальной таблицей Hive, а столбцы в выражении для разделения должны присутствовать в структуре таблицы.
Параметры движка
-
thrift://host:port
— адрес метастора Hive -
database
— имя удаленной базы данных. -
table
— имя удаленной таблицы.
Пример использования
Как использовать локальный кэш для файловой системы HDFS
Мы настоятельно рекомендуем вам включить локальный кэш для удаленных файловых систем. Тесты показывают, что это почти в 2 раза быстрее с кэшем.
Перед использованием кэша добавьте его в config.xml
- enable: ClickHouse будет поддерживать локальный кэш для удаленной файловой системы (HDFS) после запуска, если true.
- root_dir: Обязательно. Корневая директория для хранения файлов локального кэша для удаленной файловой системы.
- limit_size: Обязательно. Максимальный размер (в байтах) файлов локального кэша.
- bytes_read_before_flush: Контролирует количество байт перед сбросом на локальную файловую систему при загрузке файла из удаленной файловой системы. Значение по умолчанию — 1 МБ.
Запрос к таблице Hive с форматом ввода ORC
Создание таблицы в Hive
Создание таблицы в ClickHouse
Таблица в ClickHouse, получающая данные из таблицы Hive, созданной выше:
Запрос к таблице Hive с форматом ввода Parquet
Создание таблицы в Hive
Создание таблицы в ClickHouse
Таблица в ClickHouse, получающая данные из таблицы Hive, созданной выше:
Запрос к таблице Hive с форматом ввода Text
Создание таблицы в Hive
Создание таблицы в ClickHouse
Таблица в ClickHouse, получающая данные из таблицы Hive, созданной выше: