(一)创建JAVA 代码--例子

package hiveOpt;

import org.apache.hadoop.hive.ql.exec.UDF;
import org.apache.hadoop.io.Text;

public class splitMax extends UDF {

public static int getMax(String[] arr) {
int max = Integer.valueOf(arr[0]);
for (int i = 1; i < arr.length; i++) {
if (Integer.valueOf(arr[i]) > max) {
max = Integer.valueOf(arr[i]);
}
}
return max;
}

public Text evaluate(String mdimlr)

{
Text result = new Text();
String[] a = mdimlr.split(",");

result.set(String.valueOf(getMax(a)));
return result;

}

}

(二)上传jar到hdfs

hadoop fs -put /data/soft/splitMax.jar /tmp

(三)登录hive命令行加载jar

hive> add jar hdfs:///tmp/splitMax.jar;
hive> create temporary function splitmax as 'hiveOpt.splitMax';
hive> show funcations
hive> select splitmax(id) from wobcongfu;

( 四)测试自定义函数
select phone_num,max(myCol1)
from temp_qiu_test1
LATERAL VIEW explode(split(col1,',')) myTable1 AS myCol1
group by phone_num;

最新文章

  1. Hadoop: Hadoop Cluster配置文件
  2. 表单验证插件 - formValidator
  3. html5遵循的5个设计原则
  4. Varnish安装使用(初学)
  5. node.js在linux下的安装
  6. Megacli查看raid磁盘信息
  7. 细雨学习笔记:Jmeter测试计划最基本的元素
  8. (转)Object-C 中各数据类型转换 NSData转NSString,Byte,UIImage
  9. canvas 渐变
  10. 一键搭键php网站环境的系统
  11. qsort函数辅助函数compare函数的编写
  12. 【树莓派】树莓派下WiFi断线自动重连
  13. 基于webuploader.js的单图片上传封装
  14. Tomcat部署war应用总结
  15. in_flight_pqueue.go
  16. Win7下,nginx默认80端口被System占用,造成nginx启动报错
  17. 【转】一个 Linux 上分析死锁的简单方法
  18. Android-引导用户指纹录入
  19. HDU - 4389 X mod f(x)(数位dp)
  20. reportviewer需要的3个引用

热门文章

  1. eslint 入门项目搭建过程
  2. Node.js Express 的安装和简单使用
  3. Windows Server 2016-图形化备份域控制器
  4. hdu1061(2015-N1):1.快速幂;2.找规律
  5. POJ - 1733 Parity game 种类并查集+离散化
  6. Ansible自动化运维笔记3(playbook)
  7. bash文件的详细解读
  8. swift 学习之自动引用计数
  9. shell 批量创建带随机字符串的html文件
  10. css进行中打点效果