我有一个文档,其中存储的字段类型为minhash,我想获取此字段并将其转换为文本,术语或字符串以使其可搜索。我想用ctx字段操作尝试一下,这是doc:
{
"took" : 1,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : 1,
"max_score" : 1.0,
"hits" : [
{
"_index" : "test_minhash_test",
"_type" : "_doc",
"_id" : "1",
"_score" : 1.0,
"_source" : {
"message" : "A lazy dog.",
"test" : "null "
},
"fields" : {
"minhash_value" : [
"JDIE+qAD5uvfOiE8i8afSg=="
]
}
}
]
}
}
根据elasticsearch,您可以使用_fields['field_name'].value
来做到这一点,但是以某种方式这是行不通的...
https://www.elastic.co/guide/en/elasticsearch/reference/6.7/modules-scripting-fields.html
POST /test_minhash_test/_doc/1/_update
{
"script": {
"lang": "painless",
"source": "ctx._fields.minhash_value = ctx._fieldsminhash_value + ' ' "
}
}
上面的代码不起作用。有没有更好的方法?