eclipse上运行spark程序

来源:互联网 发布:印度留学知乎 编辑:程序博客网 时间:2024/06/14 15:32

首先,你得把你要处理的文件上传带HDFS,怎么上传文件网上都有教程,此处不再赘述。

项目结构图


 

源代码

import org.apache.spark.SparkContextimport org.apache.spark.SparkContext._import org.apache.spark.SparkConfobject SimpleApp {  def main(args: Array[String]) {    val logFile = "hdfs://master:9000/user/root/input/file1.txt" // 读取hdfs上的文件    val conf = new SparkConf().setAppName("Simple Application")    val sc = new SparkContext(conf)    val logData = sc.textFile(logFile, 2).cache()    val numAs = logData.filter(line => line.contains("a")).count()    val numBs = logData.filter(line => line.contains("b")).count()    println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))  }}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

错误解决办法

可能大家在运行的时候会报如下错误

A master URL must be set in your configuration


 

这是因为从提示中可以看出找不到程序运行的master,此时需要配置环境变量。

传递给spark的master url可以有如下几种:

    local 本地单线程    local[K] 本地多线程(指定K个内核)    local[*] 本地多线程(指定所有可用内核)    spark://HOST:PORT 连接到指定的 Spark standalone cluster master,需要指定端口。    mesos://HOST:PORT 连接到指定的 Mesos 集群,需要指定端口。    yarn-client客户端模式 连接到 YARN 集群。需要配置 HADOOP_CONF_DIR。    yarn-cluster集群模式 连接到 YARN 集群。需要配置 HADOOP_CONF_DIR。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

不要慌,右键单击项目 Run Configuration进行如下配置 
输入“-Dspark.master=local”即可 
如下图 


 

点击run,运行结果如下图



0 0
原创粉丝点击