大数据简介

1. 大数据简介

大数据指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

目前主要解决海量数据的存储和海量数据的分析计算问题。

按顺序给出数据存储单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。

1Byte = 8bit 1K = 1024Byte 1MB = 1024K
1G = 1024M 1T = 1024G 1P = 1024T

1.2 大数据特点

1.2.1 大量

截至目前,人类生产的所有印刷材料的数据量是200PB,而历史上全人类总共说过的话的数据量大约是5EB。当前,典型个人计算机硬盘的容量为TB量级,而一些大企业的数据量已经接近EB量级。

1.2.2 高速

这是大数据区分于传统数据挖掘的最显著特征。根据IDC的“数字宇宙”的报告,预计到2020年,全球数据使用量将达到35.2ZB。在如此海量的数据面前,处理数据的效率就是企业的生命。

2018年双十一天猫成交额高达2135亿元!

1.2.3 多样

这种类型的多样性也让数据被分为结构化数据非结构化数据。相对于以往便于存储的以数据库/文本为主的结构化数据,非结构化数据越来越多,包括网络日志、音频、视频、图片、地理位置信息等,这些多类型的数据对数据的处理能力提出了更高要求。

结构化数据:订单数据,数据表数据
非结构化数据:日志数据

1.2.4 低价值密度

价值密度的高低与数据总量的大小成反比。比如,一天的数据信息,我们只关注晚上7点至8点产生的数据。
如何快速对有价值数据“提纯”成为目前大数据背景下待解决的难题。

2. Hadoop生态

2.1 Hadoop是什么

1)Hadoop 是一个由 Apache 基金会所开发的分布式系统基础架构
2)主要解决,海量数据的存储和海量数据的分析计算问题。
3)广义上来说,HADOOP 通常是指一个更广泛的概念——HADOOP 生态圈

2.2 Hadoop发展史

1)2001 年年底成为 apache 基金会的一个子项目
2)对于大数量的场景,Lucene 面对与 Google 同样的困难
3)学习和模仿 Google 解决这些问题的办法 :微型版 Nutch
4)可以说 Google 是 hadoop 的思想之源(Google 在大数据方面的三篇论文)
GFS —>HDFS
Map-Reduce —>MR
BigTable —>Hbase
5)2003-2004 年,Google 公开了部分 GFS 和 Mapreduce 思想的细节,以此为基础 Doug Cutting
等人用了 2 年业余时间实现了 DFS 和 Mapreduce 机制,使 Nutch 性能飙升
6)2005 年 Hadoop 作为 Lucene 的子项目 Nutch的一部分正式引入 Apache 基金会。2006 年
3 月份,Map-Reduce 和 Nutch Distributed File System (NDFS) 分别被纳入称为 Hadoop 的项目中
7)名字来源于 Doug Cutting 儿子的玩具大象
8)Hadoop 就此诞生并迅速发展,标志这云计算时代来临

2.3 Hadoop三大发行版本简介

Hadoop 三大发行版本: ApacheClouderaHortonworks
Apache 版本最原始(最基础)的版本,对于入门学习最好。
Cloudera 在大型互联网企业中用的较多(商用)。
Hortonworks 文档较好。

2.3.1 Apache Hadoop(教程围绕该版本讲解)

官网地址:http://hadoop.apache.org/releases.html
下载地址:https://archive.apache.org/dist/hadoop/common/

2.3.2 Cloudera Hadoop

官网地址:https://www.cloudera.com/downloads/cdh/5-10-0.html
下载地址:http://archive-primary.cloudera.com/cdh5/cdh/5/

  • 2008 年成立的 Cloudera 是最早将 Hadoop 商用的公司,为合作伙伴提供 Hadoop的商用解决方案,主要是包括支持、咨询服务、培训。
  • 2009 年 Hadoop 的创始人 Doug Cutting 也加盟 Cloudera 公司。Cloudera 产品主要为 CDH,Cloudera Manager,Cloudera Support
  • CDH 是 Cloudera 的 Hadoop 发行版,完全开源,比 Apache Hadoop 在兼容性,安全性,稳定性上有所增强。
  • Cloudera Manager 是集群的软件分发及管理监控平台,可以在几个小时内部署好一个 Hadoop 集群,并对集群的节点及服务进行实时监控。Cloudera Support 即是对 Hadoop 的技术支持。

2.3.3 Hortonworks Hadoop

官网地址:https://hortonworks.com/products/data-center/hdp/
下载地址:https://hortonworks.com/downloads/#data-platform

  • 2011 年成立的 Hortonworks 是雅虎与硅谷风投公司 Benchmark Capital 合资组建。
  • 公司成立之初就吸纳了大约 25 名至 30 名专门研究 Hadoop 的雅虎工程师,上述工程师均在 2005 年开始协助雅虎开发 Hadoop,贡献了 Hadoop80%的代码。
  • 雅虎工程副总裁、雅虎 Hadoop 开发团队负责人 Eric Baldeschwieler 出任Hortonworks 的首席执行官。
  • Hortonworks 的主打产品是 Hortonworks Data Platform(HDP),也同样是 100%开源的产品,HDP 除常见的项目外还包括了 Ambari,一款开源的安装和管理系统。

2.4 Hadoop的优势

1)高可靠性:因为 Hadoop 假设计算元素和存储会出现故障,因为它维护多个工作数据副本,在出现故障时可以对失败的节点重新分布处理。

2)高扩展性:在集群间分配任务数据,可方便的扩展数以千计的节点。

3)高效性:在 MapReduce 的思想下,Hadoop 是并行工作的,以加快任务处理速度。

4)高容错性:自动保存多份副本数据,并且能够自动将失败的任务重新分配。

2.5 Hadoop的组件构成

1)Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统。
2)Hadoop MapReduce:一个分布式的离线并行计算框架。
3)Hadoop YARN:作业调度与集群资源管理的框架。
4)Hadoop Common:支持其他模块的工具模块(Configuration、RPC、序列化机制、日志操作)。
大数据简介_第1张图片

2.5.1 HDFS 组件构成

NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等。
DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和。
Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。

举个例子我们有一本书, NameNode相当于书的目录,目录记录了数据信息所在的地方。DataNode就是实际存储数据的地方,也就是目录(NameNode)会指向数据(DataNode)

2.5.2 MapReduce离线计算

MapReduce将计算过程分为两个阶段

  1. Map阶段并行处理输入数据
  2. Reduce阶段对Map结果进行汇总

举个例子,比如我们需要分析一段数据,整段数据是一行一行构成的,假如第一行的数据进来,我们需要对数据进行分割,来筛选哪些数据是我们需要的,这个就是Map做的阶段 。最后我们分割完了,哪些是我们用的,哪些是我们不用的,然后我们需要用的进行统计。这个阶段就是在Reduce阶段进行统计合并的。

2.5.3 YARN资源调度

ResourceManager(总调度):处理客户请求,启动/监控ApplicationMaster,监控NodeManager,资源分配与调度
NodeManager(单节点调度): 单个节点上的资源管理,处理来自ResourceManager的命令,处理来自ApplicationMaster的命令
ApplicationMaster(管理一个job):数据切分,为应用程序申请资源,并分配给内部任务, 任务监控与容错
Container(容器):对任务运行环境的抽象,封装了CPU,内存等多维资源以及环境变量,启动命令等任务运行相关的信息
大数据简介_第2张图片

3. 环境准备

  1. 准备虚拟机
  2. 设置静态固定IP
  3. 设置主机名
  4. 关闭防火墙
  5. 安装jdk

你可能感兴趣的:(hadoop)