Ссылочная целостность и целостность данных: сходства и различия

5 августа 2021 г.

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

Что такое целостность данных?

Целостность данных — это общая точность данных в базе данных. Параметры базы данных, касающиеся типов данных, которые она может хранить, определяют целостность данных внутри. Набор процессов и правил для ввода данных заложен в структуру базы данных для создания параметров. При соблюдении параметров эти данные могут оставаться полными и точными, независимо от того, как долго вы их храните или как часто вы к ним обращаетесь. Целостность данных также может относиться к тому, насколько защищены данные в базе данных от внешних сил, пытающихся получить к ним доступ или манипулировать ими.

Примером процесса, обеспечивающего целостность данных, является правило в структуре таблицы или базы данных, которое требует, чтобы все числа были целыми положительными числами. Это может предотвратить путаницу и обеспечить единообразие всех данных. Однако существует множество типов целостности данных, которые могут быть в базе данных. Вот два разных типа целостности данных:

Физическая целостность

Физическая целостность — это защита хранимых данных от любых событий, препятствующих извлечению данных. Примеры компрометирующих событий против физической целостности включают стихийные бедствия, перебои в подаче электроэнергии или взлом. Эти события нарушают физическую целостность, поскольку вы больше не можете получить доступ к данным. Человеческая ошибка или эрозия хранилища также могут помешать вам получить доступ к базе данных и получить данные, что создает проблемы для физической целостности, несмотря на то, что они не являются конкретными физическими событиями.

Логическая целостность

Логическая целостность относится к необходимости, чтобы данные имели смысл, учитывая их контекст в базе данных. Логическая целостность требует, чтобы данные были точными, полными и неизменными. Он также полагается на защиту от человеческих ошибок и хакеров, чтобы сохранить логику данных, а не их доступность. Ссылочная целостность — это тип логической целостности, но есть также три других типа:

  • Целостность сущностей. Целостность сущностей — это создание уникальных значений, которые присваиваются частям данных, чтобы предотвратить дублирование данных. Это позволяет связывать данные из разных таблиц в базе данных, что означает, что информация из одной таблицы может автоматически отображаться в другой.

  • Целостность домена: домен — это набор значений, которые вы можете иметь в столбце в соответствии с критериями базы данных. Домен может иметь ограничения на основе значения, формата или количества данных. Целостность домена относится к процессам в базе данных, которые гарантируют, что данные в таблице находятся в пределах домена.

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

Что такое ссылочная целостность?

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

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

Сходства между ссылочной целостностью и целостностью данных

Ссылочная целостность является частью целостности данных, поэтому между этими двумя понятиями есть некоторое сходство:

Точность

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

Риск

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

Другие типы ошибок также могут повлиять на целостность данных в вашей базе данных:

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

  • Ошибки и вирусы. Ошибки и вирусы — это части программного обеспечения, которые могут повредить ваши данные, нарушив их целостность.

  • Скомпрометированное оборудование: Скомпрометированное оборудование может включать сбои компьютера или сервера и может привести к неправильному сохранению ваших данных, удалению части ваших данных или невозможности доступа к базе данных.

Ограничения

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

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

Различия в целостности данных и ссылочной целостности

Вот некоторые различия между целостностью данных и ссылочной целостностью:

Ширина

Ссылочная целостность — это только часть целостности данных. Помимо других типов целостности, перечисленных выше, целостность данных также охватывает следующие понятия:

  • Безопасность данных. Безопасность данных — это набор мер, предпринимаемых пользователем для предотвращения повреждения данных внешними атаками. Примером этого является частая смена пароля.

  • Качество данных: Качество данных — это стандарты, установленные потребностями вашей компании. Возраст данных, актуальность, точность и надежность могут повлиять на их качество. Например, данные, собранные совсем недавно, имеют более высокое качество.

Фокус

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

Согласие

Целостность данных является ключом к соблюдению нормативных требований, которые защищают компании от санкций, вызванных неосторожным обращением с личными данными своих клиентов. Например, в США существует множество правил, используемых для защиты данных в зависимости от штата, в дополнение к Закону о Федеральной торговой комиссии, который ссылается на защиту данных на федеральном уровне. Ссылочная целостность является частью целостности данных, но не влияет на безопасность личной информации.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *