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