【问题标题】:Should ORC files pointed by a Hive table (orc type) contain all the attributes in the hive table?Hive 表(orc 类型)指向的 ORC 文件是否应该包含 hive 表中的所有属性?
【发布时间】:2018-10-25 08:34:53
【问题描述】:

我有一个指向包含多个 orc 文件的 s3 路径 (s3:///table/data/) 的配置单元表。 我有一项将文件写入上述前缀的工作,但是,不能保证属性的顺序(在文件中),并且并非所有属性都被填充,即某些文件可能只有数据的子集。

那么,hive 表是否可以使用适当的列名映射列数据并为查询的每一列返回适当的值?

【问题讨论】:

    标签: hive orc


    【解决方案1】:

    ORC表只是根据表中列的顺序读取数据。

    如果不保证属性顺序,则hive orc table 读取数据根据表架构如果数据类型匹配则显示值(或)将值转换为该类型(或)null

    可能你需要Create an AVRO table然后根据avro架构表会指向正确的值。

    【讨论】:

    • 感谢您的回复!是的,现在我在确保 ORC 文件中属性的顺序后没有问题。我们需要列式存储来获得更好的查询性能,看看 Arvo 是否能满足我们需要的性能。
    • @barath,您可以使用 Avro 表作为暂存表,然后您可以从 Avro 表中选择插入到ORC/Parquet(列)表中以获得更好的性能。
    猜你喜欢
    • 2017-08-25
    • 1970-01-01
    • 2020-10-03
    • 2018-04-10
    • 2023-03-31
    • 2018-04-03
    • 1970-01-01
    • 2020-09-13
    • 1970-01-01
    相关资源
    最近更新 更多