前言

提到大数据,大抵逃不过两个问题,一个是海量的数据该如何存储,另外一个就是那么多数据该如何进行查询计算呢。好在这些问题前人都有了解决方案,而Hadoop就是其中的佼佼者,是目前市面上最流行的一个大数据软件,那它包括哪些内容呢?有什么特点呢?

Hadoop介绍

提到Hadoop,大家的理解是什么?

狭义上理解,Hadoop指的是Apache软件基金会的一款用java语言实现,开源的软件,允许用户使用简单的编程模型实现跨机器集群对海量数据进行分布式计算处理。

广义上,Hadoop指的是围绕Hadoop打造的大数据生态圈,如下图所示, 其中Hadoop是整个生态圈的底座、地基,构建出整个大数据的生态系统。

Hadoop怎么来的?

Hadoop之父:Doug Cutting

《The Google file system》:谷歌分布式文件系统GFS

《MapReduce: Simplified Data Processing on Large Clusters》:谷歌分布式计算框架MapReduce

《Bigtable: A Distributed Storage System for Structured Data》:谷歌结构化数据存储系统

Hadoop三大核心组件

hadoop主要由3大部分组成,俗称Hadoop三剑客:

Hadoop HDFS(分布式文件存储系统)

全称分布式文件系统,本质是一个文件系统,由于数据量很大,总不能将将所有数据存储到一台"电脑"上,哪有那么大磁盘的电脑,那么是不是可以存储到多个不同的"电脑"上,也就是分布式的,把文件存储在不同的节点中,主要是为了解决海量数据存储的问题,它处在生态圈的底层与核心地位。

Hadoop MapReduce(分布式计算框架)

MapReduce作为大数据生态圈第一代分布式计算框架,主要是解决了海量数据的计算问题。

传统的计算方式一般都是将数据从各个节点上加载过来,然后统一计算。这样有个最大的弊端就是计算十分慢,只有一个节点工作。而MapReduce计算框架可以分布在各个节点上并行计算,最后进行归并。

注意,MapReduce只是一个计算框架,或者说编程模型,不是一个软件,无需部署。

Hadoop YARN(集群资源管理和任务调度平台)

YARN是分布式通用的集群资源管理系统和任务调度平台,怎么理解呢?

大数据的很多计算任务,比如MapReduce任务、或者其他的Spark任务等等,他们在计算的时候需要CPU、内存、磁盘等资源,那么多个任务进行运算的时候需要有个管理者去给他们进行资源分配、调度等,这个管理员就是YARN。

Hadoop优点

Hadoop为什么这么流行,这和它的众多优点分不开。

  • 扩容能力

Hadoop是在可用的计算机集群间分配数据并完成计算任务的,这些集群可方便灵活的方式扩展到数以千计的节点。

  • 成本低

Hadoop集群允许通过部署普通廉价的机器组成集群来处理大数据,以至于成本很低。看重的是集群整体能力。

  • 效率高

通过并发数据,Hadoop可以在节点之间动态并行的移动数据,使得速度非常快。

  • 可靠性

能自动维护数据的多份复制,并且在任务失败后能自动地重新部署(redeploy)计算任务。所以Hadoop的按位存储和处理数据的能力值得人们信赖。

  • 开源

由于Hadoop开源,所以整个社区活跃度很高,很多企业都是基于Hadoop构建他们的大数据平台。

Hadoop架构变迁

Hadoop也一直在迭代升级,如今已经到了3.0时代了,那么每个大版本有什么差别呢?

1.Hadoop 1.0时代

Hadoop1.0时代只有HDFS(分布式文件存储)和MapReduce(资源管理和分布式数据处理)两部分。

2.Hadoop 2.0时代

Hadoop2.0时代引入了YARN作为统一的集群资源管理和任务调度平台,它不仅可以提交自己的任务,还可以提交其他的一些任务,是一个很大的变革,也是保证Hadoop的统治地位的一大原因。

3.Hadoop 3.0时代

Hadoop 3.0架构组件和Hadoop 2.0类似, 但是3.0着重于性能优化。

Hadoop初体验

好了,上面基本讲清楚Hadoop的基本内容,那Hadoop究竟长啥样呢?至于安装这边就不介绍了。

Hadoop分布式文件系统

我们可以在web上看到hadoop的文件系统,其实和我们的目录没啥差别。

YARN集群资源管理和任务调度平台

我们也可以在浏览器输入指定的地址看到之前都提交过上面样的计算任务。

至于MapReduce是看不到的,它只是一个计算框架,提交到这个Yarn上。

总结

本文讲解了大数据开发中最流行的软件Hadoop, 它主要分为3部分,管理文件存储的hdfs, 统一管理资源和任务的调度平台Yarn,以及提供了一种计算引擎MapReduce, 基于这三个"磐石",可以构建出整个大数据生态。

如果本文对你有帮助的话,请留下一个赞吧

更多技术干活欢迎关注公众号——JAVA旭阳

