三分钟入门大数据之大数据基本的组件环境是什么?

哈喽,大家好,我是汉斯老师。近几年来,互联网行业由于较高的薪资收入,受到许多人的追捧。很多年轻的学子,或是其他行业的有志青年,都想要投身到这个行业中来。然而一方面受到“互联网寒冬”的影响,最近频频传出各家知名互联网公司裁员缩编的消息;另一方面,大量的人才涌入,又使得互联网产业在职场上呈现出供过于求的特征,并最终导致了职场上的激烈竞争。那么互联网行业未来的潜力在哪里?我们又应该在哪个方向上发力,才能保证自己可以获得一份高薪而稳定的工作?基于多年的互联网行业从业经验,汉斯老师在这里向大家推荐大数据方向,希望通过本人的《三分钟入门大数据》和《十分钟精通大数据》等系列文章,帮助所有有志了解学习大数据的朋友掌握大数据的相关知识,也欢迎所有对互联网行业以及大数据领域感兴趣的朋友前来交流。
 


       

        大数据系统,或者说大数据生态体系的组成,是大部分大数据开发人员必须要了解和掌握的知识。那么最基本的大数据系统都包含什么呢?首先让我们来看一下下面这张非常经典的大数据系统组件图吧。

       以上就是一个基本的大数据系统所包含的组件了。当然,对于一些刚进入这个领域的朋友,可能对这张图的解读不是那么明确,以下我会用对应的一张图和相应的文字来说明各个组件的作用。

HDFS: 用于存放一切信息的分布式的文件系统。大数据系统由于其涉及到的数据量较大所以往往需要仰赖于一个数据仓库系统,将所有的数据能够分门别类地存储起来,而HDFS就是这样一个仓库。需要注意一点,HDFS并不是我们通常实际用来查询或者处理数据的数据仓库组件,其更像是仓库本身,是一个偏硬件,偏系统化的概念,用于将所有的信息都囊括进去。

MapReduce:用于实际进行计算数据的编程模型,其特质强调分布式与并行。可以说,MapReduce是真正实现对大量数据进行操作和处理的工具。其具体的实现和例子,我们会在之后的文章中详细介绍。

ZooKeeper:负责大数据系统中,统一管理调度整个仓库运作的工程班。我们可以想象得到,一个复杂的系统想要能够稳定运作下去,其必须需要一个相应的角色,专职负责统一调度整个系统的资源,发布任务,协调各个组件之间的运行。ZooKeeper就是这样一个角色,可以这样说,ZooKeeper的存在,使得分布式的系统在协调运作上得到的保证。

HBase:存放数据的架子。当我们有了存储和处理数据的仓库以后,我们肯定不能将数据杂乱的堆积到仓库中吧?HBase就是仓库中的架子,我们在拿到数据后,会将数据放到相应的架子中,这样以后当我们需要使用或者处理数据时,只需要去找到相应的架子就好了。所以HBase具备一些数据库的功能,然而这里要强调一下,HBase是一个Nosql的数据库。稍后我们会详细说明,Nosql数据库与常用的数据库之间的区别与联系是什么。

Hive:查找数据的工具。从前面这个定义可以看出来,Hive其实和HBase在功能上有很多相似的地方,它们都可以查找数据,然而Hive本质上只是查找数据的功能,其不能更新数据(但是可以写入)。而HBase中,常用的增删改查都是支持的。

Pig:处理数据的工具。Pig是基于MapReduce的,所以当直接使用MapReduce开发相应的数据处理比较困难的话,Pig就是我们会想要使用的工具了。这里要说一下,在经过多年的发展后,大数据各个组件其实都在扩展其各自功能,目前能够用来简便开发MapReduce的工具中,Pig已经不是首选了,然而在最初建立大数据体系时,Pig是非常重要的一个组成部分。我们稍后也会讲一下,究竟Pig,Hive和Hbase的区别是什么。

Mahout:机器学习的功能组件库。可以这样说,大数据系统想要最大化地利用数据创造价值,往往需要机器学习相关的功能,这个时候,就是我们用到Mahout的时候了。

Flume:收集记录数据操作日志的工具。如此复杂的大数据系统,想要运作起来,肯定需要一个完备可靠的日志系统,用来记录各个组件每时每刻运行的任务,运行状况,使用的资源情况,任务分发的情况等,Flume正是为此而存在的。

Sqoop:输送数据进入仓库的工具。想想看,当我们整个数据系统搭建起来后,我们肯定需要有一个工具,能够把原始的数据,输送到数据系统中吧?Sqoop的工作就是这样的,其可以定时抽取目标数据库中的相应数据,发送到我们的大数据系统中。

Ambari:将上面所有组件打包起来的平台。想想看,上面那么多的组件,如果一个一个都要我们手动去部署安装,甚至要调试和设置,这个效率之低令人不寒而栗。那么当我们清楚了我们会用到的这些组件后,能不能找到一个工具,当我们面对一个全新的环境中,可以把整个大数据系统快速打包部署下去,这正是Ambari平台的价值所在。此外,我们在实际运作的时候,针对维护人员,需要有一个工具能够直观的监控整个大数据系统的运作状况,这也是如Ambari这样的大数据平台的作用之一。

限于篇幅的关系,以上仅仅是最基础,最早期的大数据系统所囊括的组件体系,在接下来的文章中,笔者会逐步向一一详细说明各个组件的作用和原理等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值