Частичное упорядочение событий в распределенной системе

Мне было интересно, может ли кто-нибудь объяснить в непрофессиональных терминах, что частично упорядочивает события в распределенной системе? Кроме того, что такое общий порядок?

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

Большое спасибо

Ответ 1

Общее упорядочение - это упорядочение, которое определяет точный порядок каждого элемента в ряду.

Частичное упорядочение элементов в серии - это упорядочение, которое не указывает точный порядок каждого элемента, но определяет только порядок между определенными ключевыми элементами, которые зависят друг от друга.

Значение этих слов точно так же в контексте распределенных вычислений. Единственное значение распределенных вычислений для этих терминов заключается в том, что частичное упорядочение событий намного больше, чем полное упорядочение. В локальном однопоточном приложении порядок, в котором происходят события, полностью упорядочен, неявно, поскольку процессор может делать только одно за раз. В распределенной системе вы обычно только координируете частичное упорядочение тех событий, которые имеют зависимость друг от друга, и пусть другие события происходят в любом порядке.

Пример, взятый из комментариев: если у вас есть три события {A, B, C}, они полностью упорядочены, если они всегда должны выполняться в порядке A > B > C. Однако, если A должно произойти до C, но вам все равно, когда произойдет B, тогда они частично упорядочены. В этом случае мы будем говорить, что последовательности A > B > C, A > C > B и B > A > C удовлетворяют частичному упорядочению