spark
master.zZ
这个作者很懒,什么都没留下…
展开
-
spark dataframe构建方式
spark dataframe构建方式 1.从Seq序列转为dataframe,使用toDF方法,需要隐式转换 val df = Seq((1,"brr"),(2,"hrr"),(3,"xxr")).toDF("id","name") df.show() 输出: | id|name| +---+----+ | 1| brr| | 2| hrr| | 3| xxr| +---+----+ 2...原创 2018-12-24 23:35:54 · 457 阅读 · 0 评论 -
spark累加器v2
自定义累加器类步骤:MyAccumulator 1.需继承AccumulatorV2 2.定义成员累加值并初始化 res 3.重写isZero方法 对累加值进行状态检查,系统内部调用 4.重写copy方法 拷贝一个新的AccumulatorV2,系统内部调用 5.重写reset方法 重置AccumulatorV2中的累加值res,系统内部调用 6.重写add方法 实现对res进行累加的逻辑...原创 2019-02-17 23:28:04 · 262 阅读 · 0 评论 -
spark dataframe/dataset解析json字符串的字段
1.使用函数get_json_object逐个取出json当层对象 object testdf { def main(args: Array[String]): Unit = { Logger.getLogger("org.apache.spark").setLevel(Level.ERROR) val spark = SparkSession.builder().master...原创 2019-06-23 11:33:03 · 3638 阅读 · 0 评论 -
SPARK UDF多次执行的问题
SPARK UDF多次执行的问题 通常我们在一个dataframe中调用udf时,我们预期是每一行应用一次udf函数,但实际上这是不能保证每一行应用一次的,因为在一些可能多次访问udf返回值得场景下,spark内部会优先反复调用udf而不是job。 所以我们在设计udf时应该设计为pure function,这样可以保证即使对于同一条数据多次调用udf也不会影响预期结果,否则应该考虑使用map/m...原创 2019-07-22 18:17:21 · 1601 阅读 · 0 评论