资讯专栏INFORMATION COLUMN

使用Spark分析拉勾网招聘信息(三): BMR 入门

levinit / 2724人阅读

摘要:简述本文意在以最小的篇幅来帮助对大数据和感兴趣的小伙伴能尽快搭建一个可用的开发环境力求言简意赅文章不敢自称的最佳实践但绝对可以帮助初学者迅速入门能够专心于本身的学习和实践不服的童鞋可以先自己折腾下再返回来读这篇文章哈创建实例假定你已经有了一

简述

本文,意在以最小的篇幅,来帮助对大数据和Spark感兴趣的小伙伴,能尽快搭建一个可用的Spark开发环境.力求言简意赅.文章,不敢自称BMR的最佳实践,但绝对可以帮助初学者,迅速入门,能够专心于Spark本身的学习和实践.不服的童鞋,可以先自己折腾下BMR,再返回来读这篇文章O(∩_∩)O哈!

创建 BMR 实例

假定,你已经有了一个经过认证的百度开发者账号,就像系列第一篇文章讲的那样.什么?没有?那基本,没有必要继续往下读了,明天再来吧.没有经过认证的百度开发者账号,应该是没有权限创建 BMR 实例的.

1.登录

网址是 https://login.bce.baidu.com/ 填写账号和密码,大家都懂的.建议收藏下,应为百度开放云,搜索时,很容易被导流到百度云盘上,这是两个不同的东西.

2.充值

在 "管理控制台",个人信息附近分栏下,有个"充值"按钮.至少应该保证账户余额是100元,否则应该是无法成功创建BMR的.

3.创建BMR

点击顶部的产品服务 --> 百度MapReduce --> 创建集群.

在创建BMR界面,"bos://"点击下拉箭头,新创建即可;集群配置--镜像版本,要选择 "BMR 0.2.0(hadoop 2.6",否则无法使用openVPN访问;内置模板,选择 "Spark",其他自己随意写即可.当然,要自己记住密码,等会儿还要用的.

就这样,大概10分钟后,就初始化完成了.在等待的这段时间,建议你去搜搜大数据或者spark相关的讨论,说不定会有额外收获.

使用 openVPN 访问 BMR

假定,你现在已经有一个初始化完成的 BMR 实例.点击实例名称,进入详情页,画风是这样的.

