2016-04-09 26 views
0

Ich bin so verwirrt wie UDFS zu verwenden.Ist es möglich, unten Bash-Skript-Funktionalität mit UDFs zu ersetzen?Wie schreibe ich Hive UDFs

#!/bin/bash 

src_count_q="use db;select count(*) from config_table where table_nm="test_source";" 
src_count=$(hive -e $src_count_q) 

trg_count_q="use db;select count(*) from config_table where table_nm="test_target";" 
trg_count=$(hive -e $trg_count_q) 

if ["$src_count" = "trg_count"]; 
then 
    $(hive -e "use db;select * from test_target;") 
fi 

Bitte helfen Sie !! Ich habe UDFs gesehen, wie man einen String umkehrt oder den Fall ändert. Aber ich bin nicht in der Lage herauszufinden, wie man HIVE UDF für diese Art von bedingten Fällen schreibt, in denen wir das Abfrageergebnis wiederverwenden.

Gibt es einen anderen besseren Weg, um diese Art von Abfrage fließt?

Antwort

0

Laut mir können Sie HIVE UDFs verwenden, um einige SQL-Funktion in Hive zu aktivieren, aber Sie können diese nicht verwenden, um PL-SQL-ähnliche Dinge zu setzen. Also für Ihre Frage können Sie Spark-SQL verwenden ist ein besserer Weg, den ich benutzt habe.

Verwandte Themen