Apache Hive Tables
TiDB Cloud Lake 可以直接查询由 Apache Hive 编目管理的数据,而无需复制数据。将 Hive Metastore 注册为 TiDB Cloud Lake catalog,指向存放表数据的对象存储,然后即可像查询原生 TiDB Cloud Lake 对象一样查询这些表。
快速开始
注册 Hive Metastore
CREATE CATALOG hive_prod TYPE = HIVE CONNECTION = ( METASTORE_ADDRESS = '127.0.0.1:9083' URL = 's3://lakehouse/' ACCESS_KEY_ID = '<your_key_id>' SECRET_ACCESS_KEY = '<your_secret_key>' );浏览 catalog
USE CATALOG hive_prod; SHOW DATABASES; SHOW TABLES FROM tpch;查询 Hive 表
SELECT l_orderkey, SUM(l_extendedprice) AS revenue FROM tpch.lineitem GROUP BY l_orderkey ORDER BY revenue DESC LIMIT 10;
保持元信息最新
Hive schema 或 partition 可能会在 TiDB Cloud Lake 之外发生变化。出现这种情况时,请刷新 TiDB Cloud Lake 的缓存元信息:
ALTER TABLE tpch.lineitem REFRESH CACHE;
数据类型映射
查询运行时,TiDB Cloud Lake 会自动将 Hive 原语类型转换为最接近的原生类型:
STRUCT 等嵌套结构会通过 VARIANT 类型呈现。
注意事项和限制
- 在 TiDB Cloud Lake 中,Hive catalog 为只读(写入必须通过兼容 Hive 的引擎完成)。
- 需要能够访问底层对象存储;请使用连接参数配置凭证。
- 每当表布局发生变化(例如新增 partition)时,请使用
ALTER TABLE ... REFRESH CACHE以保持查询结果为最新。