【Spark-SQL学习之三】 UDF、UDAF、开窗函数
时间:2019-04-16 16:22:35
收藏:0
阅读:199
环境
虚拟机:VMware 10
Linux版本:CentOS-6.5-x86_64
客户端:Xshell4
FTP:Xftp4
jdk1.8
scala-2.10.4(依赖jdk1.8)
spark-1.6
一、UDF:用户自定义函数。
可以自定义类实现UDFX接口
示例代码:
Java:
Scala:
二、UDAF:用户自定义聚合函数。
实现UDAF函数如果要自定义类要继承UserDefinedAggregateFunction类
示例代码:
Java:
Scala:
三、开窗函数
开窗函数格式:
row_number() over (partitin by XXX order by XXX)
注意:
row_number() 开窗函数是按照某个字段分组,然后取另一字段的前几个的值,相当于分组取topN;
如果SQL语句里面使用到了开窗函数,那么这个SQL语句必须使用HiveContext来执行,HiveContext默认情况下在本地无法创建。
示例代码:
Java:
Scala:
参考:
Spark
原文:https://www.cnblogs.com/cac2020/p/10717909.html
评论(0)