2. 为什么要用 Python Spark?

中国谚语

磨刀不误砍柴工。 --中国古语

我想从以下两个部分回答这个问题:

2.1. 为什么是 Spark ?

我认为以下四个主要原因来自 Apache Spark™ 官方网站足以说服你使用Spark。

  1. 速度

    在内存中运行程序比Hadoop MapReduce快100倍,在磁盘上运行程序比Hadoop MapReduce快10倍。

    ApacheSark有一个高级的DAG执行引擎,支持非循环数据流和内存计算。

images/logistic-regression.png

Hadoop和Spark中的逻辑回归

  1. 易用性

    在Java、斯卡拉、Python、R.中快速编写应用程序

    Spark提供了80多个高级运营商,使构建并行应用程序变得容易。您可以从scala、python和r shell交互地使用它。

  2. 概括性

    将SQL、流式处理和复杂分析相结合。

    spark为一堆库提供动力,包括SQL和数据帧、用于机器学习的mllib、graphx和spark流。您可以在同一个应用程序中无缝地组合这些库。

images/stack.png

Spark 堆栈

  1. 处处奔跑

    Spark运行在Hadoop、Meos、Standalone或云中。它可以访问各种数据源,包括HDF、Cassandra、HBase和S3。

images/spark-runs-everywhere.png

Spark 平台

2.2. 为什么要在 Python 中使用Spark (PySpark)?

不管您喜欢与否,Python一直是最流行的编程语言之一。

images/languages.jpg

KdNuggets Analytics/Data Science 2017年软件调查 kdnuggets .