1. Не надо совершать 100500 операций с файлами в 1 цикле. Хотя ФС жестоко закеширована, но размеры кэшей ограничены. И если выйти за их пределы - начнется торможение, т.к. операция будет ждать реальной записи на Flash, а не помещения в кэш.
2. Вы используете текстовый тип архива, разделяя записи переводом строки. Поэтому при поиске 2/3 нужно не только математически рассчитать 1/3 от конца, но и найти начало след. записи, чтобы архив не был порезан посреди значения.
3. Желательно иметь для записей время (ну это на будущее)
4 . А так идея верна. Единственно не надо каждое значение класть во Flash сразу. Накапливайте несколько.