【问题标题】:PyFlink performance compared to ScalaPyFlink 性能与 Scala 相比
【发布时间】:2021-12-19 14:21:44
【问题描述】:

PyFlink 性能与 Flink + Scala 相比如何?

大图。 目标是使用冷热层构建 Lambda 架构。 冷(批处理)层将使用 Apache Spark (PySpark) 实现。 但是对于 Hot (Streaming) Tier,有不同的选择:Spark Streaming 或 Flink。

因此 Apache Flink 是纯流而不是 Spark 的微批处理,我倾向于选择 Apache Flink。 但我唯一担心的是 PyFlink 的性能。它会比 PySpark 流式传输具有更少的延迟吗?是不是比 Scala 写的 Flink 代码慢?在什么情况下它会变慢?

提前谢谢你!

【问题讨论】:

    标签: pyspark apache-flink spark-streaming pyflink


    【解决方案1】:

    我已经实现了一些非常相似的东西,根据我的经验,这些是一些事情

    1. 作业的性能完全取决于您编写的代码类型,如果您在提取时使用一些用 python 编写的自定义 UDF 运行,那么性能将比使用基于 Scala 的相同操作慢代码 - 这主要是因为 python 对象到 JVM 的转换,反之亦然。但这会在您使用 Pyspark 时发生。
    2. Flink 是真正的流式处理过程,如果您的用例确实需要真正的流式处理服务,Spark 中的微批处理并非如此,请继续使用 Flink。

    如果您坚持使用 PyFlink 中提供的本机功能,您将不会观察到任何明显的性能差异。

    【讨论】:

      猜你喜欢
      • 2011-01-29
      • 2012-05-06
      • 1970-01-01
      • 1970-01-01
      • 2012-03-11
      • 2020-08-23
      • 2011-01-18
      • 2021-04-02
      • 2021-09-01
      相关资源
      最近更新 更多