Как установить динамический идентификатор документа в приемнике эластичного поиска с использованием потоковой структурированной искры - PullRequest
0 голосов
/ 24 сентября 2019

В elasesearch написать приемник, как мне добавить идентификатор документа с динамическими значениями из поля набора данных.В моем случае мне нужно установить идентификатор документа на основе определенного поля из отформатированного набора данных.Наткнулся на «es.mapping.id», но как мне получить значения из моего набора данных?

1 Ответ

0 голосов
/ 25 сентября 2019

Обнаружено, что вы можете достичь этого, просто указав имя поля в качестве значения для "es.mapping.id"

StreamingQuery query = finalData.writeStream()
                .outputMode(OutputMode.Append())
                .format("org.elasticsearch.spark.sql")
                .option("es.mapping.id", "input_key")        
                .option("checkpointLocation","/tmp/spark-checkpoint")
                .start("spark_index/doc");
...