Я читал о GFS и ее модели согласованности, но я не понимаю ее. В частности, кто-то может дать мне конкретный пример сценарий (или объяснения того, почему это не может произойти) из:Модель согласованности файловой системы Google
- одновременной звукозаписывающей Append, что может привести к рекордно дублированию
- одновременно запись дописывания, что может привести к неопределенные регионы
- одновременных операций записи (на один блок), которые могут привести к неопределенным регионов
Привет, Даниэль, спасибо за ваш ответ, он отвечает на большинство моих вопросов. Однако есть еще одна вещь: мой основной источник путаницы исходит из того, что клиент только общается с основной репликой и именно эта реплика ждет подтверждения от других. Поэтому, если одна вторичная реплика не удастся добавить, то первичный узнает, что это произошло, и нет причин увеличивать указатель до конца файла, поэтому новый подход Впоследствии nds должны переопределить эту несогласованную область. Что мне не хватает? – Simone
Я думаю, что можно было бы сделать, как вы говорите. Но я думаю, что GFS этого не делает. Я полагаю, что они упомянули об этом, если бы это сделали. Моя необразованная догадка заключается в том, что это увеличение пропускной способности для одновременных приложений. Если первичке захотелось вернуть указатель в случае сбоя, он не смог бы принять другие добавления к записи во время выполнения. Если он увеличивает указатель даже для неудачных мутаций, он может сразу принять другие приложения. Было бы здорово, если бы кто-то мог подтвердить/исправить эту теорию. –
Как только основной получает сбой на реплике, следующая запись, которую она вставляет, обязательно будет одной и той же правой? Как говорится, «клиент повторяет» операцию. Тогда как другие добавления будут такими, как вы говорите. – sww