大数据实战技术之开篇-学习实践环境搭建

        大家都知道现在的大数据如火如荼,如果你还在由于是否进入大数据的行业,那么你就out了。现在大数据进入到了各行各业,各种大数据创业公司也是层出不穷,对于大数据的技术人才需求很是旺盛。不过学习大数据技术其实还是有一定门槛的,首先必须有良好的计算机和编程基础,然后还有数据库或者数据仓库相关的技术,不一定需要很深入,但是需要理解。既然号称大数据,那么“大”就是最大的特征,随着社会的发展和各行各业都开始注重数据带来的价值,大数据只会越来越大,但是同时又要求我们处理的时间越来越短。所以只有通过技术优化,架构优化去提示数据处理速度。如果你是大数据技术的初学者,这一篇文章应该适合你,不过这里我更强调的实战,应该说是怎么更好的实战。至于理论只是,在网上一查询那简直多如牛毛,虽然有很多都是重复的内容,但是满足初学者了解和学习的理论知识完全足够。但是真正的大数据实践文章还是比较偏少,原因主要是大多数没有真实的实战场景,很多有实战场景的人可能不愿意写公开的技术文章,或者本身项目是保密的,所以不敢轻易的写,怕无意的泄露了公司机密,那就只有over了。当然网上也有很多大数据开源系统的代码分析文章,但是对于没有实战经验的人来说,这些源码分析真的没有太大的价值。只有把那些大数据开源系统真正的用熟练以后才去理解背后实现的原理才是最佳的。

        既然是实战肯定少不了搭建实战的环境,不过这一篇文章不是告诉你怎么把hadoop或者spark部署和运行起来,而是告诉你怎么把部署这些系统的环境搭建起来,为以后所有大数据开源系统搭建和使用做好准备。大多数大数据相关的系统都是分布式系统,虽然单机也可以运行起来,但是真正的精髓还是分布式。为了更好的理解分布式运行的过程我们需要搭建分布式的大数据开源系统来进行学习和研究。自己学习和研究我一般会选择最新的代码,不是最新版本,一定是最新的代码,一般就是直接去github上clone下来自己编译打包部署和运行。但是在真实的项目中选择开源系统的版本,通常是选择最新的release版本进行部署和使用,而且一般就是从这个版本建立自己的分支。

        那么怎么搭建大数据技术实战的物理环境呢?首先,你需要有一个比较不错的台式机(笔记本也可以,但是确实会遇到一定的性能问题吧)。我就按照我自己的环境介绍,大家根据需要选择吧。我自己在京东上配置了一台台式机,大概配置是:4c的cpu,8GB的内存和1TB的磁盘。然后我按照的是15.04的ubuntu的桌面版,主要是用于开发。然后我在ubuntu上使用virtualbox安装了三台centos7的虚拟机,如下图所示:

        安装centos都是选择的带有图形界面和开发工具,图形界面主要是有问题可以进入图形界面查看和配置,但是后面都会设置成不启动图形界面,通过命令行工具,如下:

1,命令模式 systemctl set-default multi-user.target

2,图形模式 systemctl set-default graphical.target

        比较重要的是网络的设置,主要满足两方面需要,一个是我可以通过ubuntu的终端登录到centos上去操作(这样就不需要进入centos的窗口进行操作了),另一个就是必须要能够链接到互联网,因为需要下载很多大数据开源系统来部署呀。

