
Какое распределенное хранилище данных следует использовать для надежного хранения данных на множестве узлов со слабым сетевым соединением между ними?
Мне нужно что-то, что:
- Не ожидает, что все узлы будут доступны в настоящее время, включая поддержку работы в автономном режиме;
- Первоначально хранить данные локально, но со временем (когда сетевое взаимодействие будет хорошим и больше узлов будет подключено) распространить их на другие необходимые узлы;
- Иметь хорошую автоматическую перебалансировку и восстановление в случае присоединения и выхода узлов из сети;
- Обрабатывать узлы, которые сильно различаются по емкости, сохраняя только небольшие и высокоприоритетные данные на маленьких узлах;
- Относитесь к локальному узлу по-особенному: «мои» данные всегда сначала сохраняются на локальном узле, а затем копируются на другие узлы.
Большинство решений, таких как Tahoe-LAFS или GlusterFS, похоже, ожидают более или менее стабильного набора узлов, поддерживаемых в сети и подключенных к хорошей сети, без длительных запланированных простоев. Существует ли специальное распределенное хранилище, которое ожидает, что узлы будут находиться в автономном режиме на регулярной основе?