Repolode
apache

apache/spark

面向大规模数据处理的统一分析引擎,提供 Scala、Java、Python 和 R 接口。

Star
44,283
Fork
29,463
未关闭 Issue
692
最近提交
4小时前

这是什么?

Apache Spark 是一个用于处理大规模数据集的分布式计算引擎。它提供 Scala、Java、Python 和 R 接口(其中 R 已被标记为弃用),并在优化的执行引擎上运行通用计算图。

在核心引擎之上,Spark 内置多个库:Spark SQL 用于 SQL 查询和 DataFrame,pandas API on Spark 可在集群规模上运行 pandas 风格的代码,MLlib 提供机器学习能力,GraphX 用于图计算,Structured Streaming 用于流处理。

最快的上手方式是使用自带的 spark-shell(Scala)或 pyspark(Python)交互式命令行。运行示例时,可通过设置 master 地址将任务提交到集群,例如 Spark standalone 集群或 YARN。

核心功能

  • 01统一支持 Scala、Java、Python 和 R 接口
  • 02Spark SQL 支持 SQL 查询和 DataFrame 操作
  • 03pandas API on Spark 可将 pandas 风格代码扩展到大规模数据
  • 04MLlib 提供机器学习,GraphX 提供图计算
  • 05Structured Streaming 提供流式数据处理

适用场景

  • 对 HDFS 等 Hadoop 兼容存储中的数据运行大规模批处理和 ETL 任务
  • 将已有 pandas 代码扩展到单机无法处理的数据规模
  • 基于 MLlib 在大数据上构建机器学习流程
  • 使用 Structured Streaming 处理持续到达的数据流

使用前须知

  • 根据 README,R 语言 API 已被弃用。
  • 根据 README 中的徽章,需要 Java 17 或更高版本。

收录于专题

标签

常见问题

spark 是什么?
面向大规模数据处理的统一分析引擎,提供 Scala、Java、Python 和 R 接口。 Apache Spark 是一个用于处理大规模数据集的分布式计算引擎。它提供 Scala、Java、Python 和 R 接口(其中 R 已被标记为弃用),并在优化的执行引擎上运行通用计算图。
spark 可以免费使用吗?用的什么许可证?
spark 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
spark 还在维护吗?
活跃维护中。spark 最近一次提交是在 2026年10月22日。
spark 适合用来做什么?
对 HDFS 等 Hadoop 兼容存储中的数据运行大规模批处理和 ETL 任务 将已有 pandas 代码扩展到单机无法处理的数据规模 基于 MLlib 在大数据上构建机器学习流程 使用 Structured Streaming 处理持续到达的数据流
在哪里获取 spark?
源代码和安装说明在 GitHub 上:https://github.com/apache/spark

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目