zoukankan      html  css  js  c++  java
  • WordCount实例

    1.构建独立应用,采用Maven搭建Spark应用程序
      a.创建Scala工程(略)
      b.加载spark-core_2.11依赖库:
        <dependency>
        <groupId>org.apache.spark</groupId>
        <artifactId>spark-core_2.11</artifactId>
        <version>2.1.2</version>
        </dependency>
        注意:spark-core_{版本号},版本号应为scala的对应版本。
      c.编写spark Driver端程序
        1).创建SparkConf对象,并指定集群模式和AppName;
        2).创建SparkContext对象,生成sc
        3).创建RDD
        4).针对业务需求,编写相应的RDD操作
    2.WordCount案例
      object WordCount {
        def main(args: Array[String]): Unit = {
          //构建Spark的conf对象,并通过setMaster方法设置集群模式运行的方式{“本地”},通过setAppName方法指定应用名字
          val conf = new SparkConf().setMaster("local").setAppName("wordcount")
          val sc = new SparkContext(conf);
          val rdd = sc.textFile("file:///D:/测试数据/spark_wordcount.txt")
          // val rdd1 = rdd.flatMap(x=> x.split(" "))
          // val rdd2 = rdd1.map(x=>(x,1))
          // val rdd3 = rdd2.reduceByKey((x,y)=>x+y)
          // rdd3.saveAsTextFile("file:///D:/测试数据/spark_wordcount_res")
          rdd.flatMap(x=>x.split(" ")).map((_,1)).reduceByKey(_+_).saveAsTextFile("file:///D:/测试数据/spark_wordcount_res0")
        }

      }

  • 相关阅读:
    001.CDN概述
    006.Ceph对象存储基础使用
    005.Ceph文件系统基础使用
    002.Oracle安装部署-ASM
    001.Oracle安装部署-本地文件系统
    004.NTP多层级架设
    004.MySQL双主+Keepalived高可用
    003.MMM双主-双从读写分离部署
    001.Amoeba读写分离部署
    003.MySQL高可用主从复制新增slave
  • 原文地址:https://www.cnblogs.com/lyr999736/p/9550336.html
Copyright © 2011-2022 走看看