spark是一个用于大规模数据处理的统一计算引擎。适用于各种各样原先需要多种不同的分布式平台处理的场景,包括批处理、迭代计算、交互式查询、流处理。通过统一的框架将各种处理流程整合到一起。
spark特性
- 快速性
spark通过使用先进的DAG调度器、查询优化器和物理执行引擎,可以高性能地进行批量及流式处理。使用逻辑回归算法进行迭代计算,spark比hadoop速度快100多倍。
- 简单易用
spark支持多种编程语言,比如Java、Scala、Python、R及SQL。
spark提供了超过80多个高级算子操作,可以很便捷地构建并行计算应用。
- 通用性
spark构建了一个完善的生态栈,将批量计算、交互式计算、流式计算、机器学习及图计算整合到一个统一的框架体系中。
- 处处运行
spark可以运行在standalone、YARN、Mesos、Kubernetes及EC2多种调度平台上。
另外,spark可以接入多种数据源,比如HDFS、Alluxio、HBase、Cassandra、Hive及本地文件。
spark生态栈