提前致谢!
答案 0 :(得分:12)
Hive的当前文档将STRING
列为有效数据类型,与VARCHAR
和CHAR
不同,请参阅官方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 强调优化磁盘读写性能,其中固定列值的长度相对不重要。”来自