openGauss创建的HDFS外表的数据类型要和HDFS上通过Hadoop HIVE创建的结构化表定义的数据类型相匹配。HDFS上Hadoop结构化数据表的定义参见HIVE官方文档描述。
在openGauss上创建的HDFS外表,需要支持HDFS原生数据表实际所采用的ROUND ROBIN和replication数据分布方式。
正如使用前的对接配置所述,对接最终要实现通过CREATE SERVER语法定义外部服务器来存储HDFS数据库实例信息。
要修改外部服务器的信息,请使用ALTER SERVER语法。
要删除外部服务器,请使用DROP SERVER语法。
完成对接配置,通过CREATE SERVER语法定义完外部服务器来存储HDFS数据库实例信息后。即可创建外表,通过外表读取远端HDFS数据库实例上的数据。外表的创建语法为CREATE FOREIGN TABLE。
修改外表,具体请参考ALTER FOREIGN TABLE。
删除外表,具体请参考DROP FOREIGN TABLE。
查看外表。外表创建完成后,即可以通过SELECT进行数据查询。更多信息请参见外表使用。
说明:
HDFS外表在建表语句中,不支持普通表定义中的column constraint、table constraint特性及语法。
不支持建立索引INDEX,不支持被继承,支持创建视图VIEW。
enable_hdfs_predicate_pushdown:bool型GUC参数,标示是否启用谓词下推至原生数据层的功能,默认打开(true)。
HDFS外表指定的目录或者文件必须是连接HD的用户有权限访问的,否则会报错该文件不存在。
访问HDFS数据支持数据传输加密,但有如下约束:
开启数据传输加密(设置dfs.encrypt.data.transfer为true)时,必须同时设置hadoop.rpc.protection为“privacy”;
HDFS数据传输加密相关配置dfs.encrypt.data.transfer.algorithm只支持“3des”(不推荐使用3DES,因为3DES为不安全的加密算法,存在网络安全风险);
HDFS数据传输加密相关配置dfs.encrypt.data.transfer.cipher.key.bitlength只支持128长度的初始密钥(FusionInsight HD该参数默认值为192,故当开启数据传输加密时,需要配套修改该参数值为128);
HDFS数据传输加密相关配置dfs.encrypt.data.transfer.cipher.suites只支持“AES/CTR/NoPadding”。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。