001 Spark的简介以及入门

时间:2023-03-09 16:02:54
001 Spark的简介以及入门

1.hadoop,spark,Flink的比较  

  MapReduce: 分布式的计算框架 -> Hive
   问题:
    shuffle:大文件的排序+读写磁盘+网络传输 => 比较慢
    只有两种执行算子/API: MapTask(数据转换+过滤)和ReduceTask(数据聚合) ==> 定制化稍微有点差
    不适合迭代式的计算
    对于需要快速执行的产生结果的应用场景不适合
  Spark:为了解决MapReduce执行慢、不适合迭代执行的问题
  Flink:类似于spark的基于内存的计算框架

   Hadoop的存活:因为使用的机器比较便宜,更适合批量计算。

2.学习方式

  spark案例:examples文件夹中
  spark源码:一定要回看spark源码,至少常用的必须知道,比如:RDD、SparkContext、DStream....
  官网:http://spark.apache.org/
  1.6.0帮助文档:http://spark.apache.org/docs/1.6.0/
  官方博客:https://databricks.com/blog

  001 Spark的简介以及入门

3.官网

  http://spark.apache.org/

  001 Spark的简介以及入门

4.spark特点(在官网的首页)

  快
  简单/入手快
  公用性/普遍性
  可以运行在任何地方:local、yarn、standalone(类似于yarn的一个资源管理框架,是spark的一个模块)、mesos(apache*项目,类似yarn的一个资源管理框架)

5.spark结构(生态圈)

  001 Spark的简介以及入门  

  BDAS: 伯克利数据分析栈
  起源:加州大学伯克利分校的AMP实验室开源的一个计算框架
  结构:
    SparkCore: 核心部分
    SparkSQL: Spark中交互式处理模块
    SparkStreaming: Spark中流式数据处理的模块
    SparkMLib:Spark机器学习相关模块 => Mahout
    SparkGraphX: Spark中图形计算的模块

5.Hadoop与Spark的比较

  001 Spark的简介以及入门