这篇文章主要为大家展示了“windows下spark如何搭建”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“windows下spark如何搭建”这篇文章吧。
系统:windows x64
内存:4G
spark版本:spark-1.6.0-bin-hadoop2.6
JDK版本:jdk1.7.0_031
spark安装步骤:
1.spark安装包,下载地址 https://spark.apache.org/downloads.html
2.解压下载好的安装包,似乎路径最好不要含空格(没有试过含空格会怎么样)
3.环境变量中配置SPARK_HOME,path中指定到SPARK_HOME下的bin目录。
4.现在运行的是本地模式,可以不用安装hadoop,但是windows下需要配置HADOOP_HOME,并在HADOOP_HOME/bin下放一个winutils.exe的文件,具体见https://github.com/spring-projects/spring-hadoop/wiki/Using-a-Windows-client-together-with-a-Linux-cluster
5.打开CMD,试试spark-shell命令能否运行成功。
可能遇到问题1:关于xerces.jar包的问题,可能是jar包冲突导致,最直接解决办法:重新下载一个jdk
可能遇到问题2:spark-shell throws java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable.这个错误,似乎是hive的一个BUG,具体可以见https://issues.apache.org/jira/browse/SPARK-10528
配置Eclipse的java开发环境:
java开发spark程序是依赖一个jar,位于SPARK_HOME/lib/spark-assembly-1.6.0-hadoop2.6.0.jar,直接导入eclipse即可,spark运行只支持1.6以上java环
最后附上一个WordCount程序,是通过hdfs读取和输出的文件
SparkConf conf = new SparkConf().setAppName("WordCount").setMaster("local"); JavaSparkContext context = new JavaSparkContext(conf); JavaRDD<String> textFile = context.textFile("hdfs://192.168.1.201:8020/data/test/sequence/sequence_in/file1.txt"); JavaRDD<String> words = textFile.flatMap(new FlatMapFunction<String, String>() { public Iterable<String> call(String s) {return Arrays.asList(s.split(" "));} }); JavaPairRDD<String, Integer> pairs = words.mapToPair(new PairFunction<String, String, Integer>() { public Tuple2<String, Integer> call(String s) { return new Tuple2<String, Integer>(s, 1); } }); JavaPairRDD<String, Integer> counts = pairs.reduceByKey(new Function2<Integer, Integer, Integer>() { public Integer call(Integer a, Integer b) { return a + b; } }); counts.saveAsTextFile("hdfs://192.168.1.201:8020/data/test/sequence/sequence_out/");
以上是“windows下spark如何搭建”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。