【问题标题】:How to be notified when Spark Streaming application is started?Spark Streaming 应用程序启动时如何收到通知?
【发布时间】:2019-09-30 20:21:22
【问题描述】:

我使用 Spark 2.3 (HDP 2.3.0.2.6.5.108-1) 和 Spark Streaming (JavaInputDStream)。

我正在编写一些使用火花流的组件的测试。我想做的是:

  1. 在单独的线程中启动组件,从而启动火花流
  2. 等待启动
  3. 在 kafka 中发送通知(由 spark 读取)
  4. 等待处理
  5. 验证输出

但是,我被困在 (2) 上,我不知道如何至少检查流式传输作业是否已开始。有没有我可以使用的api?

注意事项:

  • 我只能访问 spark 上下文,而不是流式上下文...所以如果我可以从 spark 上下文中访问这样的 api,那将是完美的。
  • 3 出现在 2 之后,因为将 spark auto.offset.reset` 设置为最早的接缝无用:\

【问题讨论】:

    标签: apache-spark spark-streaming


    【解决方案1】:

    您应该使用SparkListener 接口并监听发出的事件,例如onApplicationStart.

    对于 Spark Streaming 特定的事件,使用StreamingListener 接口。

    【讨论】:

    • 抱歉打扰了(并请求单独的问题),因为我只是犯了一个错误,为您提供了一个通用的 SparkListener API 而不是 StreamingListener。对于那个很抱歉。已修复,应该正是您最初想要的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多