Как отфильтровать много значений одновременно? - PullRequest
1 голос
/ 28 мая 2019

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

На данный момент у меня есть этот запрос, и я использую цикл for для фильтрации по uuid.

for id in id_list:
    filter (id)

def filter(id): 

    result = requests.get(
            settings + '/data/_search?size=10000',
            json={
                "query": {
                    "bool": {
                        "filter": {
                            "terms": {
                                "id": id
                            }
                        }
                    }
                },
                "_source": {
                    "exclude": ["type", "date"]
                }
            }
        )

Я хотел бы сделать только один запрос, чтобы получить все документы за один раз, чтобы оптимизировать мой код.

1 Ответ

2 голосов
/ 28 мая 2019

Запрос терминов принимает массив аргументов, см. ссылку для примера.

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