微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

spark总结

算子总结

  1.变换操作,包括过滤,变换,去重,排序,分区操作

    filter过滤操作,无法触发重新分区

    map,flatMap,flatMapValues,mapValues,mapPartitions,mapPartitionsWithIndex, mapPartitionsWithSplit,zip, zipwithIndex, zipwithUniqueId,reduceByKey

      变换操作,认不触发分区,如果希望重新分区可以第二个参数preservesPartitioning传True,map是一对一变换,flatMap是一对多变换

    distinct 去重操作,认不触发分区,如果希望重新分区可以第二个参数preservesPartitioning传True

    sortBy,sortByKey 排序操作,必须变换分区,可以指定变换后的分区数

    glom,coalesce,partitionBy,repartition 分区操作,coalesce重新分区,第二个参数指定是否shuffle,如果不shuffle,只是分区的简单合并。

  2.rdd操作,包括合并,连接,分组,交并补,差集

    join,fullOuterJoin,leftOuterJoin,rightOuterJoin 内连接,外连接 可以通过第二个参数指定分区个数

    groupBy,groupByKey,groupWith 分组操作,可以通过第二个参数指定分区个数,第三个参数指定分区方式

    intersection,subtract,subtractKey,union 交,差,并

  3.操作,包括取数据,计算,和保存

    take,sample,takeSample,top,head,first 读取数据

    reduce,sum,stdev,sumApprox,variance,aggregate,fold,count 计算操作,count统计个数,sum求和,stdev 均值,variance方差 reduce,aggregate,fold都是自定义计算,fold相当于带有初值的reduce,aggregate不仅带初值,且结果和rdd元素类型不一致

    saveAsTextFile,saveAsHadoopFile,saveAsSequenceFile,saveAsNewAPIHadoopFile 保存文件到本地或hadoop-fs中

Python语法拾遗

<style></style>

  >>> 2 if len(list)>1 else 3

  2

  

  python没有三目运算符,以上和三目运算符效果相同

  

  

<style></style>

  >>> list = [1,2,3,4]

  >>> [i*10 for i in list]

  [10, 20, 30, 40]

  集合的map操作

<style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style> <style></style>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