首页 理论教育 MakeDT函数的应用技巧

MakeDT函数的应用技巧

时间:2023-07-02 理论教育 版权反馈
【摘要】:5)在sqlContext.udf中注册makeDt的自定义函数,makeDt_是偏函数,makeDt函数中传入日期、时间、时区,将三者以空格连接成一个字符串。6)在临时表purchaseTable中执行查询操作,查询金额、日期时间时区,打印出结果。scala>sc.parallelize.toDF().registerTempTablemakeDT函数的功能是:将3个字符串连接起来,以空格隔开。注册名为makeDT的自定义函数,注意makeDT与_之间存在一个空格,这在Scala的语法中被称作偏函数。执行查询操作,将makeDT的结果列重命名为datetime,在Driver上打印结果。

MakeDT函数的应用技巧

函数名称:makeDT。

函数功能:将3个字符串连接起来,以空格隔开。

函数示例:

1)定义Purchase的case class类,其成员变量为顾客ID、购买ID、日期、时间、时区、金额,构建Purchase类型的Seq集合变量pur。

2)导入spark的sqlContext隐式转换类import sqlContext.implicits._,用于将一个RDD隐式转换为一个DataFrame。

3)通过sc的parallelize方法读入pur数据,调用toDF()方法转换成DataFrame,注册成临时表purchaseTable。

4)定义makeDT函数,传入三个参数:日期、时间、时区,将日期、时间、时区三个字符串连接起来,以空格分隔。

5)在sqlContext.udf中注册makeDt的自定义函数,makeDt_是偏函数,makeDt函数中传入日期、时间、时区,将三者以空格连接成一个字符串。

6)在临时表purchaseTable中执行查询操作,查询金额、日期时间时区,打印出结果。

创建case class Purchase。

输入数据。(www.xing528.com)

导入sqlContext.implicits._隐式函数。如果不导入implicits._,调用方法toDF()时会报错。

scala>import sqlContext.implicits._

import sqlContext.implicits._

加载数据,将其注册为表,表名为:purchaseTable。

scala>sc.parallelize(pur).toDF().registerTempTable("purchaseTable")

makeDT函数的功能是:将3个字符串连接起来,以空格隔开。

注册名为makeDT的自定义函数,注意makeDT与_之间存在一个空格,这在Scala的语法中被称作偏函数(Partially Function)。

执行查询操作,将makeDT(date,time,tz)的结果列重命名为datetime,在Driver上打印结果。

执行查询操作,其中unix_timestamp是Spark SQL的内置函数,在Driver上打印结果。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