网上找到一篇解决这个问题的网络配置,不过首先需要把虚拟机的网络设置成桥接模式,如下图所示:

        然后才启动虚拟机进入centos安装如下文章的介绍进行网络配置:http://blog.csdn.net/ltr15036900300/article/details/48828207

        注意:你不需要同时进行三台虚拟机安装来节约时间,你只需要先完完整整安装好一台,并且把相关环境都配置好验证通过即可。然后通过virtualbox的复制功能就可以很容易把第二台和第三台copy出来,唯一需要改一个地方就是配置的静态ip。

        我安装好以后的网络ip配置是:ubuntu(也是三台centos7虚拟机的宿主机):192.168.0.106

          centos1:192.168.0.107

   centos2:192.168.0.108

   centos3:192.168.0.109

        配置好这些网络以后就可以通过ubuntu的终端进行登录了,并且把三台centos7虚拟机都设置成不启动图形界面(极大的减少资源占用,为我们搭建很多开源的分布式大数据系统腾出资源)。这里在告诉搭建一个ubuntu自带终端的一个小秘密,这样可以不要来回切换三台centos登录终端的窗口,就是ubuntu自带的终端本身支持多标签窗口(通过在终端窗口执行ctrl+shift+t就可以了)。

        ok!这样大数据学习系统环境通过一台物理机就完全搭建好了。一台带图形界面的ubuntu系统,上面可以安装运行eclipse进行代码开发,例如读写hdfs,hbase,hive,spark等。三台centos就是可以部署分布式的hadoop等开源系统了。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沃趣科技

备份重于一切:远离“Gitlab删库事件”,QBackup是你的最佳选择!

作者简介:孙朝阳 沃趣科技高级产品经理。 案发现场: Gitlab删库事件回顾 Gitlab是大家很熟悉的开源Git代码托管工具,国内公司大多使用社区版自行搭...

3668
来自专栏北京马哥教育

百万级访问量网站的技术准备工作

当今从纯网站技术上来说,因为开源模式的发展,现在建一个小网站已经很简单也很便宜,所以很多人都把创业方向定位在互联网应用。这些人里大多数不是 很懂技术,或者不是那...

4366
来自专栏一名叫大蕉的程序员

分布式架构的套路No.74

今天小蕉跟大伙一起聊聊分布式系统的架构的套路。在开始说套路之前,大家先思考一个问题,为什么要进行分布式架构? 大多数的开发者大多数的系统可能从来没接触过分布式...

2177
来自专栏跨界架构师

分布式系统关注点——「负载均衡」到底该如何实施?

        前面两篇《分布式系统关注点——初识「高可用」》、《分布式系统关注点——仅需这一篇,吃透「负载均衡」妥妥的》看完后,相信大家对实现高可用的思路和负...

1391
来自专栏全华班

一个专注于微信公众号开发的开源框架

以上文章属于此公众号原创所有,如需转载请注明出处。其中图片引用第三方。更多内容请扫描下方二维码关注。

3K4
来自专栏腾讯移动品质中心TMQ的专栏

腾讯TMQ在线沙龙回顾|EP(测试分析+分层自动化测试)实践

答:Hook英文翻译过来就是「钩子」的意思,那我们在什么时候使用这个「钩子」呢?在 Android 操作系统中系统维护着自己的一套事件分发机制。应用程序,包括应...

2012
来自专栏性能与架构

APP性能测试方便了

可能很多人都不是做APP开发的,但这个工具非常有用,可以推荐给做APP的朋友,一定会帮到他 腾讯开源了一个APP调试平台 - GT GT(简称随身调)是可以直...

4116
来自专栏铭毅天下

实战 | Elasticsearch实现类Google高级检索

少废话,说正事。 一、高级检索的功能点 通过高级搜索配置搜索项,能更准确的过滤掉不相干信息,获取最想要的检索信息。 以Google搜索为例(截取核心片段):...

39910
来自专栏张戈的专栏

企业互联网+转型实战:如何进行PB级别数据的架构变迁

随着 DT 时代的来临,数据对于企业经营决策的价值日益凸显,而企业在进行互联网+转型的过程中,如何让数据架构平滑迁移到大数据平台,对于传统业务的转型升级至关重要...

4337
来自专栏互联网技术栈

读《大型网站技术架构》

《大型网站技术架构》是自己接触的第一本架构知识的书籍,还是在14年时买的实体书,前后读了几遍,颇有所得,后来实体书被朋友借走再没归还,也就没再翻过。

1022

扫码关注云+社区

领取腾讯云代金券