2015-04-29 4 views
0

У меня есть кластер из лесного камня, который заполняет распределенный IMap данными из отдельной, удаленной (REST) ​​службы. Я хочу сохранить локальную копию данных IMap для целей HA/DR, поэтому я применил MapStore на основе файлов.MapStore в кластере Hazelcast

Это не сработало, как я и ожидал. Я заметил, что каждый узел хранит, вероятно, только элементы в разделе этого узла, что не обязательно является проблемой, но я также заметил, что после перезагрузки всех узлов IMap содержит только элементы с диска первый узел, который запускается.

Не удалось найти хорошее объяснение в документах о том, как MapStore используется на протяжении всего жизненного цикла узлов в кластере. Может кто-нибудь объяснить?

ответ

0

MapStore, как вы уже выяснили, вызывается в узлах, где находится раздел. Так как таблица разделов рандомизирована при запуске, существует очень низкая вероятность получить тот же раздел, что и при последнем перезапуске.

Один из способов обойти это и по-прежнему использовать вашу реализацию - ввести распределенную файловую систему, такую ​​как Ceph или аналогичную для хранения файлов данных. Таким образом, независимо от того, как выглядит таблица разделов после перезапуска, каждый узел может читать свои разделы.

Смежные вопросы