У меня есть документ с сохраненным полем типа minhash, я хотел бы получить это поле и преобразовать его в текст, термин или строку, чтобы сделать его доступным для поиска.И я хотел бы попробовать это с манипулированием полем ctx, вот документация:
{
"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=="
]
}
}
]
}
}
В соответствии с эластичным поиском, вы можете сделать это с _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 + ' ' "
}
}
Приведенный выше код не работает.У кого-нибудь есть лучший подход?