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: