写hive udf
/**
* 脱敏UDF
*/
public class MD5UDF extends UDF {
public String evaluate(String s)
{
if(s==null)
{
return null;
}else{
return MD5Util.md5(s);
}
}
}
更新cdh impala lib库
for i in 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 30 31 32;do scp /opt/cloudera/parcels/CDH/lib/impala/libhiveudf-1.0-SNAPSHOT.jar root@10.91.4.${i}:/opt/cloudera/parcels/CDH/lib ;done
创建udf函数
for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26;do impala-shell -i 10.91.4.${i} -d car_rec_ev -q "create function if not exists md5(String) returns String location \"/udf/hiveudf-1.0-SNAPSHOT.jar\" SYMBOL=\"com.bdp.MD5UDF"\" ;done
重启cdh impala 组件
刷新impala 元数据库
for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26;do impala-shell -i 10.91.4.${i} -d car_rec_ev -q "INVALIDATE METADATA" ;done