ハイブ計算で、多くの場合、計算エンジン(MRに火花とハイブにハイブ)に応じて、2つのパラメータを設定します。
スパークパラメータ:
糸クラスタspark.master = SET; #セットスパークは、モードをコミット
hive.execution.engineを設定=火花;#設定計算エンジン
spark.yarn.queue = queue_nameの設定;#設定ジョブ送信キュー
設定spark.app.name = JOB_NAME;#セットのジョブ名
セットspark.executor.instance = 20;#を設けてアクチュエータの数
セットspark.executor.cores = 4;#は、アクチュエータ提供核の数を数えます
spark.executor.memory = 8グラムを設定する;#メモリアクチュエータが設けられています。
mapred.reduce.tasksを設定= 600;#提供するタスクの並列
= 2048 spark.yarn.executor.memoryOverheadを設定します。#は、外部メモリのJVMを設定します
設定spark.memory.fraction = 0.8;#セットメモリ比(spark2.0用+)
設定spark.serializer = org.apache.serializer.KyroSerializer;#Setオブジェクトのシリアライズ
#動的なパーティションを設定します
設定hive.exec.dynamic.partition =はtrue。
hive.exec.dynamic.partition.mode =厳密でを設定します。
hive.exec.dynamic.partitions.pernode = 10000を設定します。
hive.exec.dynamic.partitions = 10000を設定します。
MRパラメータ:
mapreduce.job.queuename = queue_nameの設定;#設定ジョブ送信キュー
= MRをhive.execution.engine設定;#セットの計算エンジン
セットmapreduce.map.memory.mb = 4096;#マップメモリを提供します
mapreduce.map.java.opts = -Xmx3276を設定します。#設定JVMマップメモリ(より少ないメモリマップ)
= 4096セットmapreduce.reduce.memory.mb;#が設けられたメモリを削減
= 3072セットmapreduce.reduce.java.opts; ##は、(低減未満RAM)をJVMメモリを削減配置
#小さなファイルをマージ
小さな入力ファイルと#Map
hive.input.format = org.apache.hadoop.hive.ql.io.CombineHiveInputFormatセット;小ファイルの実装が#マップマージ前
のSET mapred.max.split.size = 256 000 000;#各マップ入力の最大サイズ
設定mapred.min.split.size.per.node = 100000000;少なくとも1つのノード#1の大きさに分割
セットmapred.min.split.size.per.rack = 100000000;の少なくともスプリット#スイッチサイズ
#出力マージ
小さなファイルをマージするタスクの終了時に、設定されたhive.merge.mapfiles =真#マップのみを
hive.merge.mapredfilesを設定する=真の#は、Map-削減タスクは端の小さいファイルをマージ
hive.merge.sizeを設定します。マージされたファイルのper.task = 256×1000×1000#サイズ
出力ファイルサイズが、別個のマップリデュースタスクファイルマージの開始平均値よりも小さいときhive.merge.smallfiles.avgsize = 16000000#を設定します
#動的なパーティションを設定します
設定hive.exec.dynamic.partition =はtrue。
hive.exec.dynamic.partition.mode =厳密でを設定します。
hive.exec.dynamic.partitions.pernode = 10000を設定します。
hive.exec.dynamic.partitions = 10000を設定します。