CREATE CATALOG CONNECTION [IF NOT EXISTS] <connection_name>
TYPE HMS
HIVE_METASTORE_URIS = '<thrift://host:port>'
STORAGE_CONNECTION = '<storage_connection_name>'
[AUTH_TYPE = 'kerberos'
KERBEROS_CLIENT_PRINCIPAL = '<principal>'
KERBEROS_SERVICE_PRINCIPAL = '<principal>'
KERBEROS_KRB5_CONFIG_PATH = '<volume_path>'
KERBEROS_KEYTAB_PATH = '<volume_path>'];
参数说明
HIVE_METASTORE_URIS
HIVE_METASTORE_URIS
:Hive Metastore 服务地址,格式为
thrift://host:9083
thrift://host:9083
,端口通常是 9083
STORAGE_CONNECTION
STORAGE_CONNECTION
:已创建的存储连接名称,用于读取 Hive 数据文件(OSS/COS/S3/HDFS)
AUTH_TYPE
AUTH_TYPE
:认证类型,不填默认无认证;填
'kerberos'
'kerberos'
启用 Kerberos 认证
Kerberos 参数仅在
AUTH_TYPE = 'kerberos'
AUTH_TYPE = 'kerberos'
时需要:配置文件和 keytab 文件须提前通过
PUT
PUT
命令上传至 User Volume
示例
Hive ON OSS(阿里云)
-- 步骤 1:创建存储连接
CREATE STORAGE CONNECTION IF NOT EXISTS oss_conn
TYPE OSS
ACCESS_ID = 'LTAIxxxxxxxxxxxx'
ACCESS_KEY = 'T8Gexxxxxxmtxxxxxx'
ENDPOINT = 'oss-cn-hangzhou-internal.aliyuncs.com';
-- 步骤 2:创建 Catalog Connection
-- 确保 HMS 所在服务器与 Lakehouse 网络已打通,参考:创建阿里云终端节点服务
CREATE CATALOG CONNECTION IF NOT EXISTS hive_oss_conn
TYPE HMS
HIVE_METASTORE_URIS = 'thrift://192.168.1.100:9083'
STORAGE_CONNECTION = 'oss_conn';
Hive ON COS(腾讯云)
CREATE STORAGE CONNECTION IF NOT EXISTS cos_conn
TYPE COS
ACCESS_KEY = '<access_key>'
SECRET_KEY = '<secret_key>'
REGION = 'ap-shanghai'
APP_ID = '1310000503';
CREATE CATALOG CONNECTION IF NOT EXISTS hive_cos_conn
TYPE HMS
HIVE_METASTORE_URIS = 'thrift://192.168.1.100:9083'
STORAGE_CONNECTION = 'cos_conn';
Hive ON S3(AWS)
CREATE STORAGE CONNECTION IF NOT EXISTS s3_conn
TYPE S3
ACCESS_KEY = 'AKIAQNBSBP6EIJE33***'
SECRET_KEY = '7kfheDrmq***'
ENDPOINT = 's3.cn-north-1.amazonaws.com.cn'
REGION = 'cn-north-1';
CREATE CATALOG CONNECTION IF NOT EXISTS hive_s3_conn
TYPE HMS
HIVE_METASTORE_URIS = 'thrift://192.168.1.100:9083'
STORAGE_CONNECTION = 's3_conn';
Hive + Kerberos 认证
-- 先上传认证文件到 User Volume
PUT '/etc/krb5.conf' TO USER VOLUME FILE 'krb5.conf';
PUT '/path/to/hive.keytab' TO USER VOLUME FILE 'hive.keytab';
CREATE CATALOG CONNECTION IF NOT EXISTS hive_kerberos_conn
TYPE HMS
HIVE_METASTORE_URIS = 'thrift://your-hms-host:9083'
STORAGE_CONNECTION = 'oss_conn'
AUTH_TYPE = 'kerberos'
KERBEROS_CLIENT_PRINCIPAL = 'hive/localhost@YOUR-REALM.COM'
KERBEROS_SERVICE_PRINCIPAL = 'hive/localhost@YOUR-REALM.COM'
KERBEROS_KRB5_CONFIG_PATH = 'volume:user//~/krb5.conf'
KERBEROS_KEYTAB_PATH = 'volume:user//~/hive.keytab';