本章节主要是介绍了我在学习spark阶段的几个小知识点,分享给大家。
spark在window下运行
- 在window下加载数据整理及打印
- 注意window下运行spark需要下载一个hadoop的winutils.exe文件,并代码引入否则会报io异常,见附件
- 注意切割的时候最好用单引号,如果用双引号则有的字符需要转义例如竖线
|
|
aggregateByKey
- spark RDD算子:aggregateByKey
- 不同于reduceByKey可以返回不同数据结构的RDD
- 例如可以把RDD(String,(Double,String))转化成RDD(String,Map(String:Double))如下:
|
|
aggregateByKey(_),(_,_)
- 以这种方式传入参数,其中第一个是相对空值:int => 0 , map 就是一个空的map。。。
- 第二个传入一个函数里面有两个参数,一个是转换后的类型,一个是转换前的类型,在里面实现类型的转化及相加
- 第三个表示传入两个转换后的参数,使在分布式时不同分区的结果加在一起。
scala编写的spark程序打成jar到linux运行脚本
|
|
- 运行的时候,如果想在外部用textFile 函数读取数据,则需要在前面加上File:/// 否则默认在hdfs中读取。