zoukankan      html  css  js  c++  java
  • Spark中Java函数的使用方法笔记

    1: map 函数
    map是对RDD中的每个元素都执行一个指定的函数来产生一个新的RDD。 任何原RDD中的元素在新RDD中都有且只有一个元素与之对应。

    2: mapPartitions函数</p>
    mapPartitions是map的一个变种。map的输入函数是应用于RDD中每个元素,
    而mapPartitions的输入函数是应用于每个分区,也就是把每个分区中的内容作为整体来处理的。

    3: mapValues 函数
    mapValues顾名思义就是输入函数应用于RDD中Kev-Value的Value,原RDD中的Key保持不变,与新的Value一起组成新的RDD中的元素。
    因此,该函数只适用于元素为KV对的RDD。

    4: mapPartitionsWithIndex 函数
    mapPartitionsWithIndex是函数作用同mapPartitions,不过提供了两个参数,第一个参数为分区的索引。

    5: flatMap 函数
    与map类似,区别是原RDD中的元素经map处理后只能生成一个元素,而原RDD中的元素经flatmap处理后可生成多个元素来构建新RDD。
    举例:对原RDD中的每个元素x产生y个元素(从1到y,y为元素x的值)

    6、filter 函数

    filter对每行数据执行过滤操作,返回true则保留,返回false则过滤该行数据

    7、union函数

    union操作对两个RDD数据进行合并。与SQL中的union一样

    RDD如何创建
       首先创建JavaSparkContext对象实例sc

            JavaSparkContext  sc = new JavaSparkContext("local","SparkTest");

        接受2个参数:

          第一个参数表示运行方式(local、yarn-client、yarn-standalone等)

          第二个参数表示应用名字
     
      直接从集合转化 sc.parallelize(List(1,2,3,4,5,6,7,8,9,10))
      从HDFS文件转化 sc.textFile("hdfs://")
      从本地文件转化 sc.textFile("file:/")

    根据文件或者集合生成RDD后,接着就可以通过RDD的Transformation操作来完成对数据的各种转化操作

            常用的map、flatMap、filter操作都是对单元素的操作

      常用的groupByKey、join都是对(key、value)类型元素操作
  • 相关阅读:
    关于音视频同步
    redis JedisConnectionException: Could not get a resource from the pool
    ping指定IP的指定端口号
    如何查看端口号是否被占用
    mongodb增删改查基础语法
    mongodb重置密码
    本地MongoDB服务开启与连接本地以及远程服务器MongoDB服务
    MongoDB服务的安装与删除
    可视化
    Elasticsearch下载安装
  • 原文地址:https://www.cnblogs.com/wrong5566/p/7261981.html
Copyright © 2011-2022 走看看