Hive中是否存在字符串数据类型的最大大小?

时间:2016-01-27 07:14:22

标签: hadoop hive bigdata

谷歌一吨但没有在任何地方找到它。或者这是否意味着只要允许群集,Hive就可以支持任意大型字符串数据类型?如果是这样,我可以在哪里找到我的集群可以支持的字符串数据类型的最大大小?

提前致谢!

2 个答案:

答案 0 :(得分:12)

Hive的当前文档将STRING列为有效数据类型,与VARCHARCHAR不同,请参阅官方apache文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-Strings

我并不是很明显STRING确实是它自己的类型,但是如果向下滚动,你会看到几个与其他情况明显不同的情况。

虽然可能不具有权威性,但此页面表示STRING的最大长度为2GB。 http://www.folkstalk.com/2011/11/data-types-in-hive.html

答案 1 :(得分:0)

默认情况下,Hive 的列元数据未指定 STRING 列的最大数据长度。

驱动有参数 DefaultStringColumnLength,默认为 255 最大值。

将此参数设置为最大大小的连接字符串如下所示:jdbc:hive2://localhost:10000;DefaultStringColumnLength=32767;

(https://github.com/exasol/virtual-schemas/issues/118)

"在 Hive 所处的“宽松”世界中,它可能不拥有数据文件并且必须灵活处理文件格式,Hive 依赖于分隔符的存在来单独的字段。此外,Hadoop 和 Hive 强调优化磁盘读写性能,其中固定列值的长度相对不重要。”来自

https://learning.oreilly.com/library/view/programming-hive/9781449326944/ch03.html#Collection-Data-Types