经过多年的发展,Hadoop生态系统不断完善和成熟,目前已经包括了多个子项目,除了核心的HDFS和MapReduce以外,Hadoop生态系统还包括要ZoopKer、HBase、Hive、Pig、Mahout、Sqoop、Flume、Ambari等功能组件。

HDFS

Hadoop分布式文件系统是Hadoop项目的两大核心之一,是针对谷歌文件系统(GoogleFileSystem,GFS)的开源实现。HDFS具有处理超大数据、流式处理、可以运行在廉价商用服务器上等优点。HDFS在设计之初就是要运行在廉价的大型服务器集群上,因此在设计上就把硬件故障作为一种常态来考虑,可以保证在部分硬件发生故障的情况下仍然能够保证文件系统的整体可用性和可靠性。

HDFS放宽了一部分POSIX约束,从而实现以流的形式访问文件系统中的数据。HDFS在访问应用程序数据时,可以具有很高的吞吐率,因此对于超大数据集的应用程序而言,选择HDFS作为底层数据存储是较好的选择。

HBase

HBase是一个提供高可靠性、高性能、可伸缩、实时读写、分布式的列式数据库,一般采用HDFS作为其底层数据存储。HBase是针对谷歌BigTable的开源实现,二者都采用了相同的数据模型,具有强大的非结构化数据存储能力。HBase与传统关系数据库的一个重要区别是,前者釆用基于列的存储,而后者采用基于行的存储。HBase具有良好的横向扩展能力,可以通过不断增加廉价的商用服务器来增加存储能力。

MapReduce

HadoopMapReduce是针对谷歌MapReduce的开源实现。MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算,它将复杂的、运行于大规模集群上的并行计算过程高度地抽象到了两个函数一一Map和Reduce上,并且允许用户在不了解分布式系统底层细节的情况下开发并行应用程序,并将其运行于廉价计算机集群上,完成海量数据的处理。通俗地说MapReduce的核心思想就是“分而治之”。

Hive

Hive是—个基于Hadoop的数据仓库工具,可以用于对Hadoop文件中的数据集进行数据整理、特殊查询和分析存储。Hive的学习门槛比较低,因为它提供了类似于关系数据库SQL语言的查询语言——HiveQL,可以通过HiveQL语句快速实现简单的MapReduce统计,Hive自身可以将HiveQL语句转换为MapReduce任务进行运行,而不必开发专门的MapReduce应用,因而十分适合数据仓库的统计分析。

Pig

Pig是一种数据流语言和运行环境,适合于使用HadooP和MapReduce平台来查询大型半结构化数据集。虽然MapReduce应用程序的编写不是十分复杂,但毕竟也是需要一定的开发经验的。Pig的出现大大简化了Hadoop常见的工作任务,它在MapReduce的基础上创建了更简单的过程语言抽象,为Hadoop应用程序提供了一种更加接近结构化査询语言的接口。

Mahout

Mahout是Apache软件基金会旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序:Mahout包含许多实现,包括聚类、分类、推荐过滤、频繁子项挖掘。此外,通过使用ApacheHadoop库,Mahout可以有效地扩展到云中

Zookeeper

Zookeeper是针对谷歌Chubby的一个开源实现,是高效和可靠的协同工作系统,提供分布式锁之类的基本服务,用于构建分布式应用,减轻分布式应用程序所承担的协调任务。

Flume

Flume是Cloudera提供的一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输的系统。Flume支持在日志系统中定制各类数据发送方,用于数据收集;同时,Flume提供对数据进行简单处理并写到各种数据接受方的能力。

Sqoop

