Jednak utrata danych zwykle nie ma miejsca z powodu awarii sieci, lecz z powodu projektowania redundancji. Walrus skupia się na tym, kontrolując sposób dystrybucji kopii danych w sieci, w odróżnieniu od obecnych rozwiązań, gdzie to indywidualne firmy przechowujące dane decydują o tym. Podczas przechowywania danych, @Walrus 🦭/acc zapewnia, że fragmenty danych są rozprowadzane na oddzielnych węzłach.

Zamiast tego zapewnia, że każda kopia znajduje się w innym domenie awarii, a nie w wielu kopii w podobnym środowisku. W związku z tym awarie sprzętu, problemy geograficzne lub rozłączenie węzłów nie będą wpływać na wiele kopii w tym samym czasie. W rezultacie dane będą wciąż dostępne, nawet gdy niektóre domeny w sieci doświadczą niestabilności.

$WAL stale sprawdza stan kopii, w przeciwieństwie do redundancji poprzez replikację, która zakłada się na zawsze. Gdy węzeł się wyłączy lub nie spełnia już wymogów dostępności, sieć automatycznie wykona ponowną replikację, a dodatkowi dostawcy przechowywania zostaną przypisani, aby podnieść poziom redundancji do wymaganego poziomu.

Incentywy dla WAL są głęboko powiązane z takim systemem. Dostawcy otrzymują nagrody, o ile ciągle wspierają przypisane im kopie i spełniają progów dostępności. Nagroda dostawcy maleje, jeśli kopia nie jest już dostępna lub jeśli wydajność kopii jest obniżona, co zachęca dostawcę do zapewnienia wysokiej dostępności.

Z punktu widzenia użytkownika oznacza to, że przechowywane dane nie są zależne od statycznych założeń dotyczących niezawodności węzłów. Redundancja jest wymuszana przez protokół. Zamiast pogarszać się przy dodawaniu lub usuwaniu węzłów, dostępność danych poprawia się z upływem czasu.

Walrus osiąga to poprzez połączenie kontroli umiejscowienia kopii, ciągłego obserwowania i mechanizmów incydentów opartych na WAL. Dzięki temu redundancja w systemie staje się żywym systemem, a nie stałą konfiguracją. Zwiększa to odporność sieci w miarę jej skalowania. #walrus