Hive beizutreten, legen Sie die Anzahl der Reduktionen
Ich brauche, um die Anzahl der Reduktionen, während Sie eine join-operation im Hive. Ich möchte nicht die gleiche Anzahl von reduzierern zu jeder join-job, den ich habe. Wie Kann ich es erwähnen als argument? Vielen Dank im Voraus.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Oben in der script-Datei, setzen Sie diese:
Der einzige Weg, dies zu tun ist derzeit zu teilen das ein Hive-Skript in mehrere Teile, in denen schwere joins gesetzt werden würde, in ein anderes Skript. Dann für schwere Verknüpfungen können Sie angeben, eine hohe Anzahl von Reduktionen. Ausführen, alle diese Skripte in einem gehen, können Sie
hive -f
option mit alle Skripts aufgelistet, die in einem shell-Skript wie unten gezeigt:#example of shell script RunMyHQL.sh
$HIVE_HOME/bin/hive -f /somepath/script1.hql
$HIVE_HOME/bin/hive -f /somepath/script2.hql
$HIVE_HOME/bin/hive -f /somepath/script3.hql
Dann weisen Sie die richtigen Berechtigungen zu RunMyHQL.sh Datei
chmod u+x /somepath/RunMyHQL.sh
Dann führen Sie das shell-Skript
./RunMyHQL.sh
Jeder von skript1, skript2, und script3 enthalten kann, die gewünschte Anzahl von Mappern und Reduzierstücke. Wenn diese Anforderungen zum ausführen in bestimmten Abständen, über und über, dann schlage ich vor, Sie implementieren Oozie-workflow.