This guide outlines how to deploy the Unity Catalog server.
-
To generate the tarball, run the following command in the source code:
build/sbt createTarball
-
The tarball generated in the
target
directory can be unpacked using the following command:tar -xvf unitycatalog-<version>.tar.gz
-
Unpacking the tarball will create the following directory structure:
unitycatalog-<version> ├── bin │ ├── start-uc-server │ └── uc ├── etc │ ├── conf │ ├── data │ ├── db │ └── logs └── jars
-
The
bin
directory contains the scripts that you can use to start the UC server and run the CLI. -
The
etc
directory contains the configuration, data, database, and logs directories. -
The
jars
directory contains the jar files required to run the UC server.
- The UC server can be configured by modifying the files in
etc/conf/
. This includes properties related to logging, server environment and the s3 configuration. - Setting the server environment to
dev
will use properties located inetc/conf/hibernate.properties
to configure the backend database whereastest
will spin up an in-memory database. - The
etc/data/
directory contains the data files that are used by the UC server. This includes the tables and volumes that are created. - The
etc/db/
directory contains the backend database that is used by the UC server.
- The backend database can be configured by modifying the
etc/conf/hibernate.properties
file. - You need to provide the connection details to connect to your database server.
- Install docker.
- Download JDBC driver for MySQL.
-
In a terminal, navigate to the cloned repository root directory.
-
Modify
etc/db/mysql-example.yml
to configure MySQL server. Then start MySQL using Docker:docker-compose -f etc/db/mysql-example.yml up -d
-
Modify the
etc/conf/hibernate.properties
file with your MySQL connection details:hibernate.connection.driver_class=com.mysql.cj.jdbc.Driver hibernate.connection.url=jdbc:mysql://localhost:3306/ucdb hibernate.connection.user=uc_default_user hibernate.connection.password=uc_default_password
-
Modify the
jars/classpath
file and add path to your JDBC driver.
- Install docker.
- Download JDBC driver for PostgreSQL.
-
In a terminal, navigate to the cloned repository root directory.
-
Modify
etc/db/postgres-example.yml
to configure PostgreSQL server. Then start PostgreSQL using Docker:docker-compose -f etc/db/postgres-example.yml up -d
-
Modify the
etc/conf/hibernate.properties
file with your PostgreSQL connection details:hibernate.connection.driver_class=org.postgresql.Driver hibernate.connection.url=jdbc:postgresql://localhost:5432/ucdb hibernate.connection.user=uc_default_user hibernate.connection.password=uc_default_password
-
Modify the
jars/classpath
file and add path to your jdbc driver.