更新时间:2024-06-19 GMT+08:00
CREATE EXTERNAL SCHEMA
功能描述
创建EXTERNAL SCHEMA,即外部模式。
创建EXTERNAL SCHEMA来访问hive端创建的表。用户可以使用外部模式名作为前缀进行访问,若无模式名前缀,则访问当前模式下的命名对象。
CREATE EXTERNAL SCHEMA语法仅云原生数仓3.0版本支持。
注意事项
- 只要拥有当前数据库CREATE权限的用户,就可以创建外部SCHEMA。
- 创建命名对象时不可用EXTERNAL SCHEMA作为前缀修饰,即不支持在EXTERNAL SCHEMA下创建对象。目前只支持通过使用EXTERNAL SCHEMA对hive端创建的表进行SELECT、INSERT和INSERT OVERWRITE操作。
- CREATE EXTERNAL SCHEMA不支持在新模式中创建对象的子命令。
语法格式
- 根据指定的名字创建EXTERNAL SCHEMA。
1 2 3 4 5 6
CREATE EXTERNAL SCHEMA schema_name WITH SOURCE source_type DATABASE 'db_name' SERVER srv_name METAADDRESS 'address' CONFIGURATION 'confpath';
参数说明
- schema_name
外部模式名字。
取值范围:字符串,要符合标识符的命名规范。
- 模式名不能和当前数据库里其他的模式重名。
- 模式的名字不可以“pg_”开头。
- SOURCE
外部元数据存储引擎的类型,当前source_type仅支持Hive。
- DATABASE
指定外部SCHEMA所对应的hive中数据库。
external schema与hive中的数据库是多对一的对应关系。
- SERVER
取值范围:已存在的FOREIGN SERVER。
通过external schema关联foreign server以达到访问外部数据的目的。
- METAADDRESS
表示hivemetastore通讯接口。
- CONFIGURATION
表示hivemetastore相关配置文件存放路径。
如果当前搜索路径上的模式中存在同名对象时,需要明确指定引用对象所在的模式。可以通过命令SHOW SEARCH_PATH来查看当前搜索路径上的模式。
示例
创建名称为ex1的EXTERNAL SCHEMA:
1 2 3 4 5 6 |
CREATE EXTERNAL SCHEMA ex1 WITH SOURCE hive DATABASE 'demo' SERVER hdfs_server METAADDRESS '***.***.***.***:***' CONFIGURATION '/MRS/config' |
父主题: 语法参考