【问题标题】:kafka streaming or spark streaming卡夫卡流或火花流
【发布时间】:2018-08-13 20:07:36
【问题描述】:

我现在在 Python 中使用 kafka。 想知道是否需要 Spark Kafka 或者我们可以只使用 kafka 通过 pyKafka。

我担心 Spark 在此过程中会产生开销 (pyspark), 如果我们不使用任何 spark 函数,则只需要 Kafka 流。

使用Pyspark和kafka spark有什么不方便的地方?

【问题讨论】:

  • 什么是“Spark Kafka”或“Kakfa Spark”?注意:Kafka Streams 是一个 Java 库。 Kafka Python 库不具备 Spark Streaming 或 Kafka Streams 的所有功能
  • 比如哪一部分不可用?
  • @Tensor:什么你想要做什么?你有什么要求?由此,更容易解释和定位不同的技术及其对您的要求的优缺点。 Spark Streaming、Kafka Streams 和 KSQL 都可以在这里选择——这取决于你想要做什么。
  • Python 只是一个普通的消费者/生产者。 Spark 有数据框和东西,还有一堆与外部系统集成的库。并不是说 Python 也没有,但你不能像 Spark 那样轻松扩展纯 Python 应用程序
  • pyspark 有序列化开销....

标签: apache-spark pyspark apache-kafka spark-streaming-kafka


【解决方案1】:

这完全取决于手头的用例,正如 cmets 中提到的那样,但是几个月前我遇到了同样的情况,我将尝试转移我的知识以及我是如何决定转移到 kafka-streams 的而不是火花流。

在我的用例中,我们只使用 spark 从 kafka 进行实时流式传输,进行任何类型的 map-reduce、窗口化、过滤、聚合。

鉴于上述情况,我根据3个维度做了比较:

  1. 技术性
  2. 开发运维
  3. 成本

下图显示了我为说服我的团队迁移以使用 kafka-streams 并抑制 spark 所做的比较表,图中未添加成本,因为它完全取决于您的集群大小(HeadNode-WorkerNodes)。

V.I.注意: 同样,这是基于你的情况,我只是试图给你一个指导如何进行比较,但是 spark 本身有很多好处,这与在这个问题中描述它无关。

【讨论】:

    猜你喜欢
    • 2016-08-03
    • 2018-09-15
    • 2018-02-24
    • 2023-03-19
    • 2018-08-15
    • 1970-01-01
    • 2019-04-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多