У меня есть python script, который читает файл по строкам и смотрит, соответствует ли каждая строка регулярному выражению.
Я хотел бы улучшить производительность этого script, используя карту памяти для файла перед поиском. Я рассмотрел пример mmap: http://docs.python.org/2/library/mmap.html
Мой вопрос в том, как я могу mmap файл, когда он слишком большой (15 ГБ) для памяти моей машины (4 ГБ)
Я прочитал файл следующим образом:
fi = open(log_file, 'r', buffering=10*1024*1024)
for line in fi:
//do somemthong
fi.close()
Так как я устанавливаю буфер на 10 МБ, с точки зрения производительности, то он такой же, как у mmap 10 Мбайт файла?
Спасибо.