Быстрый расчет показывает, что вы можете использовать до 50 ГБ данных в день. Если для этих данных нет специфической обработки SQL, то не представляется возможным сохранить ее в базе данных.
Следующим решением будут файлы на диске, и, поскольку вы работаете с простым текстом (не двоичным), возможно, быстрое сжатие также поможет. Однако, поскольку файлы будут такими маленькими (300 байт), сжатие не даст никаких ощутимых результатов. Данные должны быть сгруппированы в большие файлы, например, один фрагмент данных на строку и один такой файл в день. Этот файл будет достаточно большим, чтобы сжатие могло дать удовлетворительные результаты, если на диске возникнет проблема.
Если пространство не является проблемой и / или следует ожидать частой обработки этих данных или даже одновременной обработки данных из разных дней, тогда один фрагмент данных на файл будет лучшим выбором. Это решение, в свою очередь, создаст проблему с наличием большого количества файлов в папке, что не только скажется на ограничениях файловой системы, но также создаст проблемы с производительностью при работе с этими файлами, и эти проблемы будут влиять на производительность всей машины. .
Для хранения и доступа к большому количеству файлов лучше использовать хранилище многораздельных папок. То есть каждый файл должен иметь уникальное имя и затем будет помещен в определенную иерархию папок в соответствии с его именем. Этот подход имеет несколько преимуществ:
- сохраняет количество файлов в папке управляемым (когда это число увеличивается, нужно всего лишь углубиться на одну иерархию папок, чтобы экспоненциально увеличить «доступность хранилища»)
- легко найти местоположение файла или место для хранения файла в соответствии с соглашением об именах
Пример разбиения:
- имена файлов имеют следующий формат:
yyyymmddhhss-<counter>.txt
(например: 201104252345-1.txt
, 201104252345-2.txt
и т. Д.)
- структура папок соответствует временным частям:
\yyyy\mm\dd\
или yyyy\mm\dd\hh\
и т. Д. (Столько уровней, сколько требуется решению для поддержания количества управляемых файлов)
- Результат:
201104252345-1.txt
сохраняется как 2011\04\25\201104252345-1.txt
и т. Д.