全部版块 我的主页
论坛 数据科学与人工智能 大数据分析 spark高速集群计算平台
2134 0
2016-04-22

一、配置开发环境


1)要在本地安装好java和scala

由于spark1.6需要scala 2.10.X版本的。推荐 2.10.6,java版本最好是1.8。所以提前我们要需要安装好java和scala 并在环境变量中配置好。

2)下载IDEA 社区版本,选择windows 版本并按照配置

安装完成以后启动IDEA,并进行配置,默认即可,然后点击ok以后,设置ui风格,然后点击next 会出现插件的选择页面,默认不需求修改,点击next,选择安装scala 语言,点击 install 按钮(非常重要,以为要开发spark程序所以必须安装),等安装完成以后点击start启动 IDEA。

3)创建scala项目

点击  create new project ,然后填写project name为“Wordcount” ,选择项目的保存地址project location。然后设置project sdk 即java 的安装目录。点击右侧的new 按钮,选择jdk,然后选择java 的安装路径即可。然后选择scala sdk 。点击右侧的create ,默认出现时2.10.x 版本的scala ,点击ok即可。然后点击finish。

4)设置spark的jar 依赖

点击file->project structure 来设置工程的libraries。核心是添加spark的jar依赖。 选择 Libraries ,点击右侧的加号,选择java,选择spark1.6.0的 spark-1.6.0-bin-hadoop2.6\lib\spark-assembly-1.6.0-hadoop2.6.0.jar 。 点击ok。稍等片刻后然后点击ok (Libraries作用于WordCount),然后点击apply,点击ok。(这一步很重要,如果没有无法编写spark的代码)


二、编写代码


1)在src 下建立spark程序工程包

在src上右击new ->package 填入package 的name为com.dt.spark。

2)创建scala的入口类

在包的名字上右击选择 new ->scala class 。在弹出框中填写Name ,并制定kind 为object ,点击ok。

3)编写local代码

复制代码

在代码去右击 选择点击 run”wordCount” 来运行程序。在生成环境下肯定是写自动化shell 脚本自动提交程序的。


将程序达成jar 包

点击file-> project structure, 在弹出的页面点击 Artifacts,点击右侧的“+”,选择jar –>from modules with dependencies,在弹出的页面中,设置好main class 然后点击ok,在弹出页面修改Name(系统生成的name不规范)、导出位置并删除scala和spark的jar(因为集群环境中已经存在)点击ok 。然后在菜单栏中点击build –> Artifacts ,在弹出按钮中,点击bulid,会自动开始打包。


在Linux中执行wordcount 方法。

将jar 放到linux 系统某个目录中。执行

./spark-submit

--class  com.dt.spark.WordCount_Cluster

--master spark://master:7077

/root/documents/sparkapps/wordcount.jar


注意事项:

为什么不能再ide开发环境中,直接发布spark程序到spark集群中?

1)开发机器的内存和cores的限制,默认情况情况下,spark程序的dirver 在提交spark程序的机器上, 如果在idea中提交程序的话,那idea机器就必须非常强大;

2)Dirver 要指挥workers的运行并频繁的发生通信,如果开发环境和spark集群不在同样一个网络下,就会出现任务丢失,运行缓慢等多种不必要的问题;

3)这是不安全的。



注:本学习笔记来自DT大数据梦工厂

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群