参照整合性はテストデータ管理にとってなぜ重要ですか?
正確で準拠したテスト データのプールを確立することは、多くの企業にとって依然として困難です。これは、データセットを変更するプライバシー ツールによって参照整合性が損なわれる可能性があるためです。しかし、参照整合性はなぜ重要なのでしょうか。
この質問に答えるには、親テーブル、外部キー ルール、匿名化などの概念について説明する必要があります。整合性がなければ、開発パイプラインを混乱させたり、システム クラッシュを引き起こしたりする可能性のある欠陥のあるデータが生成されてしまう可能性があります。
この記事では、参照整合性の重要性をわかりやすく説明します。参照整合性の意味とテスト データへの影響について説明します。プライバシー法に完全に準拠しながら整合性を維持するための参照整合性ルールについて説明します。
目次
参照整合性とは何ですか?
参照整合性 テーブルとデータベース内のデータの正確性と一貫性を保証するガバナンス プロパティです。その仕組みは次のとおりです。
で リレーショナルデータベース、データは接続を維持します 主キーと外部キー:
- 主キー 各レコードの一意の識別子です XNUMXつのテーブル 主な参照ポイントとして機能します。
- 外部キー 他の行やテーブルを識別するのに役立つフィールドのコレクションであり、基本的にデータ間のリンクを強制します。
管理システムは、 データの整合性 これらのキー間の関係を管理するルールがあります。 参照整合性制約 次のものがあります。
- ルールを挿入: 外部キー(子テーブル)が既存の値と一致しない場合は、レコードを追加できません。 主キー (親テーブル)。
- 更新ルール: 子テーブルのレコードが更新されない場合は、親テーブルのレコードが更新されないようにします。
- 削除ルール: 子テーブルに一致するレコードが含まれている場合、親テーブルからデータを削除することはできません。
技術的な説明は以上です。次に、テスト データにとって整合性がなぜ重要なのかを見てみましょう。
データベース管理において参照整合性が重要なのはなぜですか?
参照整合性は の信頼性 データベース管理システムテストデータ管理ツールも含まれています。このフレームワークは、 テーブル間の関係 データを変更または移行しても一貫性が保たれます。
データの整合性 コンプライアンス チームは、規制要件を遵守しながら高いデータ品質を維持できます。すべての企業は、一般データ保護規則 (GDPR)、医療保険の携行性と責任に関する法律 (HIPAA)、カリフォルニア州消費者プライバシー法 (CCPA) などのデータ保護法に従う必要があります。これらの法律では、企業が顧客の個人識別情報 (PII) を保護することが義務付けられています。
テストのためにデータを自由に使用するために、 企業はプライバシー強化技術(PET)を使用する 個人情報をデータから取り除く方法があります。ここで問題が起こります。 データの整合性を維持するツールによって、次のような不整合やエラーが発生する可能性があります。
- 孤立したレコード (存在しない親レコードを参照する子レコード)
- 壊れたデータ関係
- 矛盾と重複 (冗長)データ.
- 重要なデータが欠落しています
さらに、GDPR では、仮名化されたデータは依然として個人データとみなされるため、法的リスクを回避するには参照整合性を維持することが不可欠です。対照的に、匿名化されたデータは、完全に匿名化された後は GDPR の義務から免除されます。参照整合性がなければ、一貫性のないレコードや孤立したレコードによってコンプライアンス違反、データ関係の破壊、データの重複が発生し、システム障害や重要な情報の損失につながる可能性があります。
データの整合性 は、 データベースの正規化どちらも表内のデータ品質を維持するのに役立ちます。ただし、 データベースの正規化 冗長性と依存性を最小限に抑えるためにデータを整理することに重点を置いていますが、参照整合性は要素の一貫性を維持します。
整合性が欠けていると、システムクラッシュ、アプリケーションエラー、予期しないシステム動作が発生する可能性があります。また、顧客データの関係が失われると、ビジネスに影響が出る可能性もあります。
Synthoが参照整合性をどのように維持するかを確認する
参照整合性はテスト データにどのような影響を与えますか?
参照整合性の維持 現実的なテスト環境には必要です。理想的には、開発者とテスト担当者は実稼働データの構造を反映したデータを必要とします。ただし、一般的に使用される PET はテーブル間の関係を乱す可能性があります。
ほとんどの問題は主キーと 外部キー値たとえば、アプリケーションがテスト中に関連データを取得できず、診断が困難なエラーが発生する可能性があります。また、変更されたテスト データに値が欠落していたり、不整合があったりするため、予期しない動作が発生することもあります。
これらの問題は、データの仮名化、匿名化、サブセット化などの最新の技術によって発生する可能性があります。
仮名化データと匿名化データの参照整合性
データの仮名化と匿名化ツール 試験用の準拠データを生成するためによく使用されます。参照を維持する データの整合性 データを匿名化すると、テスト中に個人情報が不正アクセスされたり漏洩したりするのを防ぐことができます。
偽名化 は、PII、保護された健康情報、およびその他の財務情報を模擬データ(仮名)に置き換える匿名化ツールです。 匿名化ツール より高度な技術を使用して直接識別子と間接識別子を変換します。
これらの技術は両方ともリスクを伴います。仮名化されたデータは、制御された条件下(通常は復号化キーなどの追加情報を使用)で元に戻すことができます。匿名化されたデータであっても、元の情報を復元するために悪用される可能性があります。
一貫したマッピングを維持するのは複雑です特に、複雑なテーブルを持つ大規模なデータベースでは、匿名化や仮名化によってキーとして使用される識別子が変更されると、関係が損なわれる可能性があります。
匿名化(仮名化)されたデータで参照整合性を強制する方法:
- 決定論的なマスキング手法を使用します。 決定論的マスキングは機密データを一貫した値に置き換えます。たとえば、「John D.」のIDが一貫して「ABCDE」にマスキングされている場合、 顧客テーブル、関係はそのまま残ります。
- 識別子に暗号化またはハッシュ関数を適用します。 キー識別子を削除するのではなく、暗号化またはマスクします。これにより、機密情報を保護しながら整合性を維持できます。
- マップの要素と関係: 元のデータと変更されたデータ (通常は仮名化) 間の参照として使用するための安全なマッピング テーブルを保持します。
- 施行 外部キー制約: 匿名化中に整合性を自動的にチェックして強制するデータベース管理システムを使用します。
整合性エラーが見つかった場合は、対処が必要です。孤立したレコードを削除し、不足しているレコードを追加します。 主キー、外部キーの値を更新して、問題が複雑化しないようにします。
サブセット化における参照整合性
サブセット化により実稼働データベースを変換 データセットをテスト用に小さく表現可能な部分に分割する。この手法は、 データベースの正規化.
理想的には、大きなデータセットは扱いやすい代表的な部分に縮小されます。しかし、特定のレコードのみを選択すると、外部キー関係が壊れる可能性があります。 関連表例としては、存在しない顧客テーブルを参照するトランザクション レコードが挙げられます。
参照整合性を強制する サブセット化の場合:
- カスケードアクションに制約を適用します。 不整合を避けるために、DELETE CASCADEとUPDATE CASCADEに制約を使用します。これにより、対応する 外部キー 子セット内の内容は自動的に削除されるか、親セットとともに更新されます。
- ACID準拠のトランザクションを優先します。 原子性、一貫性、独立性、永続性 (ACID) フレームワーク内でサブセット化操作を実行します。サブセット化プロセスの一部が失敗すると、トランザクションはロールバックされます。
- 監視ツールを実装する: 企業は、参照の欠落や整合性違反を検出し、時間どおりに対処する自動ツールを使用する必要があります。
サブセット化機能を備えた合成データ生成プラットフォームなどの専用ツールを使用すると、企業は手作業と不整合のリスクを大幅に削減できます。
Syntho の合成データ プラットフォームが整合性を強化する方法
合成データは、実際の機密情報を使用せずに実際のデータの特性をシミュレートする人工的に生成された模擬データです。
合成データ ツールは、実際のデータセットに基づいて、最初から模擬データを生成します。Syntho などのプラットフォームは、元のデータの基礎となる分布、相関関係、構造をキャプチャする高度なアルゴリズムを活用します。これにより、次のようなビジネス上のメリットがもたらされます。
- テーブル間の一貫性: 私たちのモデルは主キーと外部キーの関係を維持し、 すべてのデータベースは一貫性を保つ.
- 包括的なコンプライアンス: 匿名化(仮名化)技術とは異なり、合成データはゼロから作成されます。直接的または間接的な識別子は含まれていないため、生成されたデータセットは規制監視の対象外となります。
- 高品質のデータ: 合成データは、現実世界のデータ条件下でのみ表面化する可能性のある問題を発見するのに役立ちます。
- 組み込み機能: チームはさまざまな機能を使用して準拠したテストデータを作成できます。特に、 PIIスキャナー テーブル内のPIIを検出し、 サブセット化機能 小規模な代表データセットを作成できます。
最後に、Syntho は他の自動化ソフトウェアやデータベース管理ツールと統合されます。当社の合成生成ツールを CI/CD パイプラインに組み込むことで、チームは必要に応じて最新のテスト データを作成できます。
まとめ
今では明らかだ 参照整合性が重要な理由 データベース管理のあらゆる側面において、匿名化方法によっては整合性が損なわれ、データの有用性が低下する可能性があります。
幸いなことに、企業には整合性を維持する手段があります。高度なアルゴリズムと特殊なツールにより、準拠し、機能的で、エラーのないテスト データを大量に生成できます。
当社の合成生成プラットフォームについてさらに詳しく知りたいですか? 製品ドキュメント or デモについてはお問い合わせください.
著者紹介:
カスタマーサービスエンジニア&データサイエンティスト
Shahin Huseyngulu は、コンピューター サイエンスとデータ サイエンスの分野で確固たる学歴を持ち、経験豊富なカスタマー サービス エンジニア兼データ サイエンティストです。Shahin は、カスタマー サービス、クラウド ソリューション、機械学習研究で重要な役割を担い、Python、SQL、データ分析の専門知識を発揮してきました。現在、Shahin は Syntho でカスタマー サービス エンジニアとして活躍し、カスタマー サービス業務の構築と最適化に携わりながら、技術とカスタマー サービスのスキルを独自に組み合わせて、テクノロジー業界におけるイノベーションと顧客満足度を推進しています。