hadoop 生态概况
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。

用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

具有可靠、高效、可伸缩的特点。

Hadoop的核心是YARN,HDFS和Mapreduce

下图为hadoop的生态系统:

HDFS(Hadoop分布式文件系统)
源自于Google的GFS论文,发表于2003年10月,HDFS是GFS克隆版。

HDFS是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。

HDFS简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序。

它提供了一次写入多次读取的机制,数据以块的形式,同时分布在集群不同物理机器上。

Mapreduce(分布式计算框架)
源自于google的MapReduce论文,发表于2004年12月,Hadoop MapReduce是google MapReduce 克隆版。

MapReduce是一种分布式计算模型,用以进行大数据量的计算。它屏蔽了分布式计算框架细节,将计算抽象成map和reduce两部分,

其中Map对数据集上的独立元素进行指定的操作,生成键-值对形式中间结果。Reduce则对中间结果中相同“键”的所有“值”进行规约,以得到最终结果。

MapReduce非常适合在大量计算机组成的分布式并行环境里进行数据处理。

JobTracker:Master节点,只有一个,管理所有作业,作业/任务的监控、错误处理等;将任务分解成一系列任务,并分派给TaskTracker。
TaskTracker:Slave节点,运行Map Task和Reduce Task;并与JobTracker交互,汇报任务状态。
Map Task:解析每条数据记录,传递给用户编写的map(),并执行,将输出结果写入本地磁盘(如果为map-only作业,直接写入HDFS)。
Reducer Task:从Map Task的执行结果中,远程读取输入数据,对数据进行排序,将数据按照分组传递给用户编写的reduce函数执行。

Mapreduce处理流程,以wordCount为例:

Yarn(分布式资源管理器)
YARN是下一代MapReduce,即MRv2,是在第一代MapReduce基础上演变而来的,主要是为了解决原始Hadoop扩展性较差,不支持多计算框架而提出的。
Yarn是下一代 Hadoop 计算平台,yarn是一个通用的运行时框架,用户可以编写自己的计算框架,在该运行环境中运行。
用于自己编写的框架作为客户端的一个lib,在运用提交作业时打包即可。该框架为提供了以下几个组件:

资源管理:包括应用程序管理和机器资源管理

资源双层调度

容错性:各个组件均有考虑容错性

扩展性:可扩展到上万个节点

Zookeeper(分布式协作服务)
源自Google的Chubby论文,发表于2006年11月,Zookeeper是Chubby克隆版

解决分布式环境下的数据管理问题:统一命名,状态同步,集群管理,配置同步等。

Hadoop的许多组件依赖于Zookeeper,它运行在计算机集群上面,用于管理Hadoop操作。

HBASE(分布式列存数据库)
源自Google的Bigtable论文,发表于2006年11月,HBase是Google Bigtable克隆版

HBase是一个建立在HDFS之上,面向列的针对结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。

HBase采用了BigTable的数据模型:增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。

HBase提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。

HIVE(数据仓库)
由facebook开源,最初用于解决海量结构化的日志数据统计问题。

Hive定义了一种类似SQL的查询语言(HQL),将SQL转化为MapReduce任务在Hadoop上执行。通常用于离线分析。

HQL用于运行存储在Hadoop上的查询语句,Hive让不熟悉MapReduce开发人员也能编写数据查询语句,然后这些语句被翻译为Hadoop上面的MapReduce任务。

Pig(ad-hoc脚本)
由yahoo!开源,设计动机是提供一种基于MapReduce的ad-hoc(计算在query时发生)数据分析工具

Pig定义了一种数据流语言—Pig Latin,它是MapReduce编程的复杂性的抽象,Pig平台包括运行环境和用于分析Hadoop数据集的脚本语言(Pig Latin)。

其编译器将Pig Latin翻译成MapReduce程序序列将脚本转换为MapReduce任务在Hadoop上执行。通常用于进行离线分析。

Mahout(数据挖掘算法库)
Mahout起源于2008年,最初是Apache Lucent的子项目,它在极短的时间内取得了长足的发展,现在是Apache的顶级项目。

Mahout的主要目标是创建一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。

Mahout现在已经包含了聚类、分类、推荐引擎(协同过滤)和频繁集挖掘等广泛使用的数据挖掘方法。

除了算法,Mahout还包含数据的输入/输出工具、与其他存储系统(如数据库、MongoDB 或Cassandra)集成等数据挖掘支持架构。
--------------------- 
作者:Smile-GQ 
来源:CSDN 
原文:https://blog.csdn.net/weixin_43273168/article/details/90411277 
版权声明:本文为博主原创文章,转载请附上博文链接!

