База данных шахматных окончаний
- 1 year ago
- 0
- 0
Согласованность данных (иногда консистентность данных , англ. data consistency ) — согласованность данных друг с другом, целостность данных, а также внутренняя непротиворечивость.
В терминах ER-модели , условия согласованности могут включать в себя указание того, какие значения могут принимать атрибуты узлов, какие связи могут устанавливаться между узлами, каково минимальное и максимальное число связей определённого типа, в котором может участвовать один узел.
Целостность базы данных означает соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам.
Чтобы сложные структуры данных выполняли свою функцию, на их содержимое приходится накладывать особые условия — условия согласованности . Другими словами: если записать случайные байты в числовой массив фиксированной длины, мы получим случайную кучу чисел, но ничего не «сломаем». Если записать случайные байты, например, в строку в UTF-8 , мы можем получить цепочку, с точки зрения UTF-8 бессмысленную — целостность нарушена. Многие задачи, решаемые алгоритмистами и программистами, связаны с поиском эффективной структуры данных и реализацией механизмов поддержки её согласованности.
Например, условия согласованности двоичного дерева поиска таковы:
nil
в «листьях» дерева) не ведёт в никуда.
parent
на родительский узел, то возникает дополнительное условие согласованности: в каждом узле
X
указатель на родительский узел должен указывать на такой узел, в котором ровно один из указателей на детей (
left
или
right
) указывает на узел
X
.
Одно из определений инкапсуляции в ООП — никакой вызов метода, никакое присваивание полей не сможет увести объект из согласованного состояния в несогласованное.
|
В статье
не хватает
ссылок на источники
(см.
рекомендации по поиску
).
|