Hadoop(一):大数据 与 Hadoop

大数据背景

  • 大数据特征:海量数据规模、多样数据类型、快速数据流转(实时性)-> 数据价值
  • 大数据流程:数据采集->数据存储->数据处理/分析/挖掘->可视化

大数据的技术架构挑战

  • 对现有的数据库管理技术的挑战
  • 经典数据库技术并没有考虑数据的多类别
  • 实时性的技术挑战
  • 网络架构与数据中心、运维的挑战

大数据系统瓶颈(谷歌对此发表论文提出解决方案)

  • 存储容量 : GFS(谷歌文件系统)
  • 读写速度:BigTable(在普通PC上进行处理时,普通PC机容易出故障,因此要尽量减少容错)
  • 计算效率:MapReduce (减小生产成本、部署在普通PC机进行处理)

Hadoop

  • Hadoop是什么:分布式存储+分布式、可拓展计算平台
  • Hadoop能做什么:搭建大型数据仓库、PB级数据存储、处理、分析
  • Hadoop优势:高可靠性、低成本、搞拓展、成熟的生态圈、囊括了大数据处理的方方面面
  • 狭义的Hadoop:是一个适合大数据分布式存储(HDFS)、分布式计算(MapReduce)和资源调度(YARN)的平台
  • 广义的Hadoop:指的是hadoop的整个生态系统,Hadoop生态系统是一个很庞大的概念,hadoop是其中一个重要的基础部分,生态系统中的每一个子系统只解决某一个特定的问题域
  • Hadoop包括哪些模块
    • hadoop common
    • hadoop distributed file system(hdfs)负责数据存储
    • hadoop yarn 负责作业调度与集群资源管理
    • hadoop MapReduce 基于yarn系统之上可以并行处理大数据计算

核心组成

HDFS分布式文件系统

  • 特点:扩展性、容错性、海量数据存储
  • 将文件切分成指定大小的数据块以及多副本的存储在多个机器上,默认128M
  • 数据切分、多分布、容错等操作对用户是透明的

《Hadoop(一):大数据 与 Hadoop》
ax8Kh.md.png

资源管理系统 Yarn

  • 特点:扩展性、容错性、多框架资源统一调度(让多种作业可以跑在 Yarn 上、减少运维成本、由 Yarn 完成整个集群资源管理的调度)
  • 负责整个集群资源的管理和调度(一个大作业要占用多少cpu、内存)

《Hadoop(一):大数据 与 Hadoop》
axiWN.md.png

MapReduce

  • 特点:扩展性、容错性、海量数据的离线处理

《Hadoop(一):大数据 与 Hadoop》
axxru.md.png

Hadoop生态系统

  • HDFS:Hadoop 文件系统
  • Yarn:资源调度平台、可以让其它框架跑在 Hadoop 上
  • MapReduce:分布式计算
  • Hive:定义了一种类似于 SQL 语言,通过 Hive 的 SQL 语句借助 Hive 执行引擎可以对 HDFS 上的数据进行计算
  • R Conectors:做一些统计学计算
  • Mahout:封装了一些机器学习的库
  • Pig:通过编写脚本把脚本转化为 MapReduce
  • Oozie:工作流调度引擎,让任务A、B、C可以按顺序执行,把所有具有依赖关系的作业配置好,让其可以按顺序执行
  • Zookeeper:管理其它框架
  • Flume:日志收集框架、收集 nginx、tomcat 等这些日志文件
  • Sqoop:运用于关系型数据库与 Hadoop 之间的数据传输
  • Hbase:链式存储,针对于结构化数据的、可伸缩可拓展的数据库,大型数据库,可以达到秒级别上亿查询

《Hadoop(一):大数据 与 Hadoop》
axSoH.md.png

Hadoop发行版选择

  • Apache Hadoop (里面的框架只是解决了单个Hadoop框架的,整个集群配置比较麻烦,容易产生jar包冲突,适合学习)
  • CDH:Cloudera Distributed Hadoop (安装简单,升级简单,资源管理设置直接通过页面就可以完成,跟Spark合作开发较好,但非开源的)
  • HDP:Hortonworks Data Platform(安装和升级添加节点相对CDH比较费劲、但比原生的好)
    原文作者:林塬
    原文地址: https://www.jianshu.com/p/3d094b42ce0b
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