Добрый день!
Существует следующая задача:
Имеется такой документ:
{
"Files": [
{
"Name": "first.pdf",
"Content": "base64 строка",
"Id": "906fe807-8a78-4918-91ee-96307c21dd7c"
},
{
"Name": "second.txt",
"Content": "другая base64 строка",
"Id": "b71f1d18-e185-4d9a-bd0e-9ae94ec4bd6f"
}
]
}
Необходимо:
- Проиндексировать его с помощью ingest-attachment плагина.
- Написать поисковый запрос, в ответе на который получим хайлайты по содержимому файлов, по которым можно понять какому файлу они соответствуют.
В версии Elasticsearch 2.* использовался плагин mapper-attachments, и эта проблема решалась индексированием файлов с различными именами полей.
То есть документ индексировался в таком формате:
{
"Files": [
{
"File1": {
"Name": "first.pdf",
"Content": "base64 строка",
"Id": "906fe807-8a78-4918-91ee-96307c21dd7c"
}
},
{
"File2": {
"Name": "second.txt",
"Content": "другая base64 строка",
"Id": "b71f1d18-e185-4d9a-bd0e-9ae94ec4bd6f"
}
}
]
}
При использовании нового плагина непонятно как необходимо описать processor, чтобы было возможно индексировать массив объектов с различными именами.
Или, может быть, есть возможность написать такой поисковый запрос, с помощью которого можно решить эту задачу.
Буду очень благодарен за помощь!