当前位置:首页 > 行业动态 > 正文

Hive中MapJoin操作的关键配置参数有哪些?

参数名称                             | 默认值       | 说明
||
hive.exec.dynamic.partition          | true         | 是否允许动态分区,设置为true时,可以在Map端进行分区。
hive.exec.dynamic.partition.mode      | nonstrict    | 动态分区的模式,可以是strict或nonstrict,strict模式下,如果SQL中没有指定分区,则不允许执行;nonstrict模式下,如果没有指定分区,则Hive会自动为所有分区分配一个值。
hive.exec.dynamic.partition.parallel  | false        | 是否允许并行动态分区。
hive.exec.reducers.bytes.per.reducer | 100000000   | 每个Reducer的最大输入数据量(以字节为单位)。
hive.exec.reducers.max               | 999          | 最大Reducer数量。
hive.exec.parallel                   | false        | 是否启用执行并行化。
hive.exec.parallel.thread.number     | 4            | 并行执行时使用的线程数。
hive.exec.parallel.thread.number.join  | 4            | 并行执行时MapJoin使用的线程数。
hive.exec.parallel.thread.number.sort  | 4            | 并行执行时排序使用的线程数。
hive.exec.parallel.thread.number.map  | 4            | 并行执行时Map阶段使用的线程数。
hive.exec.parallel.thread.number.reduce | 4            | 并行执行时Reduce阶段使用的线程数。
hive.exec.parallel.thread.number.mergejoin  | 4            | 并行执行时MergeJoin使用的线程数。
hive.exec.parallel.thread.number.mr  | 4            | 并行执行时MR作业使用的线程数。
hive.exec.parallel.thread.number.dbjoin  | 4            | 并行执行时DatabaseJoin使用的线程数。
hive.exec.parallel.thread.number.mapjoin  | 4            | 并行执行时MapJoin使用的线程数。
hive.exec.parallel.thread.number.reducejoin  | 4            | 并行执行时ReduceJoin使用的线程数。
hive.exec.parallel.thread.number.sortmerge  | 4            | 并行执行时SortMerge使用的线程数。
hive.exec.parallel.thread.number.merge  | 4            | 并行执行时Merge使用的线程数。
hive.exec.parallel.thread.number.sha2  | 4            | 并行执行时SHA2使用的线程数。
hive.exec.parallel.thread.number.sha3  | 4            | 并行执行时SHA3使用的线程数。
hive.exec.parallel.thread.number.mapredlocal  | 4            | 并行执行时MapRedLocal使用的线程数。
hive.exec.parallel.thread.number.mapjoin.bBroadcast  | 4            | 并行执行时MapJoin广播表的线程数。
hive.exec.parallel.thread.number.mapjoin.bReduce  | 4            | 并行执行时MapJoinReduce表的线程数。
hive.exec.parallel.thread.number.mapjoin.rBroadcast  | 4            | 并行执行时ReduceJoin广播表的线程数。
hive.exec.parallel.thread.number.mapjoin.rReduce  | 4            | 并行执行时ReduceJoinReduce表的线程数。
hive.exec.parallel.thread.number.mapjoin.bSort  | 4            | 并行执行时MapJoin广播表的排序线程数。
hive.exec.parallel.thread.number.mapjoin.rSort  | 4            | 并行执行时ReduceJoinReduce表的排序线程数。

这些参数主要用于调整Hive的执行并行度,从而优化MapJoin操作的性能,增加hive.exec.parallel.thread.number.mapjoin的值可以提高MapJoin操作的处理速度,具体的参数设置需要根据实际的作业负载和集群资源进行适当调整。

0