当我们说大数据Hadoop,究竟在说什么?的更多相关文章

  1. 王家林的“云计算分布式大数据Hadoop实战高手之路---从零开始”的第十一讲Hadoop图文训练课程:MapReduce的原理机制和流程图剖析

    这一讲我们主要剖析MapReduce的原理机制和流程. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发 ...

  2. 云计算分布式大数据Hadoop实战高手之路第七讲Hadoop图文训练课程:通过HDFS的心跳来测试replication具体的工作机制和流程

    这一讲主要深入使用HDFS命令行工具操作Hadoop分布式集群,主要是通过实验的配置hdfs-site.xml文件的心跳来测试replication具体的工作和流程. 通过HDFS的心跳来测试repl ...

  3. 云计算分布式大数据Hadoop实战高手之路第八讲Hadoop图文训练课程:Hadoop文件系统的操作实战

    本讲通过实验的方式讲解Hadoop文件系统的操作. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发布云 ...

  4. 14周事情总结-机器人-大数据hadoop

    14周随着考试的进行,其他该准备的事情也在并行的处理着,考试内容这里不赘述了 首先说下,关于机器人大赛的事情,受益颇多,机器人的制作需要机械和电控两方面 昨天参与舵机的测试,遇到的问题:舵机不动 排查 ...

  5. 成都大数据Hadoop与Spark技术培训班

    成都大数据Hadoop与Spark技术培训班   中国信息化培训中心特推出了大数据技术架构及应用实战课程培训班,通过专业的大数据Hadoop与Spark技术架构体系与业界真实案例来全面提升大数据工程师 ...

  6. 大数据Hadoop学习之搭建hadoop平台(2.2)

    关于大数据,一看就懂,一懂就懵. 一.概述 本文介绍如何搭建hadoop分布式集群环境,前面文章已经介绍了如何搭建hadoop单机环境和伪分布式环境,如需要,请参看:大数据Hadoop学习之搭建had ...

  7. 大数据hadoop面试题2018年最新版(美团)

    还在用着以前的大数据Hadoop面试题去美团面试吗?互联网发展迅速的今天,如果不及时更新自己的技术库那如何才能在众多的竞争者中脱颖而出呢? 奉行着"吃喝玩乐全都有"和"美 ...

  8. 搭建大数据hadoop完全分布式环境遇到的坑

    搭建大数据hadoop完全分布式环境,遇到很多问题,这里记录一部分,以备以后查看. 1.在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  9. 我搭建大数据Hadoop完全分布式环境遇到的坑---hadoop: command not found

    搭建大数据hadoop环境,遇到很多问题,这里记录一部分,以备以后查看. [遇到问题].在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...

  10. [转帖]大数据hadoop与spark的区别

    大数据hadoop与spark的区别 https://www.cnblogs.com/adnb34g/p/9233906.html Posted on 2018-06-27 14:43 左手中倒影 阅 ...

随机推荐

  1. mysqld_exporter参数信息

    [root@database03 mysqld_exporter]# ./mysqld_exporter --help usage: mysqld_exporter [<flags>] F ...

  2. 持续集成指南:GitLab 的 CI/CD 工具配置与使用

    前言 写代码这项工作,本质就是将工作自动化,减少手工操作提供效率,因为人的本质都是懒狗,程序员也不能例外,为了各种意义的效率提升(懒),我们需要持续集成工具,将代码测试.编译.发布这些重复性很高的工作 ...

  3. TTD 专题 (第一篇):C# 那些短命线程都在干什么?

    一:背景 1.讲故事 在分析的众多dump中,经常会遇到各种奇葩的问题,仅通过dump这种快照形式还是有很多问题搞不定,而通过 perfview 这种粒度又太粗,很难找到问题之所在,真的很头疼,比如本 ...

  4. P1073 [NOIP2009 提高组] 最优贸易 (最短路spfa)

    本题就是在一条1-n的路径上找p,q(先经过p),使得q-p最大. 考虑建正反图,正图上求出d[x],表示1-x的路径经过的节点最小值,反图上则从n开始求出f[x],x-n的最大值,最后枚举断点i,取 ...

  5. 使用docker-compose安装Prometheus

    Prometheus监控 一. 总览 主要组件: Prometheus server: 用于收集和存储时间序列数据 exporter: 客户端生成监控指标 Alertmanager: 处理警报 Gra ...

  6. DDD-领域驱动(四)-使用IMediator 实现领域事件

    领域事件是指:一个领域中出触发的 集成事件是指:多个微服务之前产生的事件 核心对象 IMediator INotification INotificationHandler 引入:IMediator ...

  7. Hbase之理论

    第1章 HBase简介 1.1 什么是HBase HBase的原型是Google的BigTable论文,受到了该论文思想的启发,目前作为Hadoop的子项目来开发维护,用于支持结构化的数据存储. 官方 ...

  8. 某OA系统需要提供一个假条审批的模块,如果员工请假天数小于3天,主任可以审批该请假条;如果员工请假天数大于等于3天,小于10天,经理可以审批;如果员工请假天数大于等于10天,小于30天,总经理可以审批

    某OA系统需要提供一个假条审批的模块,如果员工请假天数小于3天,主任可以审批该请假条:如果员工请假天数大于等于3天,小于10天,经理可以审批:如果员工请假天数大于等于10天,小于30天,总经理可以审批 ...

  9. 如何使用IDEA自动生成类图

    然后再类里边按 Ctrl+Alt+U 然后就会生成类图,这个样子 然后怎样把生成的类图搞出来.当然是使用截图软件啦.微信上的截图软件和qq上的截图软件好像都不在阔以,你一点击截图按钮.生成的类图就会消 ...

  10. Python学习笔记----操作字符串

    1.字符串相加.列表相加.列表和字符串不能混着使用 #序列相加 a="hello" b="python" c=a+b print("字符串相加的结果& ...