varchar在Hive中的性能是否优于string?

San*_*pas 7 hadoop hive

版本0.12开始, Hive支持VARCHAR数据类型.

是否会VARCHAR提供比STRING典型的分析Hive查询更好的性能?

Rau*_*ria 3

在 hive 中,默认情况下 String 映射到 VARCHAR(32762) 所以这意味着

  • 如果值超过 32762,则该值将被截断
  • 如果数据不需要最大 VARCHAR 长度来存储(例如,如果列从不超过 100 个字符),则它会为该列的处理分配不必要的资源

STRING 数据类型的默认行为是将类型映射到 SQL 数据类型 VARCHAR(32762),默认行为可能会导致性能问题

此解释基于隐式使用 Hive 的 IBM BIG SQL

IBM BIGINSIGHTS 文档参考