点击"工具下载"中的 openvpn-confi.zip 下载到本地,然后按照教程配置即可,教程参见: (https://cloud.baidu.com/doc/B...

OpenVPN服务仅支持访问镜像类型为Hadoop 2.6(bmr 0.2.0)的集群,也就是说如果你的BMR实例中没有"工具下载"一栏,说明你创建时镜像类型选错了.

配置好openVPN后,就可以通过"节点信息"中,各个节点的内网地址来访问了,主要用到的是MASTER节点.另外,我发现配置好openVPN后,我也可以通过内网地址直接访问我的其他百度云服务了,比如 云服务器,不是十分确定个中缘由,难道都在同一个机房? MASTER 节点,内网地址访问的画风一起感受下:

另外,熟悉服务器基本操作的人,可能会ssh登录Master节点.当然是完全可以的.一个BMR节点,是一个独立的完整的服务器.我甚至给上面配置过node开发环境,不过后来就没折腾了,因为这个处理完数据就释放了,一直开着太费钱.当然,当遇到某些特殊问题的时候,还是需要自己ssh登录去处理的.比如,我的 zeppelin 服务,曾经崩溃过一次,我只能自己ssh上去重启.客服也是可以的,但这点小事都解决不了,岂不是显得我很LOW?!

使用 hue 导入数据到BMR

hue的访问地址为: 内网地址的8888端口,如 http://192.168.0.55:8888,画风是这样的:

用户名和密码是自定义的,密码随意,建议用户名填写 hdfs 否则导入的数据,待会儿无法在zeppelin中使用,这涉及到一个用户组权限的问题.感兴趣的自己研究下,我不细说了.

点击 File Browser --> 上传 --> zip/tgz文件,然后选择你昨天处理好的 职位数据文件即可.没能成功的童鞋,可以直接去文首的github项目中下载:https://github.com/ios122/spark_lagou/raw/master/jobs.zip

数据导入OK了.如果发现发现上传完成后,一直卡在上传表单页不动,直接点叉叉号关闭就好了,它会后台解压的.

使用 zeppelin 读取数据

BMR 的 zeppelin 的服务部署在 8093 端口,如http://192.168.0.55:8093/,这是我打印出所有端口,排查出来的,文档上没有丝毫提及.不清楚文档为啥不提,但 zeppelin 可是最流行的Spark交互式开发工具.第一次访问,会有些慢.应该在初始化某些东西.

Create New Note,然后开始练习吧:

读取并打印结构的脚本:

val job = sqlContext.read.json("jobs")
job.registerTempTable("job")
job.printSchema()

初觉没有什么,但是仔细想下,这可是几百个文件,里面是确实存在异常数据的.当然,真正神奇的地方,是读取之后,可以直接基于此进行各种复杂的聚合运算与分析.这是下一篇的主题了.

注意: 练习完,注意释放 BMR 实例,否则会一直计费的.

附:zeppelin 启动和重启的脚本

我相信,你是有极大可能,把 zeppelin 服务搞挂的,当内存开销过大时

cd /usr/lib/zeppelin-0.5.0-incubating
bin/zeppelin-daemon.sh start
bin/zeppelin-daemon.sh stop

本系列专属github地址:https://github.com/ios122/spark_lagou

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/8214.html

相关文章

  • 使用Spark分析勾网招聘信息(一):准备工作

    摘要:本系列专属地址前言我觉得如果动笔就应该努力地把要说的东西表达清楚今后一段时间尝试下系列博客文章简单说如果心里想表达想分享的就适当规划组织下使其相对自成体系以便于感兴趣但可能刚好某个领域还不是很熟的人也能很好地入手系列文章我会努力避免过于主观 本系列专属github地址:https://github.com/ios122/spark_lagou 前言 我觉得如果动笔,就应该努力地把要说的...

    刘德刚 评论0 收藏0
  • 使用Spark分析勾网招聘信息(二): 获取数据

    摘要:要获取什么样的数据我们要获取的数据是指那些公开的可以轻易地获取地数据如果你有完整的数据集肯定是极好的但一般都很难通过还算正当的方式轻易获取单就本系列文章要研究的实时招聘信息来讲能获取最近一个月的相关信息已是足矣如何获取数据爬虫也是可以的作为 要获取什么样的数据? 我们要获取的数据,是指那些公开的,可以轻易地获取地数据.如果你有完整的数据集,肯定是极好的,但一般都很难通过还算正当的方式轻...

    caiyongji 评论0 收藏0
  • 区块链招聘信息爬取与分析

    摘要:最近在研究区块链,闲来无事抓取了拉勾网上条区块链相关的招聘信息。拉勾网的反爬虫做的还是比较好的,毕竟自己也知道这种做招聘信息聚合的网站很容易被爬,而且比起妹子图这种网站,开发的技术水平应该高不少。 最近在研究区块链,闲来无事抓取了拉勾网上450条区块链相关的招聘信息。过程及结果如下。 拉勾网爬取 首先是从拉勾网爬取数据,用的requests库。拉勾网的反爬虫做的还是比较好的,毕竟自己也...

    kelvinlee 评论0 收藏0
  • 使用php 爬取勾网 的php 招聘信息~

    摘要:拉勾网的爬虫还是有一定的难度的所以我们今天就爬取试一下其实并没有太大的难度只要我们用好分析一下请求就会其实没有什么难度上代码亲测可用拉钩代码 拉勾网的爬虫还是有一定的难度的 所以我们今天就爬取试一下 其实并没有太大的难度 只要我们用好network 分析一下请求 就会其实没有什么难度 上代码 2019-05-22 亲测可用 拉钩代码

    CoderDock 评论0 收藏0
  • 新手向-爬取分析勾网招聘信息

    摘要:爱写作者爱写前言看了很多网站,只发现获取拉勾网招聘信息是只用方式就可以得到,应当是非常简单了。在环境下运行通过数据爬取篇伪造浏览器访问拉勾网打开浏览器,进入拉勾网官网,右键检查,调出开发者模式。 [TOC] 爱写bug(ID:icodebugs)作者:爱写bug 前言: ​ 看了很多网站,只发现获取拉勾网招聘信息是只用post方式就可以得到,应当是非常简单了。推荐刚接触数据分析...

    yimo 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<