spark UDF

标签: UDF spark UserDefinedFunction
1人阅读 评论(0) 收藏 举报
分类:

查看了spark2.2.0的api接口发现到了java语言就变成了undocument,很无奈,经过多次试验实现了通过实现UDF1对Dataset中某一列数据的修改。代码如下

spark.udf().register("convert", new UDF1<String, Integer>() {
            @Override
            public Integer call(String s) throws Exception {
                if(StringUtils.isNotBlank(s)) return getAgeByDateString(s);
                return null;
            }
        }, DataTypes.IntegerType);
        wssj.createOrReplaceTempView("wssj");
        Dataset<Row> wssj1 = spark.sql("SELECT convert(c_csrq) as n_nl FROM wssj");

register参数说明:第一个参数为自定义方法的方法名 

                              第二个参数为自定义UDF1方法的实现逻辑,代码段中getAgeByDateString(s)就是对出生日期的修改逻辑。

                               到三个参数是返回值的数据类型,这个要用到DataTypes类。

最后一句就是对它的使用了。spark提供了多达22个参数的UDF实现类。


查看评论

SparkSQL中UDF和UDAF

UDF: User Defined Function,用户自定义的函数,函数的输入是一条具体的数据记录,实现上讲就是普通的Scala函数; UDAF:User Defined Aggregation...
  • u012297062
  • u012297062
  • 2016-08-17 09:33:23
  • 3983

SparkSQL 实现UDF的两种方式

import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.SQLContext import org....
  • UnionIBM
  • UnionIBM
  • 2016-09-12 20:26:59
  • 2803

Spark编写UDF自定义函数(JAVA)

maven: org.apache.spark spark-core_2.10 1.6.0 org.apache.spark spark-sql_2....
  • ZYJ_2012
  • ZYJ_2012
  • 2017-03-21 13:25:47
  • 2411

hiveudf和sparkudf开发应用和对比

udf:user define function:用户自定义函数 hive中udf的开发和运用非常普遍 hive中的udf都放在-i的初始化文件里面。所以hive的udf弄好了和hive的内置函数...
  • zengxiaosen
  • zengxiaosen
  • 2016-09-23 10:15:35
  • 1645

SparkSQL UDF 两种方式:udf() 和 register()

1)调用sqlContext.udf.register() 此时注册的方法 只能在sql()中可见,对DataFrame API不可见 用法:sqlContext.udf.register("...
  • lotusws
  • lotusws
  • 2016-09-04 16:11:25
  • 3169

Spark SQL UDF使用

spark sql udf编写及使用
  • u014388509
  • u014388509
  • 2014-09-19 18:17:14
  • 13699

SparkSQL使用之如何使用UDF

使用Java开发一个helloworld级别UDF,打包成udf.jar,存放在/home/Hadoop/lib下,代码如下: package com.luogankun.udf; import...
  • vfgbv
  • vfgbv
  • 2016-04-25 14:08:29
  • 3736

详解spark sql用户自定义函数:UDF与UDAF

场景 UDAF = USER DEFINED AGGREGATION FUNCTION11 上一篇文章已经介绍了spark sql的窗口函数,并知道Spark sql提供了丰富的内置函数供猿友...
  • xgjianstart
  • xgjianstart
  • 2017-02-09 20:57:18
  • 6223

如果在SPARK函数中使用UDF或UDAF

Spark目前已经内置的函数参见: Spark 1.5 DataFrame API Highlights: Date/Time/String Handling, Time Intervals...
  • qq_26562641
  • qq_26562641
  • 2016-04-26 15:44:09
  • 1916

sparksql udf自定义函数中参数过多问题的解决

在进行spark sql数据库操作中,常常需要一些spark系统本身不支持的函数,如获取某一列值中的字符串。 如要获取 “aaaakkkkk”中的第4-第8个字符。 针对这种需求,...
  • sparkexpert
  • sparkexpert
  • 2016-10-16 20:23:26
  • 2025
    个人资料
    等级:
    访问量: 1650
    积分: 77
    排名: 155万+
    文章分类