Es.update.script.inline и es.write.operation Spark ElasticSearch - PullRequest
0 голосов
/ 12 октября 2018

Попытка обновить документ с помощью банкаasticsearch-hadoop и Spark.Фрейм данных извлекает документ, затем я пытаюсь обновить его, чтобы добавить дополнительные документы, используя безболезненный язык сценариев.

Это прекрасно работает:

curl -XPOST --header 'Content-Type: application/json' http://localhost:9200/walker_pandas/_doc/1/_update -d '{
"script": {
"lang": "painless",
"inline": "ctx._source.last = params.last",
"params": {
"last": "Frost"
}
}
}

Это не:

j = {
"script": {
"lang": "painless",
"inline": "ctx._source.last = params.last",
"params": {
"last": "Frost"
}
}
}

esconf={}
esconf["es.mapping.id" = 1 ]
esconf["es.nodes"] = "localhost"
esconf["es.port"] = "9200"
esconf["es.update.script.inline"] = j
esconf["es.write.operation"] = "update"

df.rdd.saveAsNewAPIHadoopFile(
path='-',
outputFormatenter code hereClass="org.elasticsearch.hadoop.mr.EsOutputFormat",
keyClass="org.apache.hadoop.io.NullWritable",
valueClass="org.elasticsearch.hadoop.mr.LinkedMapWritable",
conf=esconf)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...