Как я могу оптимизировать упругость поиска по поиску - PullRequest
0 голосов
/ 26 сентября 2019

У меня есть один индекс со 100 миллионами документов, на 12 узлах данных (с 12 осколками), 16 ГБ оперативной памяти, 500G заполняют каждый узел;запрос является фильтром по biz id (ключевому слову) и диапазону дат и диапазону amt;самый большой бизнес-идентификатор имеет 20 миллионов документов, а 95% бизнес-идентификаторов имеют в среднем только 1000 документов;так что проблема в том, что когда запрос по наибольшему идентификатору, время отклика занимает 4 + с, для запроса небольшого идентификатора требуется всего 0,02 с, после того, как в профиле я найду разбивку next_doc, больше всего времени, как мне оптимизировать это?

Я не могу разделить самый большой идентификатор на другой индекс, потому что я делю индекс по месяцам, и я не могу предсказать будущий самый большой идентификатор.

запрос:

POST acoce01itftrxrtlevtindex20190101/_search

{
"size": 2,
"from": 0,
"profile": true,
"query": {
    "bool": {
        "filter": [
            {
                "term": {
                    "custId": "9000000001"
                }
            },
            {
                "terms": {
                    "actId": [
                        "182406121632442"
                    ]
                }
            },
            {
                "range": {
                    "trxDtAndTm": {
                        "from": "2019-01-01",
                        "to": "2019-05-10",
                        "include_lower": true,
                        "include_upper": true,
                        "format": "yyyy-MM-dd"
                    }
                }
            },
            {
                "range": {
                    "trxAmtAbs": {
                        "from": 1,
                        "to": 9999999999,
                        "include_lower": true,
                        "include_upper": true
                    }
                }
            }
        ]
    }
},

"sort": [
    {
        "trxDtAndTm": {
            "order": "desc"
        }
    },
    {
        "actTrxSeqNbr": {
            "order": "desc"
        }
    }
],
"_source": [
    "trxSeq"
]

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...