《图解Spark核心技术与案例实战》
    第一章 Spark及其生态圈介绍
    Spark 由伯克利AMP实验室开发(Algos,Machines and People Lab)
    Spark快速的原因: 1、基于内存计算 2、引入DAG计算引擎
    Spark与MR对比:
    Spark中间数据存内存,MR存磁盘
    Spark容错性高 (1/根据血统衍生 2/通过CheckPoint实现容错)
    *
    Spark的生态系统

    • Spark Core 包括多种运行模式(StandAlone,Yarn)的支持,提供DAG的分布式并行计算框架,引入了RDD的抽象
    • Spark SQL DataSet DataFrame
    • Spark Streaming
    • Mllib
    • SparkR
    • BlinkDB
    • GraphX

    第三章 Spark编程模型
    3.1 RDD概述
    Spark:在同样的环境中,支持迭代、批处理、交互式和流处理的运算
    straggler 运行较慢的Task?
    3.2 RDD的实现
    1 作业调度
    2 解析器的集成
    1、类传输
    2、代码生成器的改动
    *3 内存管理
    RDD的存储策略:
    1/ 非序列化的Java对象存内存 性能最优
    2/ 序列化后的数据存内存 可以采用比Java对象更有效的内存组织形式,但代价是降低了性能
    3/ 序列化数据存磁盘

    1. LRU算法

    4 检查点操作(将长血统的RDD保存到外部存储中去)
    对于包含宽依赖长血统的RDD,设置检查点是非常有用的
    (因为检查点,可以避免某个节点故障时,从宽依赖的各个父节点重新计算数据)
    窄依赖就不是那么必要
    5 多用户管理
    公平调度器