Я довольно новичок в упругом поиске.Я использую elasticsearch-hadoop 6.2.4
версию, и я читаю файлы из HDFS
, преобразовываю их в объект bean и пишу в упругий поиск.Я использую структурированную потоковую передачу Spark.
StreamingQuery query = dataSet
.writeStream()
.format("org.elasticsearch.spark.sql")
//.outputMode(OutputMode.Append())
.option("checkpointLocation", "\tmp\ckpt1")
.option("es.nodes","abc.dev.cm.par.xy.hp")
.option("es.port","9200")
.option("es.mapping.id", "CustomerID")
.option("es.resource", "testIndex/testType")
.start();
Во время записи я даю одно из полей (CustomerID
) в классе pojo как отображение iD.Можем ли мы указать несколько полей или комбинацию полей в качестве идентификатора сопоставления?Например, мой файл содержит идентификатор клиента, а также поля идентификатора заказа.Можем ли мы объединить эти оба поля как CustomerID + OrderID что-то в этом роде?