第十二周总结

用户头像
changtai
关注
发布于: 2020 年 09 月 02 日

1. 大数据概述

1.1 起源

Google在2004年发布的三篇论文:分布式系统GFS,大数据分布式计算框架MapReduce,NoSQL数据库BigTable。 (一个文件系统,一个计算框架,一个数据库系统)

1.2 发展



1.3 应用

大数据处理的主要应用场景包括:数据分析(Hive、Spark SQL),数据挖掘,机器学习(TensorFlow、Mahout、MLib);

  • 大数据+搜索引擎

  • 大数据+数据仓库

  • 大数据+数据挖掘

  • 大数据+机器学习

2. HDFS

2.1 大数据存储需要解决的问题

  • 大文件存储

  • 数据可用性

  • 读写性能

2.2 HDFS系统架构



2.3 文件

文件切成块(默认64M),以块为单位,每个块有多个副本存储在不同的机器上,副本数可在文件生成是指定(默认3)。

2.4 Name Node

存储文件的元数据如文件名、文件目录、文件属性(生成时间、副本数、文件权限),以及每个文件的块列表、块所在的DataNode等等。

2.5 Data Node

在本地文件系统存储文件块数据,以及块数据的校验和可以创建、删除、移动或重命名文件,当文件创建、写入和关闭之后不能修改文件内容。

2.6 高可用

  • 一个名字节点和多个数据节点

  • 数据复制(3个副本)

  • 故障检测

  • 数据节点:心跳包、块报告、数据完整性检测

  • 名字节点(日志文件,镜像文件,主从 通过zk选主)

  • 空间回收机制

2.7 如何写文件



2.8 如何读文件



2.9 HDFS应用场景

适用于:

  • 超大文件

  • 流式数据访问(一次写入多次读取)

  • 商用硬件

不适用于:

  • 低延迟的数据访问

  • 大量小文件

  • 多用户随机写入修改文件

3. MapReduce

3.1 为什么需要MapReduce

  • 处理海量数据

  • 分布式计算

  • 移动计算比移动数据更划算

3.2 什么是MapReduce

MapReduce 既是一个编程模型,又是一个计算框架,开发人员必须基于 MapReduce 编程模型进行编程开发,然后将程序通过 MapReduce 计算框架分发到 Hadoop 集群中运行。

MapReduce编程模型由map和reduce两部分程序组成,利用框架在集群上根据需求运行多个程序实例来处理各个子任务,最后进行归并。

3.3 MapReduce过程







4. Yarn

4.1 什么是Yarn

Yarn 是“Yet Another Resource Negotiator”的缩写,字面意思就是“另一种资源调度器”。

在Hadoop1时,把 MapReduce 程序分发到大数据集群的服务器上,主要是通过 TaskTracker 和 JobTracker 通信来完成。服务器集群资源调度管理和 MapReduce 执行过程耦合在一起,如果想在当前集群中运行其他计算任务,比如 Spark 或者 Storm,就无法统一使用集群中的资源了。

Hadoop2将Yarn从MapReduce中分离出来,成为一个独立的资源调度框架。

4.2 Yarn架构

Yarn 包括两个部分:一个是资源管理器(Resource Manager),一个是节点管理器(Node Manager)。

ResourceManager 进程负责整个集群的资源调度管理,通常部署在独立的服务器上;

NodeManager 进程负责具体服务器上的资源和任务管理,在集群的每一台计算服务器上都会启动,基本上跟 HDFS 的 DataNode 进程一起出现。



5. Hive

5.1 hive架构

Hive 能够直接处理输入的 SQL 语句,调用 MapReduce 计算框架完成数据分析操作。





  • 操作符是Hive的最小处理单元

  • 每个操作符代表处理HDFS操作或MR作业

  • 编译器把HiveSQL转换成一组操作符

5.1 hive编译器





6 总结

通常说的大数据技术分为三类:大数据存储,大数据计算,资源调度框架;

根据数据是实时数据还是存量数据分为:大数据离线计算,大数据实时计算;

大数据计算跟普通的应用程序不同,它是移动计算(程序)而不是移动计算;

解决了大数据的储存(数据高可用、读写高性能、横向扩展),分布式计算,和资源调用 等问题,大数据可以用于 搜索引擎、数据仓库、数据挖掘、机器学习等场景。



用户头像

changtai

关注

还未添加个人签名 2018.04.30 加入

还未添加个人简介

评论

发布
暂无评论
第十二周总结