Введение
В основной памяти компьютера, вспомогательных хранилищах и компьютерных шинах избыточность данных - это наличие данных, которые дополняют фактические данные и позволяют исправлять ошибки в сохраненных или переданных данных. Дополнительные данные могут быть просто полной копией фактических данных (тип повторяющегося кода) или только отдельными фрагментами данных, которые позволяют обнаружить ошибки и восстановить потерянные или поврежденные данные до определенного уровня. Например, включая вычисленные контрольные биты, память ECC способна обнаруживать и исправлять однобитовые ошибки в каждом слове памяти, в то время как RAID 1 объединяет два жестких диска (HDD) в логический блок хранения, который позволяет сохранить данные, чтобы пережить полный сбой одного диска. Избыточность данных также может использоваться в качестве меры против коррупции данных в режиме молчания; например, файловые системы, такие как Btrfs и ZFS, используют контрольную сумму данных и метаданных в сочетании с копиями сохраненных данных для обнаружения коррупции данных в режиме молчания и восстановления ее последствий.
В системах баз данных
Хотя по своей природе они различны, избыточность данных также встречается в системах баз данных, в которых значения неоправданно повторяются в одной или нескольких записях или полях в рамках таблицы или где поле повторяется в двух или нескольких таблицах. Часто это встречается в ненормированных конструкциях баз данных и приводит к усложнению управления базами данных, введению риска повреждения данных и увеличению требуемого объема хранения. Когда это делается специально из ранее нормализованной схемы базы данных, это может рассматриваться как форма денормализации базы данных; используется для улучшения производительности запросов в базе данных (сокращения времени ответа базы данных). Например, когда данные о клиентах дублируются и прикрепляются к каждому купленному продукту, избыточность данных является известным источником несоответствия, поскольку данный клиент может появляться с разными значениями для одного или нескольких своих атрибутов. Избыточность данных приводит к аномалиям данных и коррупции, и, как правило, следует избегать их при проектировании; применение нормализации базы данных предотвращает избыточность и позволяет наилучшим образом использовать хранилище.