Spark UDF用户自定义函数
自定义一个函数实现查询字符串长度。首先创建测试的DataFrame:
val spark = SparkSession.builder().master("local").appName("UDF").getOrCreate()val nameList: List[String] = List[String]("zhangsan", "lisi", "wangwu", "zhaoliu", "tianqi")import spark.implicits._val nameDF: DataFrame = nameList.toDF("name")nameDF.createOrReplaceTempView("students")
注册函数,包含函数名和参数类型:
spark.udf.register("STRLEN",(name:String)=>{name.length})
// spark.udf.register("STRLEN",(name:String,i:Int)=>{// name.length+i
// })
使用自定义函数:
spark.sql("select name ,STRLEN(name) as length from students order by length desc").show(100)
// spark.sql("select name ,STRLEN(name,10) as length from students order by length desc").show(100)
Spark UDF用户自定义函数相关推荐
- sql server 2008学习11 UDF用户自定义函数
用户自定义函数 和存储过程是类似的, 是一组 有序的t-sql语句,udf被 预先优化和编译,并且可以作为一个单元来进行调用. 使用存储过程 时 可传入参数,传出参数.可以返回值,不过该值用于指示成 ...
- hive创建java函数_spark通过java的api创建hive的UDF用户自定义函数
public class UDF { public static void main(String[] args) { SparkConf conf = new SparkConf().setMast ...
- Hive UDF 用户自定义函数-手机号掩盖(脱敏)
需求分析 能够对输入数据进行非空判断.手机号位数判断 能够实现校验手机号格式,把满足规则的进行****处理 对于不符合手机号规则的数据直接返回,不处理 Maven必须配置 <dependenci ...
- Spark _27_自定义函数UDF和UDAF
UDF:用户自定义函数. 可以自定义类实现UDFX接口. javaAPI: package com.udf;import javafx.scene.chart.PieChart; import org ...
- Hive中的用户自定义函数UDF
Hive中的自定义函数允许用户扩展HiveQL,是一个非常强大的功能.Hive中具有多种类型的用户自定义函数.show functions命令可以列举出当前Hive会话中的所加载进来的函数,包括内置的 ...
- 【大数据开发】SparkSQL——Spark对接Hive、Row类、SparkSQL函数、UDF函数(用户自定义函数)、UDAF函数、性能调优、SparkSQL解决数据倾斜
文章目录 一.Spark对接Hive准备工作 1.1 集群文件下载 1.2 导入依赖 1.3 打开集群metastore服务 二.Spark对接Hive 2.1 查询Hive 2.2 读取MySQL中 ...
- Spark 2.2.1 SQL UDAF用户自定义函数案例
Spark 2.2.1 SQL UDAF用户自定义函数案例 UDAF:User Defined Aggregation Function,用户自定义的聚合函数,函数本身作用于数据集合,能够在聚合操作的 ...
- Spark UDAF用户自定义聚合函数
文章目录 处理流程 弱类型 强类型 UDAF的特点就是:N:1,目的就是为了做聚合(group by) 处理流程 首先准备好数据源: 这里我们人为的将其分为2个分区: 按照group by字段进行分组 ...
- Hive 之 用户自定义函数 UDF UDAF UDTF
一 什么是UDF UDF是UserDefined Function 用户自定义函数的缩写.Hive中除了原生提供的一些函数之外,如果还不能满足我们当前需求,我们可以自定义函数. 除了UDF 之外,我们 ...
最新文章
- python对XML的解析
- Unix整理笔记——起步——里程碑M2
- python函数名的运用,闭包,迭代器
- 风云获微软2010年MVP和MVP奖杯与奖牌
- 基于JAVA+SpringMVC+Mybatis+MYSQL的房屋租赁系统
- ASP.NET之Ajax系列(三)
- shell建设告警系统
- C++版 - 剑指offer 面试题23:从上往下打印二叉树(二叉树的层次遍历BFS) 题解
- python2.7+pyqt4安装
- Java JDK8下载 (jdk-8u251-windows-x64和jdk-8u271-linux-x64.tar)
- 代理模式---论坛权限控制代理
- Visual Studio 各版本下载
- 初谈“信息安全审计”
- 台积电创始人张忠谋:英特尔不会重回巅峰;马斯克加入“催生”大军;2021国民年度十大流行语 | EA周报...
- 使用<style>标签为元素定义CSS样式
- 【http-flv】zlmedia http 客户端拉取 http-flv 流程
- 关于servlet和jsp的学习总结二(详细)
- 迈阿密牛津计算机专业,迈阿密大学牛津分校计算机科学
- 打开软件显示乱码的解决方法
- 在Linux上配置DRBD部署
热门文章
- Spring boot返回JSON类型响应及Content-Type设置
- 使用 Caddy 自动化发布 Web 应用
- Webpack 4 api 了解与使用
- iPhoneX-关于底部的那个一个横条的问题
- C9---include,编译
- 一个好的网站,应该用什么样的空间or服务器?建站基础知识普及
- 【转】Android菜单详解——理解android中的Menu--不错
- 分享一个java对xml,excel,jdbc.properties,读写文件,读写图片等实现(1)
- 滑动换屏——Fragment
- .17-浅析webpack源码之compile流程-入口函数run