Hive中的字符类型String/VARCHAR/CHAR有什么不同?
在hive中默认情况下,String被映射到VARCHAR(32762),这意味着
- 如果值超过32762,则该值将被截断
- 如果数据不需要存储的最大VARCHAR长度(例如,如果列永远不会超过100个字符),那么它会为处理该列分配不必要的资源
STRING数据类型的默认行为是将类型映射到VARCHAR的SQL数据类型(32762),默认行为可能导致性能问题 此解释基于IBM BIG SQL,它隐含地使用HiveIBM BIGINSIGHTS doc reference
varchar数据类型也在内部保存为String。我看到的唯一区别是String是无限的,最大值为32,767字节,Varchar的最大值为65,535字节。
Hive On Spark
hive on spark是把底层计算引擎替换成spark,其他的都保持不变,修改hive.execution.engine=spark,这样来切换hive on spark。