Kyuubi vs HiveServer vs Spark Thrift Server

Kyuubi, Spark Thrift Server, and HiveServer share the same interfaces and protocols, making their usage similar for users. The main advantage of Kyuubi and Spark Thrift Server over HiveServer is improved performance.

In the table below, you can see how Kyuubi compares to HiveServer and Spark Thrift Server in performance and feature availability.

Feature HiveServer Spark ThriftServer Kyuubi

Interface

HiveJDBC

HiveJDBC

HiveJDBC

SQL syntax

Hive QL

Spark SQL

Spark SQL

SQL optimizer

Hive Optimizer

Spark SQL Catalyst

Spark SQL Catalyst

SQL parsing & planning

Server side

Server side

Engine side

UDF loading

Server side

Server side

Engine side

Job submission

A query is split into multiple Spark applications, called RemoteDriver

Within the server

Via Kyuubi engines with different isolation policies

Spark compatibility

Single version-specific

Built-in

Multi-version

Catalog management

HMS

HMS

HMS

High availability

Yes

No

Yes

Multitenancy

Yes

No

Yes

Permission control

SQL standard, fine-grained

No

SQL standard, fine-grained

Performance

Fair

Good

Good

Client concurrency

High

Low

High

Queuing

For queries

No

For engines

Resource setting

For queries

For pools

For engines

Resource management

YARN

Pools

YARN, Kubernetes, etc.

Resource occupancy time

Within a query

Permanent

Several modes supported depending on a share level, including dynamic resource allocation, available for all

Found a mistake? Seleсt text and press Ctrl+Enter to report it