@jekanok

Как сохранить все записи в elasticSearch?

Здравствуйте, хотел использовать es для своего проекта, записей 30к. Разбил 30к. По 2500, но почему-то на каждом шагу у меня сохраняет только 1250. Изменяю шаг, сохраняет только полови...., почему так происходит непонятно. Может у кого-то была такая проблема дайте знать, спасибо!
async save(records) {
    try {
      return await this.elasticsearchService.bulk({
        body: records,
      })
    } catch (e) {
      console.log(e.message)
      throw new UnauthorizedException(e.message)
    }
  }

Данные для примера
api_1            | {
api_1            |   index: { _index: 'cities', _id: new ObjectId("63cd413d738f796e854d994b") },
api_1            |   id: new ObjectId("63cd413d738f796e854d994b"),
api_1            |   title: '????????',
api_1            |   community: {
api_1            |     _id: new ObjectId("63cd3fd2d730221b33bc7f2b"),
api_1            |     community: '????????? ?????'
api_1            |   },
api_1            |   category: { _id: new ObjectId("63cd3f5d192c730401f513cf"), category: '????' },
api_1            |   region: {
api_1            |     _id: new ObjectId("63cd3f79f3caa319475d16c4"),
api_1            |     region: '????????? ???????'
api_1            |   }
api_1            | }
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 2
akelsey
@akelsey
Эластик использует пагинацию, максимальное кол-во возвращаемых документов даже если сильно захотеть вроде 10к, т.е. в любом случае нужно юзать апи - каждый раз получая серию документа - он возвращает идентификатор, с ним нужно снова запрашивать порцию документов, до тех пор пока ид != 0.
Если индекс статический можно использовать from size & search after

но правильно все же использовать scroll id

как это дело напитахонить
Ответ написан
Комментировать
2ord
@2ord
1. Проверить ошибки в логах
2. Проверить маппинг полей
3. Проверить объём нагрузки в байтах.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
SpectrumData Екатеринбург
от 300 000 до 400 000 ₽
LIME Москва
от 280 000 до 350 000 ₽
24 нояб. 2024, в 18:08
1000 руб./за проект
24 нояб. 2024, в 17:52
3000 руб./за проект
24 нояб. 2024, в 16:14
1000 руб./за проект