kyuubi

Kyuubi is an enhanced editon of Apache Spark's primordial Thrift JDBC/ODBC Server.

Building Kyuubi

Building Kyuubi with Apache Maven

Kyuubi server is built based on Apache Maven,

./build/mvn clean package -DskipTests

Running the code above in the Kyuubi project root directory is all we need to build a runnable Kyuubi server.

Besides, you can specify a particular maven profile of Spark to build kyuubi towards different Spark versions.

spark version maven profile notes
1.x.x (none) not supported
2.0.x (none) not supported
2.1.2 -Pspark-2.1 spark-2.1 is the default profile for building kyuubi and it defacto supports all 2.1.x and above
2.2.1 -Pspark-2.2 While use Spark 2.2.x and find any incompatible issue, you can specify -Pspark2.2 to build kyuubi yourself
2.3.0 -Pspark-2.3 While use Spark 2.3.x and find any incompatible issue, you can specify -Pspark2.3 to build kyuubi yourself

Building a Runnable Distribution

To create a Kyuubi distribution like those distributed by Kyuubi Release Page, and that is laid out so as to be runnable, use ./build/dist in the project root directory.

Example 1:

./build/dist --name custom-name --tgz

, which will build a Kyuubi distribution named kyuubi-{version}-bin-custom-name.tar.gz for you.

Example 2:

./build/dist --tgz -Pspark-2.3

, which will build a Kyuubi distribution named kyuubi-{version}-bin-spark-2.3.0.tar.gz for you.

For more information on usage, run ./build/dist --help

Running Tests

The following is an example of a command to run the tests:

./build/mvn clean test

With Maven, you can use the -DwildcardSuites flag to run individual Scala tests:

./build/mvn -Dtest=none -DwildcardSuites=yaooqinn.kyuubi.operation.OperationTypeSuite test

For more information about the ScalaTest Maven Plugin, refer to the ScalaTest documentation.

Additional Documentations

Kyuubi Deployment Guide
Kyuubi Containerization Guide
High Availability Guide
Configuration Guide
Authentication/Security Guide
Kyuubi ACL Management Guide
Kyuubi Architecture
Home Page