Как с помощью Elasticsearch получить более 1 000 000 записей?
Выбирать произвольное количество результатов из Elasticsearch можно с использованием scroll API. 
Это более-менее аналог курсоров в базах данных. Таким образом вы, определяя размеры окна и время жизни токена можете подстроить выборку под свои задачи. 
У меня в проекте приходилось итерировать через scroll и больше миллиона документов - нормально работает.
Для начала запомнить что эластик самая прожорливая тварь на этом свете по ресурсам. Потом вспомнить что эластик это поисковый индекс, а не база данных и доставать из него больше десятка(условно) записей считается преступлением. Потом узнаем что у эластика есть лимиты на максимальную длину индекса для одного запроса и он настраивается (читать про индексы). Перестать это делать по тому что там все-равно есть аппаратные лимиты