1 Hadoop是什么

1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
2)主要解决海量数据的存储和海量数据的分析计算问题。
3)广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。
核心部分有HDFS,mapReduce,HBase等。
周围的主要框架还有Hive,zookeeper等。

2 Hadoop发展历史

1)创始人Doug Cutting为了实现与Google类似的全文搜索功能,在Lucene框架基础上进行优化升级查询引擎和索引引擎。

2)2001年年底Lucene成为Apache基金会的一个子项目;
3)学习和模仿Google解决这些问题的办法:微型版Nutch
4)Google是Hadoop的思想之源(Google在大数据方面的三篇论文)
GFS——>HDFS
Map-Reduce——>MR
BigTable——>HBase
5) 2003-2004年,Google公开了部分GFS和MapReduce思想细节,Doug Cutting等人利用业余时间实现了DFS和MapReduce机制,使得Nutch性能飙升。
6)2005年Hadoop作为Lucene子项目Nutch的一部分正式引入Apache基金会。
7)2006年3月份,Map-Reduce和Nutch Distributed File System(NDFS)分别被纳入到Hadoop项目中,Hadoop就此正式诞生,标志着大数据时代来临。
8)名字来源于Doug Cutting儿子的玩具大象。

3 Hadoop三大发行版本

Apache 最基础版本,适合入门学习,始于2006年;
Cloudera内部集成了很多大数据框架,对应产品CDH,2008;收费。
Hortonworks,对应产品HDP,2011年。收费。

4 Hadoop优势

1)高可靠性:即时某个硬盘坏掉,仍然会有其他硬盘存储,保证数据不丢失。
2)高扩展性:比如双十一来临时可以动态增加服务器。
3)高效性:可以集群工作。
4)高容错性:自动将失败的任务重新分配。

5 Hadoop组成

1.2x版本将1.1的MapReduce(计算+资源调度)拆分为了MapReduce(计算)和Yarn(资源调度)。

5.1 HDFS架构概述

Hadoop Distributed File System,简称HDFS,是一个分布式文件系统。
1)NameNode(NN):存储文件的元数据,如文件名文件目录结构文件属性,每个文件的块列表块所在的DataNode等。

2)DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和

3)Secondary NameNode(2nn):每个一段时间对NameNode元数据备份。
例子一:
在星爷演的鹿鼎记电影里,陈近南教韦小宝武功,韦小宝说“这么大一本,我要练个把月吧”,陈近南说“这一本只不过是绝世武功的目录(NameNode),那一堆才是绝世武功的秘籍。(DataNode)”

例子二:
例如将200G岛国资料存储到400台服务器上(每台服务器有1T),NameNode为200T岛国资源,DataNode各个服务器。

5.2 Yarn架构概述

(1)Resource(RM):整个集群资源(内存、GPU等)的老大。
(2)NodeManager(NM):单个节点服务器资源老大。
(3)ApplicationMaster(AM):单个任务运行的老大。
(4)Container:容器,相当于一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络等。比如阿里云的400个云服务器,实际可能只有4台服务器实体。

说明:

  • 客户端可以有多个
  • 集群上可以运行多个ApplicationMaster
  • 每个NodeManger上可以有多个Container

    运行原理:每个App Master都运行在Container,当要生成一个App Master时,就会向Resource Manger申请资源,在一个节点上开辟一块资源,如果资源不够,还可以继续在其他节点开辟新的container。

5.3 MapReduce架构概述

MapReduce负责海量存储的计算。
分为Map和Reduce两个过程。
比如要从100T的小视频里找出15年5月的wuma视频,可以把100T资源分到多个hadoop服务器中,这个是Map的过程;然后每个服务器再进行查找,并将查找的结果记录下来,汇总到总服务器中,这个是Reduce过程。

5.4 三者关系

step1:提交作业。某个时刻来了一个查询作业:要求查询15年5月的wuma视频,然后集群开始工作。
step2:启动App Master。ResourceManager会找到一个NodeManager节点,开启一个Container,把App Master放到里面。
step3:Map阶段,开启Map Task。App Master向ResourceManager节点申请两个hadoop节点进行map计算。然后开启对应的Container资源。App Master在各个Container中启动Map Task,每一个Map Task独立工作,负责计算是否有1505的wuma视频。返回是否有视频的结果。
step4:Reduce阶段,把整个Map阶段计算的结果进行整个写入到一个磁盘中输出。

6 Hadoop大数据技术生态体系

数据源有三类,分别是:数据库(结构化数据,数据库有行和列的数据),日志文件(半结构化数据,通过分隔符分开了数据,可以通过处理导入到结构化数据中),视频、ppt等(非结构化数据,无法转化为结构化数据)。
数据传输层:用Sqoop同步mysql数据库;比如用户点赞,评论等用户文件数据是文件日志,通过Flume日志收集,视频和ppt等通过Kafka消息队列传输。
数据存储层:结构化和半结构化可以通过HDFS与HBase进行存储。
资源管理层:YARN资源管理。
数据计算层:MapReduce离线计算(完全基于硬盘),Spark Core内存计算(更高效)。Hive数据查询通过HQL进行数据查询,省去了MapReduce写代码的过程。Spark Mlib数据挖掘和Spark Sql数据查询,省去了Spark写代码的过程。Storm实时计算。
任务调度层:Oozie任务调度,Azkaban任务调度。比如我半夜要跑100个任务,其中有5个任务要在凌晨1点执行完后再执行剩下的任务,要用任务调度器实现。
管理框架:Zookeeper数据平台配置和调度。
业务层:业务模型、数据可视化、业务应用。

