Частичное упорядочение событий в распределенной системе - PullRequest
17 голосов
/ 07 января 2011

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

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

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

1 Ответ

36 голосов
/ 07 января 2011

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

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

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

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

...