在ES Hadoop上的Spark结构化流上使用动态索引

时间:2018-11-14 17:40:12

标签: apache-spark elasticsearch spark-structured-streaming

我有Elasticsearch 6.4.2和Spark 2.2.0

当前,我有一个工作示例,其中我可以通过 writeStream (结构化流)API将数据集中的数据发送到Elasticsearch:

ds.writeStream
.outputMode("append")
.format("org.elasticsearch.spark.sql")
.option("checkpointLocation","hdfs://X.X.X.X:9000/tmp")
.option("es.resource.write","index/doc")
.option("es.nodes","X.X.X.X")
.trigger(Trigger.ProcessingTime("10 seconds"))
.start()

但是,我对使用动态索引名称创建新的index based on the date of the event感兴趣。对于documentation,可以使用具有特殊格式的 es.resource.write 配置来实现此目的:

.option("es.resource.write","index-{myDateField}/doc")

尽管我付出了所有努力,当我尝试使用花括号将代码运行时,它立即崩溃,表明检测到非法字符“ {”。

?streamWrite API当前是否支持此配置?

0 个答案:

没有答案