24
大大大大大大大

Spark Introduction

Embed Size (px)

Citation preview

Page 1: Spark Introduction

大数据技术简介

Page 2: Spark Introduction

1.大数据简介及历史2.Hadoop & Spark 简介3.Spark 详解4.Spark Demo

Page 3: Spark Introduction

大数据: 一种规模大到在获取、存储、管理、分析方面大大超出了传统数据库软件工具能力范围的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。

Page 4: Spark Introduction

机器学习算法 是一类从数据中自动分析获得规律,并利用规律对未知数据进行预测的算法。

Page 5: Spark Introduction

MapReduce: Simplified Data Processing on Large Clusters= 》 Hadoop MapReduce

Bigtable: A Distributed Storage System for Structured Data= 》 Hadoop Hbase

The Google File System= 》 Hadoop HDFS

2004 年, Google 的 MapReduce 论文揭开了大数据处理的时代,Hadoop 的 MapReduce 在过去接近 10 年的时间成了大数据处理的代名词。 2012 年 Matei Zaharia 关于 RDD 的一篇论文“ Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing” 则揭示了大数据处理技术一个新时代的到来。

Page 6: Spark Introduction

1.大数据简介及历史2.Hadoop & Spark 简介3.Spark 详解4.Spark Demo

Page 7: Spark Introduction

Apache Hadoop

Page 8: Spark Introduction

Apache MapReduce

Page 9: Spark Introduction

Apache HDFS

Page 10: Spark Introduction

Berkeley 数据分析栈

Page 11: Spark Introduction

Apache Spark

Page 12: Spark Introduction

Apache Tachyon

Page 13: Spark Introduction

Hadoop vs Spark

Page 14: Spark Introduction

Hadoop vs Spark

Page 15: Spark Introduction

Spark Based Structure

Page 16: Spark Introduction

1.大数据简介及历史2.Hadoop & Spark 简介3.Spark 详解4.Spark Demo

Page 17: Spark Introduction
Page 18: Spark Introduction
Page 19: Spark Introduction

• Client :客户端进程,负责提交作业到 Master 。• Master : Standalone 模式中主控节点,负责接收 Client 提交的作业,管理

Worker ,并命令 Worker 启动 Driver 和 Executor 。• Worker : Standalone 模式中 slave 节点上 的 守护进程 ,负责管理本节点的资源,定期向 Master 汇报心跳,接收 Master 的命令,启动 Driver 和 Executor 。• Driver : 一个 Spark 作业运行时包括一个 Driver 进程,也是作业的主进程,负责作业的解析、生成 Stage 并调度 Task 到 Executor 上。包括

DAGScheduler , TaskScheduler 。• Executor :即真正执行作业的地方,一个集群一般包含多个 Executor ,每个

Executor 接收 Driver 的命令 Launch Task ,一个 Executor 可以执行一到多个 Task 。• Stage :一个 Spark 作业一般包含一到多个 Stage 。• Task :一个 Stage 包含一到多个 Task ,通过多个 Task 实现并行运行的功能。• DAGScheduler : 实现将 Spark 作业分解成一到多个 Stage ,每个 Stage 根据 RDD 的

Partition 个数决定 Task 的个数,然后生成相应的 Task set 放到 TaskScheduler 中。• TaskScheduler :实现 Task 分配到 Executor 上执行。

Page 20: Spark Introduction
Page 21: Spark Introduction
Page 22: Spark Introduction
Page 23: Spark Introduction

1.大数据简介及历史2.Hadoop & Spark 简介3.Spark 详解4.Spark Demo

Page 24: Spark Introduction