背景:虽然 Hive 已经提供了很多内存的函数,但还是不能满足用户的需求,因此有提供了自定义函数供用户自己开发函数来满足自己的需求。
要求:用java实现 自定义的UDF函数 该函数用于生成MD5
效果如图:
一、java代码实现+包依赖(文件名和里面的class要一致)
package cn.geek.bigdata.hive; import org.apache.commons.lang.StringUtils; import org.apache.hadoop.hive.ql.exec.UDF; import java.security.MessageDigest; public class MD5Hash extends UDF { public String evaluate(String input) { if (StringUtils.isBlank(input)) { return "input is null"; } String md5_value = null; StringBuffer buffer = new StringBuffer(); try { MessageDigest md = MessageDigest.getInstance("MD5"); byte[] array = md.digest(input.getBytes("UTF8")); /* 方式 1 */ for (byte item : arra