Hive metastore
A Hive metastore often holds more than Hive tables: Iceberg, Hudi and Paimon tables registered beside them, views written by several engines, and tables Spark created. Gravitino connects the same metastore once per kind of content, so each kind is served by the catalog that understands it:
- As a Hive catalog, for Hive tables and views
- As an Iceberg catalog, for Iceberg tables
- As a Hudi catalog, for Hudi tables
- As a Paimon catalog, for Paimon tables
What Gravitino supports in a Hive metastore
| Content in the metastore | Supported | How |
|---|---|---|
| Hive tables in TEXTFILE, SEQUENCEFILE, RCFILE, ORC, Parquet, Avro, JSON, CSV or REGEX; managed or external; partitioned or bucketed | Yes | Hive catalog: list, load, create, alter and drop |
| Tables created by Spark in Parquet or ORC | Yes | Hive catalog |
| Tables created by Spark in other formats, such as CSV, JSON or Delta | No | Convert the table to Parquet, ORC or Iceberg; see Tables written by Spark |
| Hive, Spark and Flink views | Yes | Hive catalog: list, load, create, alter and drop |
| Trino views | No | |
| Iceberg tables | Yes | Iceberg catalog over the metastore. Engines reach these tables through the Iceberg REST catalog service |
| Hudi tables | Yes | Hudi catalog on the same metastore, read-only |
| Paimon tables | Yes | Paimon catalog over the metastore |
| Transactional (ACID) tables | No | |
Tables created with STORED BY, such as HBase or Kudu tables | No |