Сравнение Kyuubi, HiveServer, Spark Thrift Server
Kyuubi, Spark Thrift Server и HiveServer используют одни и те же интерфейсы и протоколы. За счет этого они похожи в использовании, но значительно отличаются по некоторым ключевым характеристикам. Главное преимущество Kyuubi и Spark Thrift Server перед HiveServer — это улучшенная производительность.
В таблице ниже перечислены основные отличия Kyuubi от HiveServer и Spark Thrift Server в производительности и доступных возможностях.
Характеристика | HiveServer | Spark ThriftServer | Kyuubi |
---|---|---|---|
Интерфейс |
HiveJDBC |
HiveJDBC |
HiveJDBC |
Синтаксис SQL |
Hive QL |
Spark SQL |
Spark SQL |
Оптимизатор SQL |
Hive Optimizer |
Spark SQL Catalyst |
Spark SQL Catalyst |
Парсинг и планирование выполнения SQL-запросов |
На сервере |
На сервере |
В движке |
Загрузка UDF |
На сервере |
На сервере |
В движке |
Добавление задач |
Запрос разбивается на несколько приложений Spark ( |
На сервере |
Через движки Kyuubi с выбором политики изоляции |
Совместимость со Spark |
Поддержка одной версии |
Встроенный |
Поддержка нескольких версий |
Управление каталогом |
HMS |
HMS |
HMS |
Высокая доступность |
Есть |
Нет |
Есть |
Мультиарендность |
Есть |
Нет |
Есть |
Управление разрешениями |
Стандарт SQL, детализированный (fine-grained) |
Нет |
Стандарт SQL, детализированный (fine-grained) |
Производительность |
Неплохая |
Хорошая |
Хорошая |
Параллелизм клиентов |
Высокий |
Низкий |
Высокий |
Создание очередей |
Для запросов |
Нет |
Для движков |
Настройка ресурсов |
Для запросов |
Для пулов |
Для движков |
Управление ресурсами |
YARN |
Пулы |
YARN, Kubernetes и т.д. |
Ограничение времени занятости ресурсов |
На время выполнения запроса |
Без ограничения |
В зависимости от уровня общего доступа, поддерживается несколько режимов. Для всех режимов доступно динамическое распределение ресурсов |