Apache Spark
Awesome Spark ¶
精选清单 Apache Spark 包和资源.
Apache Spark 是一个开源集群计算框架. 最初开发于 University of California, Berkeley's AMPLab, Spark 代码库后来被捐赠给 Apache Software Foundation , 从那以后一直维护它. Spark 提供了一个接口,用于对具有隐式数据并行性和容错性的整个集群进行编程(Wikipedia 2017).
Apache Spark 的用户可以选择不同的 Python、R、Scala 和 Java 编程语言来与 Apache Spark API 交互.
Packages¶
Language Bindings¶
Notebooks and IDEs¶
- almond - 一个scala内核 Jupyter.
- Apache Zeppelin - 基于 Web 的笔记本,可通过可插入后端、集成绘图和开箱即用的广泛 Spark 支持实现交互式数据分析.
- Polynote - Polynote:受 IDE 启发的多语言笔记本. 它支持在一个笔记本中混合多种语言,并在它们之间无缝共享数据. 它通过不可变的数据模型鼓励可复制的笔记本. 源自 Netflix.
General Purpose Libraries¶
- Succinct - 支持对压缩数据的高效查询.
SQL Data Sources¶
SparkSQL 有 serveral built-in Data Sources 对于文件. 这些包括“csv”、“json”、“parquet”、“orc”和“avro”. 它还支持 JDBC 数据库以及 Apache Hive. 可以通过包含下面列出的包或编写您自己的包来添加其他数据源.
Storage¶
- lakeFS - 与 lakeFS 原子版本存储层集成.
Bioinformatics¶
GIS¶
Time Series Analytics¶
Graph Processing¶
- SparklingGraph - 扩展 GraphX 功能的库,具有多种在图形分析中有用的功能(测量、生成器、链接预测等).
Machine Learning Extension¶
- Apache SystemML - 基于 Spark 的声明式机器学习框架.
- Mahout Spark Bindings [状态未知] - 具有类似 R 语法的线性代数 DSL 和优化器.
- KeystoneML - 使用 RDD 键入安全的机器学习管道.
- MLflow - 机器学习编排平台.
Middleware¶
Monitoring¶
Utilities¶
Natural Language Processing¶
Streaming¶
- Apache Bahir - 从 Spark 2.0(Akka、MQTT、Twitter、ZeroMQ)中排除的流式连接器的集合.
Interfaces¶
- Apache Beam - 支持批处理和流处理应用程序的统一数据处理引擎. Apache Spark 是受支持的执行环境之一.
Testing¶
Web Archives¶
Workflow Management¶
Resources¶
Books¶
- Learning Spark, 2nd Edition - 涵盖 Spark 3.0 的 Spark API 简介. 有关基本概念的良好知识来源.
- Advanced Analytics with Spark - 有用的 Spark 处理模式集合. 随附的 GitHub 存储库: sryza/aas.
- Mastering Apache Spark - 有趣的笔记汇编 Jacek Laskowski . 专注于 Spark 内部结构的不同方面.
- Spark Gotchas - 提示、技巧和常见编程错误的主观汇编.
Papers¶
- Large-Scale Intelligent Microservices - 微软的论文介绍了一个基于 Apache Spark 的微服务编排框架,该框架扩展了数据库操作以包括 Web 服务原语.
- Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing - 介绍核心分布式内存抽象的论文.
- Structured Streaming: A Declarative API for Real-Time Applications in Apache Spark - Structured Streaming 是一种新的高级流式 API,它是一种基于自动增量静态关系查询的声明式 API.
MOOCS¶
- Data Science and Engineering with Apache Spark (edX XSeries) - 五门系列课程(Introduction to Apache Spark, Distributed Machine Learning with Apache Spark, Big Data Analysis with Apache Spark, Advanced Apache Spark for Data Science and Data Engineering, Advanced Distributed Machine Learning with Apache Spark ) 涵盖了软件工程和数据科学的不同方面. 面向Python.
- Big Data Analysis with Scala and Spark (Coursera) - 面向 Scala 的入门课程. 部分 Functional Programming in Scala Specialization.
Workshops¶
- AMP Camp - 定期举办的培训活动 UC Berkeley AMPLab . 有用的练习和记录的研讨会的来源,涵盖了来自 Berkeley Data Analytics Stack.
Projects Using Spark¶
- Oryx 2 - Lambda architecture 平台建立在 Apache Spark 和 Apache Kafka 专门用于实时大规模机器学习.
- Photon ML - 支持经典广义混合模型和广义加性混合效应模型的机器学习库.
- PredictionIO - 机器学习服务器,供开发人员和数据科学家在短时间内构建和部署预测应用程序.
- Crossdata - 具有扩展数据源 API 和多用户环境的数据集成平台.
Docker Images¶
- apache/spark - Apache Spark 官方 Docker 图像.
- jupyter/docker-stacks/pyspark-notebook - 带有 Jupyter Notebook 和 Mesos 客户端的 PySpark.
- sequenceiq/docker-spark - 纱线图像来自 SequenceIQ.
- datamechanics/spark - 一个易于设置的 Apache Spark Docker 镜像,来自 Data Mechanics.
Miscellaneous¶
- Spark with Scala Gitter channel - “一个讨论和询问有关使用 Scala 进行 Spark 编程的问题的地方” 开始于 @deanwampler.
- Apache Spark User List 和 Apache Spark Developers List - Mailing lists dedicated to usage questions 和 development topics respectively.
References¶
维基百科,免费的百科全书. 2017. “Apache Spark — 维基百科,免费的百科全书.” https://en.wikipedia.org/w/index.php?title=Apache_Spark&age=7
License¶
这项工作( Awesome Spark ,作者:https://github.com/awesome-spark/awesome-spark )由Maciej Szymkiewicz鉴定,没有已知的版权限制.
Apache Spark、Spark、Apache 和 Spark徽标是 阿帕奇软件基金会. 此汇编未经 Apache 软件基金会认可.
灵感来自 sindresorhus/awesome.