4.RDD操作

一、 RDD创建

  1. 从本地文件系统中加载数据创建RDD
    1.  

       

       

       

       

       

       

       

  2. 从HDFS加载数据创建RDD
    1. 启动hdfs

       

       

    2. 上传/查看文件

       

       

  3. 通过并行集合(列表)创建RDD
    输入列表
    字符串
    numpy生成数组

二、 RDD操作

转换操作

    1. 转换操作

      1. filter(func)
        显式定义函数
        lambda函数

        1.  

           

      2. map(func)
        显式定义函数
        lambda函数
        1. 字符串分词
          1.  

             

        2. 数字加100
        3. 字符串加固定前缀
          1.  

             

      3. flatMap(func)
        1. 分词

           

           

        2. 单词映射成键值对
          1.  

             

             

             

      4. reduceByKey()
        1. 统计词频,累加
          1.  

             


             

             

        2. 乘法规则
          1.  

             


             

             

      5.  groupByKey()
        1. 单词分组
        2. 查看分组的内容
        3. 分组之后做累加 map
          1.  

             

      6. sortByKey()
        1. 词频统计按单词排序
          1.  

             

      7. sortBy()
        1. 词频统计按词频排序

       

      行动操作

      1. foreach(print)
        foreach(lambda a:print(a.upper())
      2. collect()
      3. count()
      4. take(n)
        1.  

           

      5. reduce() 
        数值型的rdd元素做累加
        与reduceByKey区别
        1. reduce:将RDD中元素前两个传给输入函数,产生一个新的return值,新产生的return值与RDD中下一个元素(第三个元素)组成两个元素,再被传给输入函数,直到最后只有一个值为止。

          redeceByKey:对元素为KV对的RDD中Key相同的元素的Value进行binary_function的reduce操作,因此,Key相同的多个元素的值被reduce为一个值,然后与原RDD中的Key组成一个新的KV对。

posted @   xun_11  阅读(42)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示