【问题标题】:Is it possible for Parquet to compress the summary file (_metadata) in the MR job?Parquet 是否可以压缩 MR 作业中的摘要文件(_metadata)?
【发布时间】:2023-04-10 17:43:02
【问题描述】:

现在我们正在使用 mapreduce 作业来转换数据并将结果以 Parquet 格式存储。

还会生成一个摘要文件 (_metadata)。但问题是它太大(超过5G)。有什么办法可以缩小尺寸吗?

【问题讨论】:

    标签: parquet


    【解决方案1】:

    感谢 Alex Levenson 和 Ryan Blue:

    亚历克斯·莱文森:

    您可以将摘要文件的读取推送到映射器,而不是在提交者节点上读取:

    ParquetInputFormat.setTaskSideMetaData(conf, true);

    (Ryan Blue:这是从 1.6.0 开始的默认设置)

    或在您的配置中将“parquet.task.side.metadata”设置为 true。我们 有类似的问题,默认情况下,客户端读取摘要文件 需要大量时间和内存的提交者节点。这个标志修复了 而是通过从 映射器中的文件页脚(每个映射器只读取它需要的元数据)。

    我们过去一直在谈论的另一种选择是 完全禁用创建此元数据文件,正如我们所看到的创建它 也可能很昂贵,如果您使用任务端元数据方法,它是 没用过。

    (Ryan Blue:有一个选项可以抑制文件,我建议这样做。现在文件元数据已在任务中处理,不再需要摘要文件。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-23
      • 1970-01-01
      • 1970-01-01
      • 2017-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多