从say:
https://github.com/holdenk/fastdataprocessingwithsparkexamples/tree/master/src/main/scala/pandaspark/examples获取wordcount示例.
请按照以下步骤创建胖jar文件:
mkdir example-java-build/; cd example-java-build
mvn archetype:generate \
-DarchetypeGroupId=org.apache.maven.archetypes \
-DgroupId=spark.examples \
-DartifactId=JavaWordCount \
-Dfilter=org.apache.maven.archetypes:maven-archetype-quickstart
cp ../examples/src/main/java/spark/examples/JavaWordCount.java
JavaWordCount/src/main/java/spark/examples/JavaWordCount.java
您添加了相关的spark-core和spark示例依赖项.确保您具有基于您的spark版本的依赖项.我使用spark 1.1.0,因此我有相关的依赖项.
我的pom.xml看起来像这样:
junit
junit
3.8.1
test
org.apache.spark
spark-examples_2.10
1.1.0
org.apache.spark
spark-core_2.10
1.1.0
使用mvn构建jar文件.
cd example-java-build/JavaWordCount
mvn package
这会在目标目录中创建fat jar文件.
将jar文件复制到服务器上的任何位置.
转到火花的bin文件夹. (在我的情况下:/root/spark-1.1.0-bin-hadoop2.4/bin)
提交火花工作:我的工作看起来像这样:
./spark-submit --class "spark.examples.JavaWordCount" --master yarn://myserver1:8032 /root/JavaWordCount-1.0-SNAPSHOT.jar hdfs://myserver1:8020/user/root/hackrfoe.txt
这里–class是:你的应用程序的入口点(例如org.apache.spark.examples.SparkPi)
–master:集群的主URL(例如spark://23.195.26.187:7077)
最后一个参数是您为程序选择的任何文本文件.
输出应该是这样的,给出文本文件中所有单词的字数.
in: 17
sleeping.: 1
sojourns: 1
What: 4
protect: 1
largest: 1
other: 1
public: 1
worst: 1
hackers: 12
detected: 1
from: 4
and,: 1
secretly: 1
breaking: 1
football: 1
answer.: 1
attempting: 2
"hacker: 3
希望这可以帮助!