Узго́дженість (або коре́ктність) у системах баз даних відноситься до вимоги, що будь-яка дана транзакція бази даних повинна змінювати дані, що впливають, лише дозволеними способами. Будь-які дані, записані в базу даних, мають бути дійсними відповідно до всіх визначених правил, включаючи обмеження, каскади, тригери та будь-яку їх комбінацію. Це не гарантує коректність транзакції всіма способами, які хотів програміст прикладних програм (це відповідальність коду на рівні програми), а лише те, що будь-які помилки програмування не можуть призвести до порушення будь-яких визначених обмежень бази даних. C. J. Date, "SQL and Relational Theory: How to Write Accurate SQL Code 2nd edition", O'reilly Media, Inc., 2012, pg. 180.
Як гарантія ACID Узгодженість є однією з чотирьох гарантій, які визначаються властивостями транзакцій ACID; однак існує значна неясність щодо природи цієї гарантії. Її по-різному визначають як:
Гарантія того, що будь-які транзакції, розпочаті в майбутньому, обов'язково будуть мати наслідки інших транзакцій, здійснених у минулому Гарантія того, що обмеження бази даних не порушуються, особливо після здійснення транзакції Гарантія того, що операції в транзакціях виконуються точно, коректно та валідно, що стосується семантики програми
Оскільки ці різні визначення не є взаємовиключними, можна розробити систему, яка гарантує «послідовність» у кожному сенсі цього слова, як це, можливо, робить більшість систем керування реляційними базами даних, які широко використовуються сьогодні.
Як компроміс CAP Теорема CAP заснована на трьох компромісах, одним з яких є «атомарна узгодженість» (скорочено до «узгодженість» для абревіатури), про що автори відзначають: «Обговорення атомарної узгодженості дещо відрізняється від розмови про базу даних ACID, оскільки узгодженість бази даних відноситься до транзакцій, тоді як атомарна узгодженість відноситься лише до властивості однієї послідовності операцій запиту/відповіді. І воно має інше значення, ніж атомарність в ACID, оскільки включає обидва поняття бази даних: атомарність і узгодженість» У теоремі CAP ви можете мати лише дві з наступних трьох властивостей: узгодженість, доступність або стійкість до поділу. Таким чином, у деяких системах баз даних, можливо, доведеться замінити узгодженість.
Див. також
Модель узгодженості Теорема CAP Цілісність посилання Кінцева консистенція
Примітки