Elasticsearch with Spark,基于数据框列的动态索引创建

Elasticsearch with Spark, dynamic index creation based on dataframe column

我有一个 spark 数据框,其中有一列说 "name"。该名称在单个数据框中可以具有不同的值。 当我使用 spark (scala) 将数据写入 elasticsearch 时,我想根据列 "name" 的值将数据写入不同的索引。

dataframe.saveToEs("index-name")

saveToEs 需要一个字符串,我正在寻找以下内容:

dataframe.saveToEs(col(""))

或类似的东西,我可以在写入时分配值。

神话,

我刚刚在文档中看到您可以使用类似这样的东西:

rdd.saveToEs("my-collection-{media_type}/doc")

它允许您:

Save each object based on its resource pattern, in this example based on media_type. For each document/object about to be written, elasticsearch-hadoop will extract the media_type field and use its value to determine the target resource.

来源: https://www.elastic.co/guide/en/elasticsearch/hadoop/master/spark.html#spark-write-dyn-scala