Sample Hive Script

-- Register Data Integration Module [DIM] BDQ Hive UDF Jar
ADD JAR <Directory path>/dim.hive.${project.version}.jar;

ADD FILE /home/hduser/script/groovy_hive.txt;
ADD FILE /home/hduser/script/groovy2.txt;

-- Provide alias to UDF class (optional). String in quotes represent
class names needed for this job to run.
CREATE TEMPORARY FUNCTION customscript as 
'com.pb.bdq.dim.process.hive.script.groovy.CustomGroovyScriptExecutionUDF';

set hive.fetch.task.conversion=none;

-- Set default configuration
set hivevar:defaultConfiguration='{"datePattern":"M/d/yy",
"dateTimePattern":"M/d/yy h:mm a","timePattern":"h:mm a"}';

-- Set the header configuration
set hivevar:header='busniessname,recordid';

set hivevar:scriptConfigurations = 
'[{"groovyScriptFile":"/home/hduser/script/groovy_hive.txt",
"inputFields":[{"name":"busniessname","type":"string"},
{"name":"recordid","type":"integer"}],
"outputFields":[{"name":"outtan","type":"double"}]},
{"groovyScriptFile":"/home/hduser/script/groovy2.txt",
"inputFields":[],
"outputFields":[{"name":"outtan2","type":"double"}]}]';

SELECT customscript(${hivevar:scriptConfigurations},"",${hivevar:header},
InputKeyValue, AddressLine1) FROM groovy_tc1;

INSERT OVERWRITE LOCAL DIRECTORY '/home/hduser/script/output' 
row format delimited FIELDS TERMINATED BY ',' lines TERMINATED BY '\n' 
STORED AS TEXTFILE SELECT * FROM (SELECT customscript(${hivevar:scriptConfigurations},
${hivevar:defaultConfiguration},${hivevar:header}, InputKeyValue, AddressLine1) 
as mygp FROM groovy_tc1 ) record;
!q;