大数据技术hadoop入门级生态圈介绍相关推荐

  1. 尚硅谷大数据技术Hadoop教程-笔记02【Hadoop-入门】

    视频地址:尚硅谷大数据Hadoop教程(Hadoop 3.x安装搭建到集群调优) 尚硅谷大数据技术Hadoop教程-笔记01[大数据概论] 尚硅谷大数据技术Hadoop教程-笔记02[Hadoop-入 ...

  2. 尚硅谷大数据技术Hadoop教程-笔记01【大数据概论】

    视频地址:尚硅谷大数据Hadoop教程(Hadoop 3.x安装搭建到集群调优) 尚硅谷大数据技术Hadoop教程-笔记01[大数据概论] 尚硅谷大数据技术Hadoop教程-笔记02[Hadoop-入 ...

  3. 尚硅谷大数据技术Hadoop教程-笔记03【Hadoop-HDFS】

    视频地址:尚硅谷大数据Hadoop教程(Hadoop 3.x安装搭建到集群调优) 尚硅谷大数据技术Hadoop教程-笔记01[大数据概论] 尚硅谷大数据技术Hadoop教程-笔记02[Hadoop-入 ...

  4. 大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍

    Technorati 标记: hadoop,生态圈,ecosystem,yarn,spark,入门 1. hadoop 生态概况 Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用 ...

  5. 大数据技术Hadoop的介绍

    大数据的基本处理流程与传统数据处理流程并无太大差异,主要区别在于:由于大数据要处理大量.非结构化的数据,所以在各处理环节中都可以采用并行处理.目前,Hadoop.MapReduce和Spark等分布式 ...

  6. 2022年深圳技能大赛-大数据技术应用职业技能竞赛介绍

    01竞赛项目 大数据技术应用 02竞赛标准 参照广东省第二届职业技能大赛大数据技术应用赛项标准,结合新时代行业企业发展情况,适当增加新知识.新技术.新设备.新技能的相关内容,由执委会组织专家制定,具体 ...

  7. 大数据技术---Hadoop

    一.Hadoop简介 Hadoop是apache软件基金会下的开源软件.支持多种编程语言(c,c++,python,java等). Hadoop两大核心:HDFS+MapReduce,海量数据的存储和 ...

  8. 【云计算与大数据技术】云计算概论介绍

    一.什么是云计算 云计算(cloud computing)是基于互联网的相关服务的增加.使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源.云是网络.互联网的一种比喻说法,过去往往 ...

  9. 猿创征文|Hadoop大数据技术

    Hadoop大数据技术 Hadoop背景 Hadoop生态圈 Hadoop模式 HDFS 概述 优点 缺点 基本组成 NameNode Secondary NameNode DataNode YARN ...

最新文章

  1. 远程过程调用RPC简介
  2. 天呐,程序员有女朋友了!
  3. LeetCode Sort List(单链表归并排序)
  4. 基于神经网络模型的文本语义通顺度计算研究-全文复现(还没弄完)
  5. 学习记录—HTML标签
  6. WordPress的.htaccess十个技巧
  7. 仅需1分钟,让你的电脑变无线路由器
  8. 在安卓中对应用进行单元测试
  9. python 迭代器与生成器 详解
  10. 基于Prometheus+Grafana打造企业级Flink监控系统
  11. 深入理解jvm虚拟机一
  12. fckeditor 源代码下载
  13. 手机自带的一些很实用的小程序,您都用过了吗?
  14. java 添加图片到word中,并导出word到前端
  15. 【pd读取csv文件踩坑】读取csv文件时报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb5 in position 0
  16. input只能输入数字0-9(不含小数点)
  17. 机器学习——基础知识
  18. 小知识:随机生成26个字母中(一个或多个)的字母
  19. HyperLedger-fabric V0.6 for CentOS7.2开发环境搭建
  20. 深入浅出ES6(四):模板字符串

热门文章

  1. 09_分类算法--k近邻算法(KNN)、案例、欧氏距离、k-近邻算法API、KNeighborsClassifier、及其里面的案例(网络资料+学习资料整理笔记)
  2. python数据类型详解(转自:http://www.cnblogs.com/linjiqin/p/3608541.html)
  3. Hadoop中通过ToolRunner和Configured实现直接读取命令行动态出入reduce task数量,jar文件等
  4. 表的插入、更新、删除、合并操作_6_通过多表关联插入
  5. BM16 删除有序链表中重复的元素-II
  6. Nginx搭建部署Web服务器并与NFS结合搭建负载均衡服务器
  7. Centos7单用户模式修改root密码
  8. [转]emailjs-smtp-client
  9. Chrome 隐藏 SSL 证书信息 禁止禁用 DRM
  10. rocksdb和leveldb的bloom filter比较