前言

Hadoop不是历史上第一个用于数据存储和分析的分布式系统,但hadoop发展壮大到今天必然有它过人的特性。接下来就探讨下Hadoop的相关知识。


一、Hadoop是什么?

Hadoop是一个对海量数据存储和海量数据分析计算的分布式系统。

Hadoop 1.x
            海量数据存储 ----> HDFS
            海量数据分析计算 ----> MapReduce
       Hadoop 2.x 增加
            资源调度系统 ----> Yarn

从hadoop最初的原型来看,hadoop已经远远超过了本身的批处理。从广义上来说,hadoop现在可以是指更广泛的一个hadoop生态了,而不仅仅是HDFS,MapReduce和Yarn。例如Hive,Hbase,Flume,Sqoop等等项目都属于这个生态。

二、Hadoop发展

Hadoop是道格·卡丁(Doug Cutting)创建的,Hadoop起源于开源网络搜索引擎Apache Nutch,后者本身也是Lucene项目的一部分。Nutch项目面世后,面对数据量巨大的网页显示出了架构的灵活性不够。当时正好借鉴了谷歌分布式文件系统,做出了自己的开源系统NDFS分布式文件系统。第二年谷歌又发表了论文介绍了MapReduce系统,Nutch开发人员也开发出了MapReduce系统。随后NDFS和MapReduce命名为Hadoop,成为了Apache顶级项目。

从Hadoop的发展历程来看,它的思想来自于google的三篇论文。

  • GFS:Google File System 分布式处理系统 ------》解决存储问题
  • Mapreduce:分布式计算模型 ------》对数据进行计算处理
  • BigTable:解决查询分布式存储文件慢的问题,把所有的数据存入一张表中,通过牺牲空间换取时间

在之后的学习中,我会对这三篇论文进行总结和归纳。

三、Hadoop发行版本

Hadoop三大发行版本:Apache、Cloudera、Hortonworks。

1、Apache最基础的版本,适合入门学习,可以基于此做二次开发。

官网地址:http://hadoop.apache.org/releases.html

下载地址:https://archive.apache.org/dist/hadoop/common/

2、Cloudera在大型互联网企业中用的较多。

官网地址:https://www.cloudera.com/downloads/cdh/5-10-0.html

下载地址:https://archive.cloudera.com/cdh5/redhat/7/x86_64/cdh/

3、Hortonworks文档较好。

官网地址:https://hortonworks.com/products/data-center/hdp/

下载地址:https://hortonworks.com/downloads/#data-platform

四、Hadoop优势

  • 高可靠性

因为hadoop假设计算元素和存储会出现故障,因为它维护多个数据结构和副本(默认3副本),在出现故障时可以对失败的节点重新分布处理

  • 高扩展性

在集群间分配任务数据,可方便的扩展数以千计的节点

思考:动态扩容如何实现?
                  对于添加少量的机器,可以通过手动配置或通过CDH添加
                  如果需要动态扩容上百台呢,而且可以根据数据量增长和减少的趋势,可以auto scaling。

  • 高效性

在MapReduce的思想下,Hadoop时并行工作的,以加快任务处理速度

  • 高容错性

自动保存多副本数据,并且能够自动将失败的任务重新分配

五、传统数仓与大数据存储

传统数据仓库和大数据存储概念

传统数据仓库:传统方式 DW(Data Warehouse)基于传统的关系型数据库(Oracle,Mysql)是将所有的东西共享,放在一起存储分析。

大数据存储:分布式,东西不共享,分别在不同的机器上完成存储分析,最后整合到一起。

目前传统数仓和大数据存储的区别已经渐渐模糊了。传统的关系型数据库借鉴了hadoop思想,也实现了分布式的数据存储和处理,而大数据存储也增加了索引和事物的特性。但就其存储的数据结构还是不同的,大数据存储更擅长非结构化数据和半结构化数据,而关系型数据库更擅长结构化数据

OLTP和OLCP

OLTP:联机事务处理(On-Line transaction Processing)

OLAP:联机分析处理(On-Line Analytical Processing)

OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLTP系统强调数据库的内存效率,强调内存各种指标的命令率,强调绑定变量,强调并发操作。

OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并支持提供直观易懂的查询结果,OLAP强调的数据分析,强调SQL执行市场,强调磁盘I/O,强调分区等。

区别

OLTP,联机事务处理,表示事务性非常高的系统,一般都是高可用的在线系统,以小的事务以及小的查询为主。OLTP出现瓶颈的地方在于CPU与磁盘子系统。OLTP系统也是一个数据块变化非常频繁,语句提交非常频繁的系统。

OLAP,联机分析处理,有时候也叫DSS决策支持系统,也就是我们所说的数据仓库,语句的执行量不是考核的标准,因为一条语句可能执行的时间会非常的长,读取的数据也会非常的多,所以,在这样的系统中,考核的标准往往是磁盘子系统的吞吐量(宽带),如能达到多少MB/s流量。

