【问题标题】:How to control the number of mappers when using parquet format使用 parquet 格式时如何控制映射器的数量
【发布时间】:2016-04-27 05:13:10
【问题描述】:

我正在为我的蜂巢表使用镶木地板格式。我看到这些表的存储得到了显着改善。当我在这些表上运行一些查询时,与我在相同的文本格式的表上运行相同的查询相比,启动的映射器数量非常少。因此,启动的映射器数量非常少,parquet 格式的配置单元查询需要很长时间才能完成。 (我怀疑这是因为小尺寸的镶木地板格式)。 有什么方法可以提高 parquet 格式的运行时间,或者换句话说,在运行 hive 查询时控制映射器的数量?

【问题讨论】:

    标签: performance hadoop mapreduce hive parquet


    【解决方案1】:

    如果您将 hive 与 Tez 引擎一起使用,则默认输入格式(决定数据的拆分次数)是 HiveInputFormat 类。您可以像这样使用set 命令更改输入格式类

    set hive.input.format=hive.tez.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;
    

    您现在可以通过改变属性来控制输入拆分的数量

    mapreduce.input.fileinputformat.split.maxsizemapreduce.input.fileinputformat.split.minsize

    并将它们设置为您想要的字节数。

    CombineHiveInputFormat 类还将单独的文件合并到一个单独的拆分中,以防每个文件具有大小

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-22
      • 2013-11-03
      • 1970-01-01
      • 1970-01-01
      • 2020-06-13
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      相关资源
      最近更新 更多