В моем проекте используется несколько обрабатывающих машин и одна складская машина. В настоящее время хранилище организовано с помощью общей папки таблицы файлов MSSQL. Каждый файл в хранилище имеет некоторые метаданные в базе данных.
Машины обработки выполняют задачи, для которых им нужны файлы из хранилища и их метаданные. После выполнения задачи обрабатывающая машина помещает полученные данные обратно в хранилище. Оттуда его забирает другая машина обработки, которая также генерирует некоторый файл и помещает его обратно в хранилище. И так далее.
Все было хорошо, но по мере увеличения числа обрабатывающих машин я обнаружил, что у меня проблемы с производительностью жесткого диска машины хранения.
Поэтому я хочу, чтобы обрабатывающие машины помещали файлы в распределенную FS. поднимать груз с машин хранения, с которых они могут брать данные друг от друга, а не только с машины хранения.
Вы можете предложить конкретную распределенную ФС, которая соответствует моим потребностям? Или есть другой способ решить эту проблему, без него?
Объем данных в FS за один раз составляет несколько терабайт. (хранилище может справиться с этим, но процессоры не могут). Согласованность данных имеет решающее значение. Политика чтения и записи: как только файл записан - его постоянная величина может быть только удалена, но не изменена.
Моя текущая платформа - Windows, но я готов ее сменить, если на другой будет существенно более удобное решение.