Spark 研究
Apache Spark 起源于加州大学伯克利分校的 AMPLab 的一个研究项目,该实验室专注于大数据分析。
我们的目标是设计一种编程模型,它支持比 MapReduce 更广泛的应用程序类别,同时保持其自动容错性。特别是,MapReduce 对于需要在多个并行操作之间进行低延迟数据共享的多遍应用程序效率低下。这些应用程序在分析中非常常见,包括
- 迭代算法,包括许多机器学习算法和图算法,如 PageRank。
- 交互式数据挖掘,用户希望将数据加载到集群中的 RAM 中并反复查询它。
- 流式应用程序,随着时间的推移维护聚合状态。
传统的 MapReduce 和 DAG 引擎对于这些应用程序来说效率低下,因为它们基于无环数据流:应用程序必须作为一系列不同的作业运行,每个作业都从稳定存储(例如分布式文件系统)读取数据并将其写回稳定存储。它们在每个步骤中加载数据并将其写回复制存储会产生巨大的成本。
Spark 提供了一个名为 弹性分布式数据集 (RDD) 的抽象来有效地支持这些应用程序。RDD 可以存储在查询之间的内存中,无需复制。相反,它们使用血统重建丢失的数据:每个 RDD 都记住它是如何从其他数据集构建的(通过诸如map
、join
或groupBy
之类的转换)来重建自身。RDD 使 Spark 在多遍分析中比现有模型快 100 倍。我们证明了 RDD 可以支持各种迭代算法,以及交互式数据挖掘和高效的 SQL 引擎 (Shark)。
您可以在以下论文中找到有关 Spark 背后研究的更多信息
-
SparkR:使用 Spark 扩展 R 程序,Shivaram Venkataraman、Zongheng Yang、Davies Liu、Eric Liang、Hossein Falaki、Xiangrui Meng、Reynold Xin、Ali Ghodsi、Michael Franklin、Ion Stoica 和 Matei Zaharia。SIGMOD 2016。2016 年 6 月。
-
MLlib:Apache Spark 中的机器学习,Xiangrui Meng、Joseph Bradley、Burak Yavuz、Evan Sparks、Shivaram Venkataraman、Davies Liu、Jeremy Freeman、DB Tsai、Manish Amde、Sean Owen、Doris Xin、Reynold Xin、Michael J. Franklin、Reza Zadeh、Matei Zaharia 和 Ameet Talwalkar。机器学习研究杂志 (JMLR)。2016 年。
-
Spark SQL:Spark 中的关系数据处理。Michael Armbrust、Reynold S. Xin、Cheng Lian、Yin Huai、Davies Liu、Joseph K. Bradley、Xiangrui Meng、Tomer Kaftan、Michael J. Franklin、Ali Ghodsi、Matei Zaharia。SIGMOD 2015。2015 年 6 月。
-
GraphX:统一数据并行和图并行分析。Reynold S. Xin、Daniel Crankshaw、Ankur Dave、Joseph E. Gonzalez、Michael J. Franklin、Ion Stoica。OSDI 2014。2014 年 10 月。
-
离散流:大规模容错流式计算。Matei Zaharia、Tathagata Das、Haoyuan Li、Timothy Hunter、Scott Shenker、Ion Stoica。SOSP 2013。2013 年 11 月。
-
Shark:大规模 SQL 和丰富分析。Reynold S. Xin、Joshua Rosen、Matei Zaharia、Michael J. Franklin、Scott Shenker、Ion Stoica。SIGMOD 2013。2013 年 6 月。
-
离散流:大型集群上流式处理的有效且容错的模型。Matei Zaharia、Tathagata Das、Haoyuan Li、Scott Shenker、Ion Stoica。HotCloud 2012。2012 年 6 月。
-
Shark:使用粗粒度分布式内存进行快速数据分析(演示)。Cliff Engle、Antonio Lupher、Reynold S. Xin、Matei Zaharia、Haoyuan Li、Scott Shenker、Ion Stoica。SIGMOD 2012。2012 年 5 月。最佳演示奖。
-
弹性分布式数据集:用于内存集群计算的容错抽象。Matei Zaharia、Mosharaf Chowdhury、Tathagata Das、Ankur Dave、Justin Ma、Murphy McCauley、Michael J. Franklin、Scott Shenker、Ion Stoica。NSDI 2012。2012 年 4 月。最佳论文奖。
-
Spark:使用工作集的集群计算。Matei Zaharia、Mosharaf Chowdhury、Michael J. Franklin、Scott Shenker、Ion Stoica。HotCloud 2010。2010 年 6 月。