【问题标题】:Zeppelin with Spark Structured Streaming ExampleZeppelin 与 Spark 结构化流示例
【发布时间】:2020-01-30 14:53:50
【问题描述】:

我正在尝试在 Zeppelin 中可视化 Spark 结构化流。我能够使用内存接收器(spark.apache)来实现。但它不是高数据量的可靠解决方案。更好的解决方案是什么?

示例实现或演示会有所帮助。

谢谢,

里尔万

【问题讨论】:

    标签: apache-spark streaming apache-zeppelin


    【解决方案1】:

    感谢提问!!有2年以上Spark监控工具开发经验,我想我一定能解决你的疑惑!!

    当数据以流的形式出现时,有两种类型的处理可用。

    1. Discretized Stream 或 DStream:在这种模式下,spark 为您提供数据 以 RDD 格式,您必须编写自己的逻辑来处理 RDD。
      优点:
      1.如果你想在保存流数据之前做一些处理,RDD是比DataFrame最好的处理方式。
      2. DStream 为您提供了一个不错的 Streaming UI,它以图形方式显示已处理的数据量。检查此链接 - https://spark.apache.org/docs/2.2.0/streaming-programming-guide.html#monitoring-applications
      缺点:
      1.处理Raw RDD不是那么方便和容易。

    2. 结构化流:在这种模式下,spark 以 DataFrame 格式,您需要提及存储/发送数据的位置。
      优点:
      1. Spark Streaming 带有一些预定义的源和接收器,它们很常见,95% 的现实生活场景都可以通过插入这些来解决。检查此链接 - https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html
      缺点:
      1. 结构化流式处理没有可用的流式处理 UI :(。尽管您可以获得指标并创建自己的 UI。检查此链接 - https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html#monitoring-streaming-queries
      您还可以将指标存储在一些纯文本文件中,通过spark.read.json 在 Zeppelin 中读取文件,并绘制自己的图表。

    【讨论】:

    • 谢谢苏拉夫。但我的问题不是 Dstream 和结构化流之间的区别。我的查询是使用 Zeppelin 可视化结构化流中的数据的最佳方式
    猜你喜欢
    • 2019-11-28
    • 1970-01-01
    • 2017-05-04
    • 2019-09-21
    • 2018-04-19
    • 2018-09-25
    • 2018-05-27
    • 1970-01-01
    • 2018-01-24
    相关资源
    最近更新 更多