Spark1.0.0 开发环境高速搭建

Spark1.0.0 开发环境高速搭建

大家好,又见面了,我是全栈君。

      在本系列博客中。为了解析一些概念、解析一些架构、代码測试。搭建了一个实验平台。例如以下图所看到的:
Spark1.0.0 开发环境高速搭建

 

      本实验平台是在一台物理机上搭建的。物理机的配置是16G内存,4核8线程CPU。

平台的环境配置例如以下:

 机器名  配置  角色  软件安装
 hadoop1  2G内存。双核  hadoop:NN/DN Spark:Master/worker  /app/hadoop/hadoop220

/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21
 hadoop2  2G内存。双核  hadoop:DN Spark:worker  /app/hadoop/hadoop220

/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21
 hadoop3  2G内存。双核  hadoop:DN Spark:worker  /app/hadoop/hadoop220

/app/hadoop/spark100
/app/scala2104
/usr/java/jdk1.7.0_21
 wyy  16G内存,四核  client  /app/hadoop/hadoop220
以上hadoop和spark安装文件夹的用户属性都是hadoop(组别为hadoop)。其它的安装文件夹的用户属性是root:root。

      实验平台搭建顺序
1:虚拟集群的搭建
A:hadoop2.2.0集群搭建
或者參看视频
http://pan.baidu.com/s/1qWqFY4c 提取password:xv4i
B:Spark1.0.0 Standalone集群搭建

2:开发端的搭建
      client採用的Ubuntu操作系统。而Spark虚拟集群採用的是CentOS。默认的java安装文件夹两个操作系统是不一样的,所以在Ubuntu下安装java的时候特意将java的安装路径改成和CentOS一样。不然的话,每次scp了虚拟集群的配置文件之后,要改动hadoop-env.sh中的java配置。
      clienthadoop2.2.0和Spark1.0.0是直接从虚拟集群中scp出来的。放置在同样的文件夹下,拥有同样的用户属性。
      开发用的IDE採用IntelliJ IDEA。项目的搭建參见博客
使用IntelliJ IDEA开发Spark1.0.0应用程序。

      应用程序的部署和调试參见博客
应用程序部署工具spark-submit 。

3:实验数据来源
      实验用的数据来源于搜狗实验室下载地址为:
http://download.labs.sogou.com/resources.html?v=1
  • 互联网语料库(SogouT)
  • 网页搜索结果评价(SogouE)
  • 链接关系库(SogouT-Link)
  • SogouRank库(SogouT-Rank)
  • 用户查询日志(SogouQ)
  • 互联网词库(SogouW)

4:伪分布式实验平台搭建
      上面的实验平台是将hadoop集群、Spark集群和开发环境分离,更接近生产系统;但非常多朋友的物理机配置可能偏低,那样的话能够採用伪分布式部署。但伪分布式会有一些缺陷:
  • spark的数据本地性不易測试
  • 对于并行性不易理解
  • job调度不易理解
      至于伪分布式的部署非常easy,步骤和虚拟集群搭建差点儿相同,仅仅要改动两个地方:
  • ssh无password登陆仅仅须要ssh一下本机
  • hadoop和spark的配置文件salves改动成本机机器名

5:调试工具
  • 日志配置(尚未撰写博客。近期写完补上链接)
  • history server配置
  • job server配置(尚未撰写博客。近期写完补上链接)



版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115373.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Windows安装git客户端[通俗易懂]

    Windows安装git客户端[通俗易懂]1、客户端安装工具如下Git-2.12.2.2-64-bit.exe下载地址:https://gitforwindows.org/,界面如下TortoiseGit-2.4.0.2-64bit.msi下载地址:https://tortoisegit.org/,界面如下Git-2.12.2.2-64-bit.exe:是需要安装的git真正工具TortoiseGit-2.4.0.2-64bit.msi:…

    2022年9月7日
  • PyTorch碎片:PyToch和Torchvision对应版本「建议收藏」

    PyTorch碎片:PyToch和Torchvision对应版本「建议收藏」前言错误分析:安装pytorch或torchvision时,无法找到对应版本cuda可以找到,但是无法转为.cuda()以上两种或类似错误,一般由两个原因可供分析:cuda版本不合适,重新安装cuda和cudnnpytorch和torchvision版本没对应上pytorch和torchvision版本对应关系pytorchtorchvisionpythoncuda1.5.10.6.1>=3.69.2,10.1,10.21.5.0

    2022年6月24日
  • Windows程序设计:MFC 、Winform 和 WPF 比较[通俗易懂]

    MFC生成本机代码,自然是很快,可是消息循环减缓了界面显示速度。WinForm封装了win32的api,多次进行P/invoke操作(大部分使用p/invoke操作封装),速度慢。WPF是一种新的模型,不再使用win32模型,自己新建模型,使用dx作为新的显示技术,直接访问驱动程序,加快了运行速度,可是,这种模型,需要支持dx9的显卡,硬件要求高(你还能找到现代机器不支持dx9的吗?)…

    2022年4月15日
  • php数组转换对象方法[通俗易懂]

    php数组转换对象方法[通俗易懂]php虽然不能像js那样直接newObject,但php支持匿名类我们直接新建匿名类进行转换就好了 /***数组转对象*@paramArray$array*@authorQuan*@returnObject*/protectedfunctionarrayTransitionObject(Arr…

    2022年9月11日
  • Windows通过FindWindow控制其他程序的窗口

    Windows通过FindWindow控制其他程序的窗口如上代码所示通过调用windows的系统函数FindWindow

    2022年8月13日
  • hashmap遍历的几种方法_图的两种遍历

    hashmap遍历的几种方法_图的两种遍历方法1:使用For-Each迭代entries这是最常见的方法,并在大多数情况下更可取的。当你在循环中需要使用Map的键和值时,就可以使用这个方法Mapmap=newHashMap();for(Map.Entryentry:map.entrySet()){ System.out.println(“key=”+entry.getKey()+”,valu

    2022年9月10日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号