Sqoop是SQL-to-Hadoop的缩写,主要用来在Hadoop和关系数据库之间交换数据的互操作性。通过Sqoop可以方便地将数据从MySQL、Oracle.PostgreSQL等关系数据库中导人Hadoop(可以导人HDFS、HBase或Hive),或者将数据从Hadoop导出到关系数据库,使得传统关系数据库和Hadoop之间的数据迁移变得非常方便。Sqoop主要通过JDBC(JavaDataBaseConnectivity湘关系数据库进行交互,理论上,支持JDBC的关系数据库都可以使Sqoop和Hadoop进行数据交互。Sqoop是专门为大数据集设计的,支持增量更新,可以将新记录添加到最近一次导出的数据源上,或者指定上次修改的时间戳。

Ambari

ApacheAmbari是一种基于Web的工具,支持ApacheHadoop集群的安装、部署、配置和管理。Ambari目前已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、HBase、Zookeeper、Sqoop等。

人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,多智时代专注于人工智能和大数据的入门和科谱,在此为你推荐几篇优质好文:
Hadoop、Spark和Storm三者技术相对比,有什么关系?
http://www.duozhishidai.com/article-15089-1.html
hadoop是什么,主要有哪些不同版本?
http://www.duozhishidai.com/article-12346-1.html
Spark 和 Hadoop之间,主要有什么联系
http://www.duozhishidai.com/article-9781-1.html


多智时代-人工智能和大数据学习入门网站|人工智能、大数据、物联网、云计算的学习交流网站

Hadoop生态系统功能组件,主要包括哪些?相关推荐

  1. HBase与Hadoop生态其他组件的联系

    1.1 定义 HBase是一种分布式.可扩展.支持海量数据存储的NoSQL数据库. 分布式体现:底层存储在HDFS:集群中的Regionserver服务器也是分布式运行.可扩展体现:在建表的时候无需指 ...

  2. Hadoop生态组件图

    总所周知,Hadoop生态体系非常庞大,里面涵盖了各种大数据组件.随着技术的不断演讲,有点组件已经逐渐退出了历史舞台,比如当前很少使用的组件storm.Tez.Presto等.因此,首先总结hadoo ...

  3. Hadoop 生态系列之 1.0 和 2.0 架构

    自学大数据有一段时间了,找工作历时一周,找到一家大厂,下周入职,薪资待遇还不错,公司的业务背景自己也很喜欢.趁着还没有入职,给大家争取先把 Hadoop 系列的文章总结完毕,可以当做科普文,也可以当做 ...

  4. 大数据之Hadoop生态系统概述

    一.什么是大数据         首先,我们来了解一下,什么是大数据?大数据(BigData)是指无法在一定时间内用常规软件工具进行捕捉.管理和处理的数据集合,是需要新处理模式才能具有更强的决策力.洞 ...

  5. Hadoop生态之Mapreduce

    今天给大家带来的是Hadoop生态中的Mapreduce,看到这里诸佬们可能就有疑惑了呢,啥是Mapreduce?小小的脑袋大大的疑惑. 在上篇博客中博主使用了王者来举例子,如果把Hadoop当作王者 ...

  6. 【大数据笔记】hadoop基础——各组件介绍

    目录 故事背景 Hadoop 与大数据之间到底是什么关系? 1.数据存储:HDFS,一个分布式文件系统 2. 数据分析:MapReduce 计算引擎 HDFS(Hadoop 分布式文件系统) MapR ...

  7. Python + 大数据-Hadoop生态-Linux(一)-环境搭建和Vi

    Python + 大数据-Hadoop生态-Linux(一)-环境搭建和Vi 今日课程学习目标 1.了解Linux操作系统发展介绍.安装配置 2.掌握SSH原理机制.Linux文件上传下载 3.掌握L ...

  8. 【知识梳理】白话一下大数据治理、Hadoop生态的事情,给只想浅了解的同学参考下

    声明 本文仅整理给需要了解的同学,从业人士想要的更多细节,统统没有: 本文以常聊的HADOOP生态纯白话为主,就不扯Postgre.Oracl这些了: 内容整理出视频教程和社区,如有手误,烦请指正哦: ...

  9. 爱奇艺在Hadoop生态中大数据平台实践

    在4月10日下午举行的<Hadoop技术实战和应用>专场演讲中,来自爱奇艺技术产品中心的专家孙琦老师为我们分享了关于<爱奇艺在Hadoop生态中大数据平台架构与实践>的相关话题 ...

最新文章

  1. AI模糊测试:下一个重大网络安全威胁
  2. UIScrollView用法
  3. 【深度学习笔记】Precision、Recall
  4. swap的实现(没有中间变量)
  5. python3 console input_Python console.colorize方法代码示例
  6. 对象池commons-pool
  7. Oracle常见操作汇总(转)
  8. Sublime Text怎么快速建立一个html5页面模板
  9. mysql中常见错误代码汇总
  10. @Service注解的作用
  11. 2021年Q2小米手机销量超苹果跻身全球第二 雷军:新的里程碑
  12. UML的类图中各箭头的含义
  13. paip.项目开发效率提升之思索
  14. 用java求解八枚银币问题_算法笔记_004:8枚硬币问题【减治法】
  15. C/C++ 高质量编程--内存,二重指针,指针的高级使用解析 3
  16. iOS开发中对音效和音乐播放的简单实现
  17. 不懂就问,苹果电脑格式化了能恢复数据吗?
  18. 如何在线打开Xmind文件 — 百度脑图在线工具
  19. html 地址 点击召唤高德,HTML5创建高德地图
  20. 嵌入式设备的通讯--秉火STM32学习笔记

热门文章

  1. linux ping结果中mdev,ping之mdev值
  2. 吃饭的时候吃饭,睡觉的时候睡觉。 (转)
  3. 蚂蚁金服首席架构师:区块链技术如何促进数字普惠金融
  4. angularjs2大漠穷秋视频笔记整理
  5. 剑指Offer——滴滴笔试题+知识点总结
  6. 【Python】Windows微信清理工具
  7. ARCGIS 与SQL的衔接
  8. 深扒金山云招股书:拆分出来的子公司,能否走出金山系“舒适圈”?
  9. Reggie外卖项目 —— 开发环境搭建
  10. 计算机二级考试场次是随机的,计算机二级考试知多少