7 推荐系统架构图

我们在使用淘宝购买物品时,每个人看到的主页都是不一样的,可谓是千人千面。
当我打开淘宝,看到一个人参丸并点进去时,这个行为就会被淘宝后台给记录下来,通过Nginx打入到日志收集的服务中。
这种日志是非结构化数据。通过Flume进行日志收集。
由于这种推荐系统是要求实时的,所以我们采用Kafka来讲数据发送给Spark Streaming进行实时计算。
讲分析结果文件写入到结果数据库中。
最后通过推荐业务服务器计算出推荐的结果,通过前端展现出想要看的页面。

大数据之Hadoop——1概念相关推荐

  1. 大数据与Hadoop有什么关系?大数据Hadoop入门简介

    学习着数据科学与大数据技术专业(简称大数据)的我们,对于"大数据"这个词是再熟悉不过了,而每当我们越去了解大数据就越发现有个词也会一直被提及那就是--Hadoop 那Hadoop与 ...

  2. 【快速入门大数据】hadoop和它的hdfs、yarn、mapreduce

    文章目录 导学 大数据概述 初识Hadoop 概述 核心组件 HDFS分布式文件系统 资源调度系统YARN MapReduce 优势 发展史 生态系统 发行版本选择 企业应用案例 第3章 分布式文件系 ...

  3. 大数据和Hadoop什么关系?为什么大数据要学习Hadoop?

    大数据是一系列技术的统称,经过多年的发展,大数据已经形成了从数据采集.整理.传输.存储.安全.分析.呈现和应用等一系列环节,这些环节涉及到诸多大数据工作岗位,这些工作岗位与物联网.云计算也都有密切的联 ...

  4. 【大数据】Hadoop—— 三大核心组件理论入门 | 完全分布式集群搭建 | 入门项目实战

    文章目录 前言 大数据概述 时代背景 4V特点 大数据思维 核心技术 储存 计算 相关技术 云计算 物联网 Hadoop简介 简介 版本之分 项目生态结构 安装和部署 HDFS 简介 集群结构 实现目 ...

  5. 大数据和Hadoop平台介绍

    大数据和Hadoop平台介绍 定义 大数据是指其大小和复杂性无法通过现有常用的工具软件,以合理的成本,在可接受的时限内对其进行捕获.管理和处理的数据集.这些困难包括数据的收入.存储.搜索.共享.分析和 ...

  6. 大数据与Hadoop之间是什么关系

    广义上讲 大数据是时代发展和技术进步的产物.Hadoop只是一种处理大数据的技术手段. "大数据"概念在1980年由维克托·迈尔-舍恩伯格及肯尼斯·库克耶 在<第三次浪潮&g ...

  7. 大数据 python hadoop_大数据与Hadoop

    1. 大数据简介 1.1 大数据的由来 随着计算机技术的发展,互联网的普及,信息的积累已经到了一个非常庞大的地步,信息的增长也在不断的加快,随着互联网.物联网建设的加快,信息更是爆炸式增长,收集.检索 ...

  8. 大数据和Hadoop时代的维度建模和Kimball数据集市

    维度建模已死? 在回答这个问题之前,让我们回头来看看什么是所谓的维度数据建模. 为什么需要为数据建模? 有一个常见的误区,数据建模的目的是用 ER 图来设计物理数据库,实际上远不仅如此.数据建模代表了 ...

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

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

最新文章

  1. RN Exception: Before building your project, you need to accept the license agreements and comp le...
  2. 学python有哪些用途-Python语言有哪些用途
  3. 搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架
  4. IT草根的江湖之路之六:曙光,第一次破例
  5. MyBatis 事务管理解析和有关事务的几种特殊场景表现
  6. 系统安装操作优化:chapter 3 安装windos操作系统。
  7. 关于 Python generator(生成器)的类比
  8. Vue.js – 基于 MVVM 实现交互式的 Web 界面
  9. linux查看进程和线程的命令
  10. 45 FI配置-财务会计-固定资产-一般评估-指定折旧条件转移
  11. python中利用opencv对图片进行缩放
  12. 计算机双行文本一般应用在什么地方,全国计算机二级MS office操作试题及答案
  13. tomcat 7配置数据库连接池,使用SQL Server2005实现
  14. C#笔记02 变量、数据类型
  15. python库skimage 绘制直方图;绘制累计直方图;实现直方图匹配(histogram matching)
  16. EditPlus Version 3 价格 代理商 销售价格 正版软件价格
  17. python 公众号文章发布_Python获取公众号文章
  18. RxJava+Retrofit+MVP+Dagger2 谷歌四件套
  19. protobuf和json的对比
  20. 内测成员爱范儿CTO何世友讲述微信小程序的台前幕后

热门文章

  1. 微软 2018 开源大事记
  2. 基于互联网大脑架构的智慧城市建设探讨
  3. 闲鱼是如何实践一套完整的埋点自动化验证方案的?
  4. python 通过上传excel对数据分割分组导出
  5. 中科院自动化研究所彭思龙:科学家创业的“七宗罪”
  6. 什么是GPT模型,GPT下载和国内镜像
  7. iOS开发之结合asp.net webservice实现文件上传下载
  8. css常用样式,导致页面css样式混乱的原因,css遇到的问题,我和小伙伴们惊呆了
  9. vue 公共列表选择组件,引用museUI的样式
  10. Online Learning and Pricing with Reusable Resources: Linear Bandits with Sub-Exponential Rewards: Li