初试spark java WordCount
初始环境:OS X 10.10.5
准备:boot2docker
进入boot2docker后安装 docker-spark 地址: https://github.com/sequenceiq/docker-spark 里面有很详细的介绍
我启动这个镜像的命令是
docker run -it -p 8088:8088 -p 8080:8080 -p 9000:9000 -p 50070:50070 -p 8042:8042 -p 7077:7077 -p 4040:4040 -h sandbox sequenceiq/spark bash
还没大整明白,端口映射比较多
然后进入到下面的目录里
cd /usr/local/spark/examples/src/main/java/org/apache/spark/examples/
可以看到经典的JavaWordCount.java 的代码
我们在idea中建立一个JAVA的maven工程,只有一个依赖如下
<dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <version>1.6.0</version> </dependency> </dependencies>
将上面的代码JavaWordCount代码复制出来
打包前有一个地方需要注意下,勾选红框
然后在out目录下把跟module同名的jar文件上传到docker-spark中
准备测试文件:
随便建一个文本文件
然后上传到hdfs中
先创建一个目录
hdfs dfs -mkdir testdata
然后上传测试文件
hdfs dfs -put 1.txt /user/root/testdata
我们使用单机Spark Standalone Mode的方式来运行
进入
/usr/local/spark-1.6.0-bin-hadoop2.6/sbin
启动master
./start-master.sh
启动slave
./start-slave.sh sandbox:7077
准备就绪,进入到上传的jar文件目录下运行
spark-submit --master spark://sandbox:7077 --name WordCountByDH --class com.dh.WordCount --executor-memory 1G --total-executor-cores 2 wc.jar /user/root/testdata/1.txt
这样你就能看到运行的结果了
问题:再idea下运行是遇到下面这个问题,有几个内部类找不到了,还没解决: