Все сделано довольно просто: селект из базы данных, обработка скриптом пхп, запись обратно в базу.
Вся беда в том, что на полумиллионе заканчивается память сервера и скрипт вываливается в ошибку.
Пробовал сделать цикл на php, обрабатывать пачками по 10000 строк и очищать память между итерациями — не тут то было! Никакие unset не помогают, пхп упорно держит всё в оперативке до окончания цикла.
Отсюда возникла идея, стартовать скрипт пхп из цикла на аяксе, можно даже с промежуточным отображением результатов.
Вся беда в том, что мои познания в яваскрипте не просто никакие, а даже слегка минусовые.

Кто может подсказать, возможно ли сделать такое?
То есть запуск яваскрипта по клику, из яваскрипта отправляется значение начала выборки для скрипта пхп, тот выбирает строки из базы с ограничением LIMIT $n, 10000, обрабатывает эти строки, отправляет значение $n яваскрипту и прекращает свою работу, тот увеличивает значение на 10000, отображает промежуточный результат (можно и не отображать) и снова запускает скрипт пхп с новым значением $n