Я тестировал запись в текстовый файл просто с помощью команды оболочки или php. Используя цикл while для 1 миллиона циклов, добавляем номер цикла в файл (как $ i \ n). Я подумал, что это самый быстрый способ хранения данных на диске. Где в shell или php, это заняло около 40 секунд на 1 миллион записей.
В качестве альтернативы я использовал быстрые базы данных ключ / значение, такие как QDBM, GDBM и т. Д. Общее время было еще меньше (15-30 с). Каково теоретическое объяснение более быстрого хранения данных через простые системы баз данных? Я думал, что ограничение скорости должно быть аппаратным (например, скорость жесткого диска или процессора).
Другой вопрос: при увеличении цикла со 100к до 1М общее время увеличивалось в 10 раз; но при увеличении с 1М до 10М это заняло в 100 раз больше времени. Какой порог замедляет работу системы?