Hadoop起源发展与概述相关推荐

  1. Hadoop和Spark简单概述

    文章目录 Hadoop和Spark概述 一. 简单说说Hadoop 1. Hadoop的产生背景 2. Hadoop核心技术 二. 简单说说Spark 1. Spark的官方定义 2. Spark的核 ...

  2. 目标检测近5年发展历程概述(转)

    目标检测近5年发展历程概述,从R-CNN到RFBNet(2013--2018)(转) 2018年09月24日 12:32:02 C小C  [时间]2018.09.24 [题目]目标检测近5年发展历程概 ...

  3. 《如何搭建小微企业风控模型》第一节 小微企业数据贷发展情况概述

    <如何搭建小微企业风控模型>第一节小微企业数据贷发展情况概述 第一章 小微企业数据风控技术的框架 小微企业数据贷发展情况概述 搭建小微企业风控模型所需知识 风控模型概览 第二章 强相关变量 ...

  4. 大数据三驾马车与hadoop起源

    背景介绍 Google成立于1998年是全球最大的搜索引擎公司,主要业务为搜索.云计算.广告技术等,主要利润来自于广告等服务.在21世纪初互联网刚刚兴起,每个企业保存和生产的数据量并不大,已有的技术对 ...

  5. Internet起源与Web概述

    Internet起源 Internet起源于20世纪60年代的美国,20世纪60年代末,美国国防部高级研究计划局建立第一个网际网ARPANET,这是一个军用实验网,主要的目的是寻求一种将不同类型的计算 ...

  6. 大数据入门第五天——离线计算之hadoop(上)概述与集群安装

    一.概述 根据之前的凡技术必登其官网的原则,我们当然先得找到它的官网:http://hadoop.apache.org/ 1.什么是hadoop 先看官网介绍: The Apache™ Hadoop® ...

  7. 1.Java之路(Java语言发展和概述以及特点)

    1.Java语言概述   1.1 什么是Java语言 Java语言是美国Sun公司(StanfordUniversityNetwork),在1995年推出的高级的编程语言.所谓编程语言,是计算机的语言 ...

  8. Hadoop较全面的概述

    看到的比较全面的介绍 Hadoop 1.0 和 2.0的区别 软件栈如下图: Hadoop 1.0的内核主要由两部分构成: HDFS  存储大数据的平台,提供可靠性的存储服务(冗余数据,存储). Ma ...

  9. Spring源码学习笔记:起源发展和核心模块主要职能

    1.博客内容均出自于咕泡学院架构师第三期 2.架构师系列内容:架构师学习笔记(持续更新) 1.Spring 的前世今生 早在 2007 年,一个基于 Java语言的开源框架正式发布,取了一个非常有活力 ...

最新文章

  1. es6+最佳入门实践(10)
  2. GDT、GDTR、LDT、LDTR的学习
  3. python设置ini文件中的值_PyCharm设置python文件模板,自动读取文件信息。
  4. nyist-508(余数求和)
  5. Win10+tensorflow:SSD调试问题:Unable to open table file ../checkpoints/ssd_300_vgg.ckpt
  6. [云炬创业基础笔记]盈利构造
  7. 指针:调用自定义交换函数,完成三个数整从小到大排列
  8. 如何修改emcp的sn号_百家号领域选择错误怎么办?百家号怎么更改领域?
  9. 想成长为一名实战型架构师?7大实战技能经验分享
  10. C++学习之路 | PTA乙级—— 1008 数组元素循环右移问题 (20分)(精简)
  11. zendstudio快捷键收录
  12. 读取文本节点_我最喜爱的Dynamo节点TOP 10
  13. andorid 录音去噪音
  14. 第七章7.8示例学习:统计每个字母出现的次数
  15. 王思聪吃热狗火了,程序员开发各种恶搞小程序!王校长:我不要脸的啊
  16. 海量图片存储与运算架构
  17. 如何高效学习一门新技术
  18. nginx本地代理调试微信登录(window版本)
  19. 剑指offer——栈
  20. 高通骁龙665能不能升级鸿蒙系统,高通骁龙665性能好不好 高通骁龙665性能测试...

热门文章

  1. Mcafee16.0-添加文件例外
  2. 今生,我的文字只为你写
  3. Python Web 深度学习实用指南:第四部分
  4. 以太网口armmos推挽开漏上下拉高低边时域频域傅里叶
  5. 白皮书数据显示,内循环下差旅管控市场下沉趋势或将凸显
  6. Eclipse-MAT的插件介绍使用
  7. 盲僧发现了华点——教你如何使用API接口获取数据
  8. 史上最全关于苹果开发者账号及上架APPStore总结
  9. 抖音矩阵号系统搭建,企业同时管理1000+账号的基础逻辑
  10. yolov5训练voc数据集