データインテグリティ(DI)

信頼の理由

データインテグリティ(DI)とは?

データインテグリティ(DI)とは、データが正確で一貫性もあり、信頼できる状態が客観的に保証されている状態を意味します。データのライフサイクル(生成されてから廃棄されるまでの過程)全体で、不正アクセスや意図しない変更から守られている状態です。データが中断から復旧したときも、その信頼性が保証されていることが重要です。

データインテグリティは、ビジネス上の決定、科学研究、公共政策など、あらゆる分野で正確な情報に基づく分析や意思決定を行うために不可欠です。災害発生時やシステム障害からの迅速な回復にも重要な役割を果たします。物理レベル(ハードウェアの故障や停電からデータを保護するなど)と論理レベル(データが正しくアクセス可能で、誤りがない状態を維持するなど)の両方の視点で考えることが大切です。

データの整合性が損なわれる原因としては、データ形式の誤り、構文エラー、マルウェアやランサムウェアの攻撃、その他の悪意ある行為などが挙げられます。

データインテグリティ(DI)の詳細

データの整合性は、階層型データベースとリレーショナルデータベースの両方で保持されます。整合性を確保するためには、データベースを設計する際に特定の標準手順やルールを適用します。エラーをチェックし、データを検証するためにさまざまな方法が使われます。

リレーショナルデータベースで、データの整合性を保つためによく使われる3つの制約は以下のとおりです。

実体完全性

実体完全性は、データベースのテーブル内のデータが一意(独自で、他のどのデータ項目とも重複しない状態)であり、信頼できることを保証するルールです。任意のテーブルにおいて各行が重複しないこと、そして主キー(データベースのテーブル内の各行を一意に識別するために使用される列)となる各列にnull値が存在しないことを保証する性質を指します。

実体完全性のルールにより、データベース内の各エンティティ(テーブル内の行)は一意に識別可能であり、データの整合性が保たれます。

参照整合性

参照整合性は、データが一貫して保存・使用されることを保証するために適用されるルールを指します。データベース内の異なるテーブル間の関連付けが正しく維持されることを保証します。主に外部キーを通じて適用されることが多いです。

外部キーは、あるテーブルの列であり、別のテーブルの主キーを参照しています。外部キーのルールによると、外部キー値は以下の2つの可能性を持ちます:

  1. 外部キー値が別のテーブルの主キー値を正確に参照している場合、テーブル間の関係が確立されます。
  2. 外部キー値がnullの場合、関係が存在しないか、あるいはその関係が不明であることを示します。

参照整合性はデータベース内のテーブル間における正しいリンクを確保するためのルールであり、外部キーはこれらのリンクを作成するために使用されるカラムです。

ドメイン整合性

ドメイン整合性は、データベース内の各データが正しい種類や形式であることを保証するルールのことです。例えば「住所」の入力欄に「誕生日」を入力しようとした場合、システムはエラーメッセージを表示して、住所の情報しか入力できないようにします。

データの整合性を保つことにより、データベース内のデータが正しくリンクされ、必要な時に正確に取り出せます。データを安全に保ち、効率的に使用できるようにするために重要なことです。明確に定められたデータ整合性システムを持つことで、データベースの安定性・性能・再利用可能性・保守性が向上します。

データベース自体でこれらの整合性機能を実装できない場合、ソフトウェアを通じてドメイン整合性を実現する必要があります。データの整合性を守るためには、定期的なバックアップ、機密データへのアクセス制御、変更履歴のログ記録などの手法を取る必要があります。

関連用語

マーガレット・ローズ
テクノロジーエキスパート

マーガレット・ローズは、受賞歴のあるテクニカルライター兼教師です。説明能力に優れており、複雑なテクノロジーを一般の方にもわかりやすく説明します。過去20年にわたり、彼女が書いたITの定義はQueのテク…...