无法找到有关 Hive 表最大字符限制的合适规范。
我正在开发一个涉及 hive 表的 ETL 过程,这些表已指定格式为 _ 的命名约定,并且提供的表名称远大于 30 字节(pl/sql 的正常限制),直接谷歌搜索给我带来了列名称限制,但没有表名信息。
最佳答案
Apache Hive 是开源的。 在 Veritas 源代码中。
以分支 2.1 为例,Javadoc以及“Metastore API”的 Java 源代码——以及 Thrift message format -- 将表名称作为通用字符串进行管理。没有具体限制。
但是Metastore服务使用RDBMS作为后端,您可以看到标准的MySQL schema定义
CREATE TABLE IF NOT EXISTS `TBLS` (
...
`TBL_NAME` varchar(128) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
...
请注意,此 128 个拉丁字母字符限制是设置 Hive 时的默认值。之后,一个简单的 ALTER TABLE 命令就足以在数据库级别更改该限制,而无需重新编译任何内容。
关于hive - Hive 表名最大字符数限制是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51596410/