Seminarium: Systemy Rozproszone
20 stycznia 2022 12:15, sala 4070, transmisja online
Michał Niciejewski, Filip Mikina



CRaft: rozszerzenie Rafta o erasure coding poprawiające koszt użycia dysku i sieci



Protokoły konsensusu pozwalają na tworzenie wysoce niezawodnych i dostępnych serwisów. Protokoły te polegają na całkowitej replikacji zapisywanych danych na wiele serwerów, przez co jeśli jakaś część serwerów przestanie działać, wciąż będzie możliwe odczytywanie i zapisywanie danych. Całkowita replikacja danych ma jednak duży wpływ na efektywność algorytmu. Powoduje wysoki koszt przesyłu danych po sieci oraz ich zapisu w pamięci trwałej.

Erasure coding jest techniką korekcji błędów polegającą na rozszerzeniu danych o dodatkowe znaki w taki sposób, że w przypadku utraty pewnej liczby znaków, oryginalne dane wciąż będą mogły być odtworzone. Erasure coding może zostać użyte w systemach rozproszonych do zredukowania kosztów replikacji danych - zamiast przesyłać całkowicie zreplikowane dane, można przesyłać część, z których, dzięki erasure codes, będzie można odtworzyć oryginalne dane.

Podczas prezentacji opowiem o CRaft - rozszerzeniu algorytmu Raft o erasure codes, zapewniającym taką samą żywotność jak oryginalny Raft, ale w typowym przypadku pozwalającym znacząco zredukować ilość przesyłanych i zapisywanych danych.

Zapraszam,
Michał Niciejewski



Bibliografia:





Fundamentals of stream processing with Apache Beam



`Stream processing is a data processing technology used to collect, store, and manage continuous streams of data as it’s produced or received. It has grown exponentially in recent years due to its powerful ability to simplify data architectures, provide real-time insights and analytics, and the ability to react to time-sensitive data like IoT data, or multiplayer video games.` [Source, confluent]

At the meeting, I'll introduce basic concepts used in stream processing such as processing and event time, out-of-order data processing, watermarks, triggers, incremental data processing, and windowing. Particularly, we will have a bird's-eye (consumer) view of Google's Beam model, which is widely used for portable and modular programming in such use cases..

Zapraszam,
Filip Mikina



Bibliografia: