Elasticsearch переходит с устаревшего "_all" на "copy_to" - PullRequest
0 голосов
/ 28 мая 2020

Я использовал устаревший _all для сопоставления поля в Elasticsearch v7.6, и я думаю, что мне следует переключиться на copy_to согласно документации

Однако я m не уверен, что это правильная реализация, так как некоторые результаты поиска немного отличаются от того, как это было раньше.

старая карта полей

"narrative": {
    "type": "object",
    "properties": {
        "_all": {
            "type": "text",
            "analyzer": "search_synonyms"
        }
    }
},

новая карта полей

"narrative": {
    "type":"object",
    "properties":{
        "tor_analysis_result":{
            "type": "text",
            "analyzer": "search_synonyms",
            "copy_to": "full"
        },
        "status_narrative":{
            "type": "text",
            "analyzer": "search_synonyms",
            "copy_to": "full"
        },
        "closure_narrative":{
            "type": "text",
            "analyzer": "search_synonyms",
            "copy_to": "full"
        },
        "tpoc_rejection_notes":{
            "type": "text",
            "analyzer": "search_synonyms",
            "copy_to": "full"
        },
        "analysis_results":{
            "type": "text",
            "analyzer": "search_synonyms",
            "copy_to": "full"
        },
        "full": {
            "type": "text",
            "analyzer": "search_synonyms"
        }
    }
},

Я также использую narrative.full вместо narrative.* при выполнении поиска с несколькими совпадениями с использованием этого поля. Я что-то делаю не так?

EDIT: поисковый запрос

{
  _source: [
    'baseline',
    'cpcr',
    'date',
    'description',
    'dev_stat',
    'element',
    'event',
    'id'
  ],
  track_total_hits: true,
  query: {
    bool: {
        filter: [],
        must: [{
            multi_match:{
                query: "show",
                fields: ["cpcr","description","narrative.full","title","tor"],
                analyzer: "search_synonyms"
            }
        }]
    }
  },
  highlight: {
    pre_tags: [ '<es_highlight>' ],
    post_tags: [ '</es_highlight>' ],
    fields: { '*': {} }
  },
  sort: [],
  from: 0,
  size: 10
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...