- Регистрация
- 06.05.2016
- Сообщения
- 22
- Благодарностей
- 3
- Баллы
- 3
В каком-то из видео про логику зеннопостера, видел, что, например копирование файла в зенке реализовано следующим образом
-берутся данные из копируемого файла
-создается новый файл
-в него записываются эти данные
-исходный файл удаляется.
Действительно ли это так, и может ли быть затык со скоростью работы и целостностью данных при одновременном парсинге и дописывании данных в 30-50 файлов по 5-10 мегабайт каждый? Т.е. логика действия "дописать в файл" работает так же? Насколько я понимаю принцип работы SSD дисков - "Для SSD же случайная операция чтения ерунда, а вот запись малым блоком приводит к copy-on-write. Минимальный размер записи — 1-2 Мб, пишут 4кб. Нужно прочитать 2Мб, заменить в них 4кб и записать обратно. В результате в SSD'шку уходит, например, 400 запросов в секундну на запись 4кб которые превращаются в чтение 800 Мб/с (!!!!) и записи их обратно. " (с) хабр
Т.е. возможно сама проблема может и не возникнуть, если использовать ramdisk?
В любом случае мне видимо светят натурные эксперименты, опыты с ram диском и т.д, но все равно хотелось бы какую-то отправную точку, хотя бы в выборе между вариантами для лучшей производительности
-писать данные в большие файлы с дозаписью файла (напр. в формат XML)
-писать данные в маленькие файлы (напр. txt) чтобы обрабатывать их уже после завершения парсинга?
-берутся данные из копируемого файла
-создается новый файл
-в него записываются эти данные
-исходный файл удаляется.
Действительно ли это так, и может ли быть затык со скоростью работы и целостностью данных при одновременном парсинге и дописывании данных в 30-50 файлов по 5-10 мегабайт каждый? Т.е. логика действия "дописать в файл" работает так же? Насколько я понимаю принцип работы SSD дисков - "Для SSD же случайная операция чтения ерунда, а вот запись малым блоком приводит к copy-on-write. Минимальный размер записи — 1-2 Мб, пишут 4кб. Нужно прочитать 2Мб, заменить в них 4кб и записать обратно. В результате в SSD'шку уходит, например, 400 запросов в секундну на запись 4кб которые превращаются в чтение 800 Мб/с (!!!!) и записи их обратно. " (с) хабр
Т.е. возможно сама проблема может и не возникнуть, если использовать ramdisk?
В любом случае мне видимо светят натурные эксперименты, опыты с ram диском и т.д, но все равно хотелось бы какую-то отправную точку, хотя бы в выборе между вариантами для лучшей производительности
-писать данные в большие файлы с дозаписью файла (напр. в формат XML)
-писать данные в маленькие файлы (напр. txt) чтобы обрабатывать их уже после завершения парсинга?