Модель узгодженості

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

Модель узгодженості - підхід, який використовується розподілених системах (розподіленій спільній пам'яті[en], СКБД, файловій системі ), для забезпечення гарантій узгодженості даних .

Основні моделі узгодженості:

Слід звернути увагу на питання лінеаризованості програми, в якій замість операцій читання і запису використовуються операції над об'єктами (наприклад, функції, методи), а стан пам'яті - це стан об'єктів. Лінеаризовані програми використовуються для систем з об'єктною організацією спільної пам'яті . На відміну від решти систем, такі програми не можуть безпосередньо використовувати спільні змінні (тобто стан об'єктів), а лише через спеціальні функції/методи (операції). Для цих систем лінеаризовність збігається із суворою узгодженістю.

Сувора узгодженість[ред. | ред. код]

Сувора узгодженість англ. Strict consistency – це найсильніша модель узгодженості. В рамках цієї моделі запис у змінну будь-яким процесором має миттєво ставати видимим усім іншим процесорам.

Можна уявити, ніби існує глобальний годинник, який відміряє час відрізками, періодами або квантами. Наприкінці кожного кванта, кожен запис повинен відобразитися у всіх вузлах. Наступна операція може відбутися лише в наступному часовому інтервалі.

Це детермінована модель. В ній програміст завжди отримує очікуваний результат. Проте її практичне застосування в розподілених системах обмежується уявними експериментами та формалізмом, оскільки миттєвий обмін повідомленнями неможливий. Вона не дає відповіді на питання про вирішення конфліктів при одночасному записі в один і той же елемент даних, тому що початково припускає неможливість одночасного запису.

Література[ред. | ред. код]

  • Kshemkalyani, A.D. and Singhal, M. Distributed Computing: Principles, Algorithms, and Systems. — Cambridge University Press, 2011. — ISBN 9781139470315.

Посилання[ред. | ред. код]