diff --git a/catalogs/catalog-lakehouse-paimon/build.gradle.kts b/catalogs/catalog-lakehouse-paimon/build.gradle.kts index d388ecd2a0..5f84764188 100644 --- a/catalogs/catalog-lakehouse-paimon/build.gradle.kts +++ b/catalogs/catalog-lakehouse-paimon/build.gradle.kts @@ -46,6 +46,7 @@ dependencies { exclude("com.sun.jersey") exclude("javax.servlet") exclude("org.apache.curator") + exclude("org.apache.hive") exclude("org.apache.hbase") exclude("org.apache.zookeeper") exclude("org.eclipse.jetty.aggregate:jetty-all") @@ -70,6 +71,15 @@ dependencies { exclude("org.apache.paimon:paimon-shade-caffeine-2") exclude("org.apache.paimon:paimon-shade-guava-30") } + implementation(libs.hive2.metastore) { + exclude("*") + } + implementation(libs.hive2.exec) { + exclude("*") + } + implementation(libs.hive2.common) { + exclude("*") + } implementation(libs.bundles.log4j) implementation(libs.commons.lang3) implementation(libs.guava) diff --git a/docs/lakehouse-paimon-catalog.md b/docs/lakehouse-paimon-catalog.md index 4c336f3d32..14595f06cb 100644 --- a/docs/lakehouse-paimon-catalog.md +++ b/docs/lakehouse-paimon-catalog.md @@ -22,17 +22,16 @@ Builds with Apache Paimon `0.8.0`. ### Catalog capabilities -- Works as a catalog proxy, supporting `FilesystemCatalog` and `JdbcCatalog`. +- Works as a catalog proxy, supporting `FilesystemCatalog`, `JdbcCatalog` and `HiveCatalog`. - Supports DDL operations for Paimon schemas and tables. -- Doesn't support `HiveCatalog` catalog backend now. - Doesn't support alterSchema. ### Catalog properties | Property name | Description | Default value | Required | Since Version | |----------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------|-----------------------------------------------------------------|-------------------| -| `catalog-backend` | Catalog backend of Gravitino Paimon catalog. Supports `filesystem` and `jdbc` now. | (none) | Yes | 0.6.0-incubating | +| `catalog-backend` | Catalog backend of Gravitino Paimon catalog. Supports `filesystem`, `jdbc` and `hive`. | (none) | Yes | 0.6.0-incubating | | `uri` | The URI configuration of the Paimon catalog. `thrift://127.0.0.1:9083` or `jdbc:postgresql://127.0.0.1:5432/db_name` or `jdbc:mysql://127.0.0.1:3306/metastore_db`. It is optional for `FilesystemCatalog`. | (none) | required if the value of `catalog-backend` is not `filesystem`. | 0.6.0-incubating | | `warehouse` | Warehouse directory of catalog. `file:///user/hive/warehouse-paimon/` for local fs, `hdfs://namespace/hdfs/path` for HDFS , `s3://{bucket-name}/path/` for S3 or `oss://{bucket-name}/path` for Aliyun OSS | (none) | Yes | 0.6.0-incubating | | `authentication.type` | The type of authentication for Paimon catalog backend, currently Gravitino only supports `Kerberos` and `simple`. | `simple` | No | 0.6.0-incubating | @@ -51,6 +50,9 @@ Builds with Apache Paimon `0.8.0`. If you want to use the `oss` or `s3` warehouse, you need to place related jars in the `catalogs/lakehouse-paimon/lib` directory, more information can be found in the [Paimon S3](https://paimon.apache.org/docs/master/filesystems/s3/). ::: +:::note +The hive backend does not support the kerberos authentication now. +::: Any properties not defined by Gravitino with `gravitino.bypass.` prefix will pass to Paimon catalog properties and HDFS configuration. For example, if specify `gravitino.bypass.table.type`, `table.type` will pass to Paimon catalog properties.