Добрый всем день.
Сломал голову.
Есть 7млн записей в таблице.
Нужно их отработать (перенести в ElasticSearch)
делаю так
$query = Lot::find()->orderBy('id');
foreach ($query->each() as $lot) {
// тут предполагается обработка
}
Приложение падает.
Конда записей было 1.5 млн - отрабатывало, сейчас их 7млн и ни в какую.
Не хочу делать лишних движений типа limit и offset, хочу понять, почему each() не работает как должен.
ActiveRecord и миллионы записей
Re: ActiveRecord и миллионы записей
Падает по какой причине? Память, время, ошибка?
Если по времени, то надо увеличить в php.ini время выполнения
Если по времени, то надо увеличить в php.ini время выполнения
-
- Сообщения: 179
- Зарегистрирован: 2018.02.05, 13:41
- Контактная информация:
Re: ActiveRecord и миллионы записей
а вы как запускаете приложение?RomanV писал(а): ↑2018.09.12, 09:59 Добрый всем день.
Сломал голову.
Есть 7млн записей в таблице.
Нужно их отработать (перенести в ElasticSearch)
делаю так
$query = Lot::find()->orderBy('id');
foreach ($query->each() as $lot) {
// тут предполагается обработка
}
Приложение падает.
Конда записей было 1.5 млн - отрабатывало, сейчас их 7млн и ни в какую.
Не хочу делать лишних движений типа limit и offset, хочу понять, почему each() не работает как должен.
Re: ActiveRecord и миллионы записей
удаляй модель после обработки и вызывай сборщик мусора, иначе по памяти упадешь