如何打印流数据帧的数据源选项(例如startingOffsets)?

Posted

技术标签:

【中文标题】如何打印流数据帧的数据源选项(例如startingOffsets)?【英文标题】:How to print out DataSource options (e.g. startingOffsets) for a streaming Dataframe? 【发布时间】:2021-03-02 05:52:43 【问题描述】:

我通过一个变量传递了startingOffsets。怀疑他们可能没有正确的价值观。如何打印回来验证 spark 结构化流选项?

val df = sparkSession
  .readStream
  .format("kafka")
  .option("kafka.bootstrap.servers", "host1:port1,host2:port2")
  .option("subscribe", "topic1")
  .option("startingOffsets", ""topic1":"1":100,"0":120")
)
 .load()

【问题讨论】:

【参考方案1】:

您可以打印出流式数据框的扩展计划:df.explain(true)

这将打印出您的选项,如下所示:

[...]StreamingRelation DataSource(org.apache.spark.sql.SparkSession@149aa7b2,kafka,List(),None,List(),None,Map(startingOffsets -> "test":"0":120, failOnDataLoss -> false, subscribe -> test, kafka.bootstrap.servers -> localhost:9092),None), kafka,[...]

(不要混淆,我使用了我的个人选项,这意味着它们与您的设置有所不同。)

【讨论】:

以上是关于如何打印流数据帧的数据源选项(例如startingOffsets)?的主要内容,如果未能解决你的问题,请参考以下文章