データ品質プログラム
概要
データ品質プログラムは、GitLab のデータ資産への信頼を高め、正確なインサイトと効果的な意思決定を可能にし、手動によるデータ修正の労力を削減するための包括的な標準と手順を確立します。このプログラムはデータガバナンス&品質チームが主導し、すべてのエンタープライズデータドメインを対象としています。
プログラムの目標
- 測定: すべての次元でデータ品質目標を測定します
- 追跡: 具体的で測定可能な目標に対する進捗を追跡します
- 報告: 複数のレベルでプログラムの有効性を報告します
- 改善: データドリブンなインサイトを通じて継続的に改善します
データ品質フレームワーク
データ品質の6つの次元
GitLab データ品質プログラムは6つの主要な次元で品質を測定します:
| 次元 | 定義 |
|---|---|
| 正確性 | データが現実世界のエンティティと値を正しく表現している |
| 完全性 | すべての必須データフィールドが入力されている |
| 一貫性 | データが異なるシステム間および時間の経過とともに整合している |
| 適時性 | データが期待されるタイムフレーム内で利用可能である |
| 有効性 | データが定義されたフォーマットとビジネスルールに準拠している |
| 一意性 | 不適切な重複レコードが存在しない |
注記: 特定のターゲットしきい値は、ベースライン測定とドメイン固有の要件を通じて設定されます。
実装アプローチ
データ品質プログラムは、ドメインのステークホルダーとファンクショナルデータスチュワードとの密接なパートナーシップを通じて実装されます。各ドメインの独自の要件と課題は以下を通じて対応されます:
- ドメインチームとの協力的なベースライン評価
- ドメイン固有の品質しきい値の共同開発
- 改善取り組みの共同所有権
- 継続的な改良のためのドメインスチュワードとの定期的な連絡
タイムライン:
- FY27: フレームワーク・プロセス・ベストプラクティスを確立するためのプロダクトドメインでのパイロット実装
- FY27-28: パイロットの学びとドメインの準備状況に基づいて、追加ドメインにプログラムを拡大
データ品質 Issue の報告と管理
データ品質 Issue を開くタイミング
以下を発見した場合にデータ品質 Issue を開いてください:
- 不正確なデータ - 現実と一致しない値(例: 誤った収益額)
- 不足しているデータ - 存在すべき NULL または空のフィールド(例: 欠落している顧客 ID)
- 一貫性のないデータ - システム間で矛盾する情報(例: Salesforce と Snowflake で異なる顧客数)
- 適時性のないデータ - 古い・失効した・遅延したデータ更新(例: ダッシュボードが更新されない)
- 無効なデータ - フォーマット違反またはビジネスルール違反(例: 過去のイベントの将来の日付)
- 重複データ - 一意性が期待される場所での繰り返しレコード(例: 重複した顧客レコード)
データ品質 Issue の報告方法
<b>ステップ 1: データ品質 Issue を作成する</b>
- GitLab の Analytics プロジェクトに移動します
- 「新しい Issue」をクリックし、[Report] Data Quality Issue を選択して適用します
- 既存の Issue を変換する場合は
/label ~"Data Quality Issue"を使用します
<b>ステップ 2: 必要な情報を入力する</b>
Issue の分類と深刻度
Issue テンプレートで定義されているビジネスへの影響に基づいて、適切な深刻度レベル(Sev1〜4)を選択してください。
⚠️ Sev1/Sev2 の Issue の場合: すぐに #data-team Slack チャンネルに通知してください。また、@data-governance をタグ付けしてください
インシデント管理と深刻度レベルの詳細については、データチームインシデント管理ハンドブックページを参照してください。
問題の説明
技術的な証拠を含め、テンプレートのすべての必須フィールドに包括的な詳細を記入してください。
技術的な証拠:
関連する SQL クエリ・スクリーンショット・データサンプルを Issue テンプレートの証拠セクションに記入してください。
インパクトの評価
テンプレートのすべてのインパクトフィールド(顧客・ARR・レコード・戦略的インパクト)を記入してください。
システム情報
Issue テンプレートで提供されているシステムおよびドメインのチェックボックスを記入してください:
- 主な影響を受けるシステム - Issue が発生するすべてのシステムを選択します
- 影響を受けるデータドメイン - どのビジネスドメインが影響を受けているかを識別します
<b>ステップ 3: ラベルを適用する</b>
クイックラベルコマンドを使用してください:
/label ~"Data Quality Issue" ~"Sev[1-4]" ~"Champion: [Domain]" ~"Team: [TeamName]" ~"DQ-[Dimension]" ~"RC::[Category]" ~"workflow::1 - triage & validation"
例:
/label ~"Data Quality Issue" ~"Sev2" ~"Champion: Sales" ~"Team: Analytics Engineering" ~"DQ-Accuracy" ~"RC::Data-Integration" ~"workflow::1 - triage & validation"
<b>ステップ 4: 関連する Issue をリンクする</b>
- 類似した問題について既存のデータ品質 Issue を検索します
- 関連するエピックが存在する場合はリンクします
- パターンや繰り返し発生する Issue を記録します
データ品質 Issue ワークフロー
検出 → トリアージ&検証 → 調査 → 解決 → 防止 → 完了
<b>トリアージプロセス</b>
Issue トリアージ担当者の場合:
- 深刻度の検証 - ビジネスへの影響と一致していることを確認します
- 重複のチェック - 類似した既存の Issue を検索します
- DQ 次元ラベルの適用 - 適切な
DQ-[Dimension]ラベルを使用します - Issue タイプに基づいた DRI の割り当て
- ワークフロー状態の設定 - 適切なステージに移動します
- コミュニケーション - Sev1/Sev2 の場合は Slack で通知します
データ品質 Issue 管理ワークフロー
詳細なワークフロー図 - 近日公開予定
データ品質 Issue 管理の意思決定ポイント・エスカレーションパス・自動トリガーを詳述した包括的なワークフロー図が現在開発中であり、このハンドブックページに追加される予定です。
現在の手順については、上記のセクションに概説された手順に従ってください。
根本原因分析
解決されたすべての Issue には根本原因の分類が必要です:
| ラベル | カテゴリ | 説明 | 例 |
|---|---|---|---|
RC::Technical-Implementation | 技術的 | コードロジックエラー・実装上の問題・技術的負債 | 結合ロジックエラー・最適化の問題 |
RC::Data-Integration | 統合 | クロスシステムの問題・パイプラインの障害 | ETL の障害・同期エラー |
RC::Quality-Assurance | テスト | テストのギャップ・検証の見落とし・監視の障害 | dbt テストの不足・アラートなし |
RC::Process-Business-Rules | プロセス | ドキュメントのギャップ・ビジネスルール・トレーニングの必要性 | 不明確な要件・プロセスのギャップ |
RC::Source-System | 外部 | ソースシステムの設定・更新タイミング | ベンダーの問題・API の変更 |
防止フレームワーク
<b>防止スコアリング</b>
解決された各 Issue に防止スコア(1〜5)を割り当てます:
| スコア | 定義 | 必要なアクション |
|---|---|---|
| 5 | 高度に防止可能 - 基本的なチェックで捕捉できたはず | 防止策を文書化する |
| 4 | 容易に防止可能 - 簡単な検証が役立つ | 監視/テストを追加する |
| 3 | 中程度に防止可能 - プロセスの変更が必要 | 改善を検討する |
| 2 | 防止困難 - 複雑な依存関係 | パターンを監視する |
| 1 | 防止不可能 - 外部要因 | 認識のために文書化する |
スコア 4〜5 の場合: Issue に防止策を明記する
根本原因別の防止ガイドライン
| 根本原因カテゴリ | 典型的なスコア | 一般的な防止策 |
|---|---|---|
| RC::Quality-Assurance | 4〜5 | dbt テスト・Monte Carlo モニタの追加 |
| RC::Process-Business-Rules | 3〜4 | ドキュメントの更新・トレーニング |
| RC::Technical-Implementation | 3〜4 | コードレビュー・リファクタリング |
| RC::Data-Integration | 2〜3 | クロスシステム検証 |
| RC::Source-System | 1〜2 | 外部監視・ベンダーコミュニケーション |
<b>解決チェックリスト</b>
Issue テンプレートで提供されている解決チェックリストのすべての項目を完了し、以下を確認してください:
- 根本原因が適切な RC ラベルで文書化されている
- 防止スコア(1〜5)が割り当てられている
- スコア 4〜5 の場合: 防止策が明記されている
- すべての検証ステップが完了している
- ステークホルダーに通知されている
完全なチェックリストについては、データ品質 Issue テンプレートを参照してください。
インシデントへのエスカレーション
DQ Issue が即時の対応を必要とする場合:
- インシデント基準を満たすかどうかを確認してください:
- SLO 違反
- 即時のビジネスへの影響
- 緊急対応が必要
- 該当する場合は
/type incidentを使用して変換します - インシデント管理手順に従います
四半期ごとのデータ品質レトロスペクティブ
目的
四半期ごとのレトロスペクティブは、以下を通じて継続的な改善を推進します:
- 個々の Issue 全体のパターンの識別
- 症状を超えた根本原因の理解
- チーム間での知識共有
- 反応的から積極的な品質管理へのシフト
オーナー
– データガバナンスチームがプロセスで述べられた活動を実施します。
プロセス
1. データ収集
- 四半期中のすべての DQ Issue を収集します
- Monte Carlo アラートと Tableau 監視を含めます
- Issue の詳細・根本原因・インパクト・解決策を文書化します
2. 分析
- 次元・深刻度・根本原因で分類します
- メトリクスを計算します:
- ドメイン別の Issue 量
- 解決までの平均時間(MTTR)
- 再発率
- 防止スコアの分布
3. レトロスペクティブの調査結果の共有
コンテンツ:
- DQ メトリクスとトレンド
- 成果と改善を称えます
- 繰り返しパターンの分析
- 防止戦略の提案
- 改善アクションの優先順位付け
4. アクション計画
- 改善に対してオーナーを割り当てます
- 実装タイムラインを設定します
- ドキュメントを更新します
- フォローアップをスケジュールします
5. 進捗の追跡
- 改善の有効性を監視します
- 成果に基づいて戦略を調整します
- データ拡張リーダーシップとデータチームに報告します
役割と責任(RACI マトリクス)
| 活動 | データガバナンス | ファンクショナルアナリティクス | データ/エンジニアリング | ビジネスステークホルダー |
|---|---|---|---|---|
| プログラム戦略 | R, A | C | C | I |
| Issue 検出 | I | R | R | R |
| Issue トリアージ | A | C | C | I |
| Issue 修正 | C | R | R | I |
| メトリクス定義 | R | A | C | C |
| 品質監視 | A | R | R | C |
| 防止策 | R | C | R | I |
| レトロスペクティブ | R, A | C | C | I |
| コミュニケーション | A | R | C | I |
R = 実施(作業を行う)、A = 説明責任(意思決定者)、C = 相談(インプット)、I = 情報提供(更新される)
役割別の主な責任
データガバナンスチーム
- プログラム戦略と実装を主導します
- 品質フレームワークを設計・維持します
- ステークホルダー評価を実施します
- 四半期ごとのレトロスペクティブを促進します
- ハンドブックドキュメントを維持します
- データ拡張リーダーシップに報告します
ファンクショナルアナリティクスチーム
- 正確なメトリクス定義を維持します
- 所有するドメインの品質監視メトリクスを定義します
- データ/アナリティクスモデル内のビジネスロジックに関連するドメイン固有の Issue の修正を主導します
- レトロスペクティブに参加します
- データカタログ(Atlan)に貢献します
アナリティクス/データエンジニアリングチーム
- 高品質なデータプロダクトを実装します
- プロアクティブな監視を確立します
- Monte Carlo のカバレッジを拡大します
- 技術的な修正を実行します
- レトロスペクティブに参加します
プラットフォーム&監視戦略
現在のツール
| ツール | 目的 | 現在の使用状況 |
|---|---|---|
| Snowflake | データプラットフォーム | ネイティブ品質テスト・データプロファイリング |
| dbt | 変換 | パイプラインでの品質テスト |
| Tableau | 可視化 | 品質メトリクスダッシュボード・トレンドレポート |
| GitLab | Issue トラッキング | DQ Issue 管理 |
計画中の拡張
Monte Carlo の実装
- データの鮮度やモデル/テーブルのボリューム監視など、Issue 識別のためにアラートを必要に応じて追加/修正します
Atlan 統合
- メトリクス定義の一元的なソースとしての使用を拡大します
- インパクト分析のためのデータリネージ追跡
- ビジネス用語集の維持
dbt テストの強化
- クリティカルなデータモデル全体でテストカバレッジを向上させます
- カスタムビジネスルールの検証
- 改善されたテストドキュメント
Tableau 品質スコアカード
- ドメイン固有の品質ダッシュボードを構築します
- DQ メトリクスとトレンドを追跡します
- エグゼクティブサマリービュー
追加リソース
ドキュメント
クイックリンク
- Issue を報告する: 新しい DQ Issue
- Issue を見る: オープンな DQ Issue
- Slack: #data-team、#data-governance-quality
- オフィスアワー: データチームカレンダー
このページはデータガバナンス&品質チームによって維持されています。質問や提案がある場合は、#data-team で連絡するか Issue を開いてください。
