Как ускорить изменение типа данных MongoDB в большой коллекции? - PullRequest
0 голосов
/ 06 мая 2020

У нас хранится много строк там, где должны быть десятичные дроби. Я пытаюсь преобразовать их с помощью этого. Но это очень медленно. Мне кажется, что просто получить список всех записей, которые нужно изменить, и выполнить одно гигантское обновление может быть намного быстрее? Я что-то делаю неправильно из-за того, что это так медленно?

{ obj.CASH_REPORTED = new NumberDecimal(obj.CASH_REPORTED); db.HOLDINGS.save(obj); });

У нас есть 18 миллионов записей, большинство из которых имеют тип: строка.

Запрос на самом деле не отображается выше:

db.HOLDINGS.find({CASH_REPORTED: {$type: "string"}}
).noCursorTimeout().forEach(function(obj) { 
    obj.CASH_REPORTED = new NumberDecimal(obj.CASH_REPORTED); 
    db.HOLDINGS.save(obj); 
});
...