【问题标题】:Reading multiple parquet files using hive table使用配置单元表读取多个镶木地板文件
【发布时间】:2018-04-06 11:04:36
【问题描述】:

您好,我有 2 个列数不同的镶木地板文件 1) 姓名、班级、成绩 2) 姓名、班级、分数、成绩

如何使用 hive 中的表从两个文件中读取所有数据。假设该表是用 4 列名称、班级标记、毕业生定义的?
我们如何在 hive 中设置 parquet.mergeSchema 属性?

【问题讨论】:

  • 您是否至少尝试过创建一个指向文件位置的外部配置单元表?
  • 是的,它已经完成了...但是该表没有显示两个文件中的文件。该表仅显示 3 列数据名称、类、标记和等级,尽管 tbl 位置中的一个镶木地板文件具有等级值
  • 您应该发布您的 CREATE 声明。在任何情况下,您都可以在执行 CREATE 语句之前尝试设置 parquet.column.index.access=false。

标签: hive schema parquet


【解决方案1】:

Parquet 支持模式演变。如果您使用 Spark SQL 读取此文件,则必须将 spark.sql.parquet.mergeSchema 设置为 true (由于模式合并是一项昂贵的操作,因此从 Spark 1.5.1 开始关闭它)。另请参阅 Spark SQL Guide,模式合并部分。

【讨论】:

    猜你喜欢
    • 2018-08-13
    • 1970-01-01
    • 2019-08-04
    • 2022-06-16
    • 2019-09-23
    • 2022-10-25
    • 2018-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多