Я хочу оптимизировать оператор запроса elasticsearch

      {
    "from": 0,
    "size": 24,
    "query": {
        "bool": {
            "must": [
                {
                    "multi_match": {
                        "query": "puzzle",
                        "fields": [
                            "editorialTags^1.0",
                            "sellerTags^1.0"
                        ],
                        "type": "most_fields",
                        "operator": "OR",
                        "slop": 0,
                        "prefix_length": 0,
                        "max_expansions": 50,
                        "minimum_should_match": "3<75%",
                        "zero_terms_query": "NONE",
                        "auto_generate_synonyms_phrase_query": true,
                        "fuzzy_transpositions": true,
                        "boost": 1
                    }
                }
            ],
            "filter": [
                {
                    "bool": {
                        "must": [
                            {
                                "nested": {
                                    "query": {
                                        "terms": {
                                            "products.productTypeId": [
                                                1233
                                                1234,
                                                1235,
                                                1236,
                                                1239,
                                                1247,
                                                1248,
                                                1287,
                                                1290,
                                                1292
                                            ],
                                            "boost": 1
                                        }
                                    },
                                    "path": "products",
                                    "ignore_unmapped": false,
                                    "score_mode": "avg",
                                    "boost": 1
                                }
                            },
                            {
                                "nested": {
                                    "query": {
                                        "term": {
                                            "products.locations": {
                                                "value": "US-1",
                                                "boost": 1
                                            }
                                        }
                                    },
                                    "path": "products",
                                    "ignore_unmapped": false,
                                    "score_mode": "avg",
                                    "boost": 1
                                }
                            },
                            {
                                "nested": {
                                    "query": {
                                        "terms": {
                                            "products.storeId": [
                                                490227
                                            ],
                                            "boost": 1
                                        }
                                    },
                                    "path": "products",
                                    "ignore_unmapped": false,
                                    "score_mode": "avg",
                                    "boost": 1
                                }
                            }
                        ],
                        "adjust_pure_negative": true,
                        "boost": 1
                    }
                }
            ],
            "adjust_pure_negative": true,
            "boost": 1
        }
    },
    "explain": false,
    "_source": {
        "includes": [
            "designId",
            "memberId",
            "isPersonalizable",
            "sellerTags",
            "products.productId",
            "products.productTypeId",
            "products.imageOneId",
            "products.imageTwoId",
            "products.hasPersonalizableSvg",
            "products.storeId",
            "products.caption"
        ],
        "excludes": []
    }
}

У меня есть приведенный выше оператор запроса, иногда для получения ответа требуется около 2 секунд. Для индекса ниже ситуация:

      uuid                   pri rep docs.count docs.deleted store.size pri.store.size

9fQDPMIfQIK0SyI-lBzGvw  14   1  888171159        46669    532.4gb        266.1gb

У меня 14 узлов данных, r6g.4xlarge.search(16 ядер, 128 ГБ, SSD) на AWS(OpenSearch)

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

Я попытался добавить узлы данных к 18, но решил эту проблему.

0 ответов

Другие вопросы по тегам