data-validation について
データ品質、スキーマ、型、一貫性、異常を検証するスキルです。データパイプラインの構築、移行、ガバナンス規則の策定に携わり、複数のデータソースや業務制約を確認するチーム向けです。
主な機能
- 01JSON Schema、Avro、Protobuf、XML Schema の検証
- 02データ型と品質の確認
- 03業務ルールと参照整合性の検証
- 04異常検出とデータプロファイリング
- 05リネージとデータソース間の整合性検証
- 06検証ルールの管理とバージョン化
活用シーン
- 01システム移行時のデータ検査
- 02パイプラインのデータ品質監視
- 03スキーマと業務ルールの検査設計
- 04外れ値や不整合の調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ wojons/ skills --skill data-validationインストール後、Claude Code で/data-validationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdreferences/README.mdscripts/analyze-data-validation.sh詳細
データ検証
システム間でデータ品質、型、スキーマ、一貫性を検証します。このスキルは、包括的な検証ルール、スキーマ検証、データ品質チェック、異常検知を通じて、データの正確性、完全性、信頼性を確保します。
どのようなときに使うか
次のような場合に、このスキルを使用してください。
- システム間でデータ品質と一貫性を確保する必要がある
- データパイプラインを構築しており、検証ルールが必要である
- システム間でデータを移行しており、正確性を検証する必要がある
- データ品質の監視とアラートを実装する必要がある
- データスキーマを設計しており、検証ルールが必要である
- データの異常や不整合を検出する必要がある
- データガバナンスと品質基準を実装している
- ビジネスルールや制約に照らしてデータを検証する必要がある
できること
- スキーマ検証:スキーマ(JSON Schema、Avro、Protobuf、XML Schema)に照らしてデータを検証します
- データ型の検証:データ型(文字列、数値、日付、ブール値など)を検証します
- データ品質チェック:データの完全性、正確性、一貫性、適時性を確認します
- ビジネスルールの検証:ビジネスルールや制約に照らしてデータを検証します
- 参照整合性の検証:データエンティティ間の関係を検証します
- 異常検知:データの異常や外れ値を検出します
- データプロファイリング:データの特性と品質を把握するためにプロファイリングします
- データリネージの検証:データリネージと変換の正確性を検証します
- データの一貫性検証:複数のデータソース間の一貫性を検証します
- データ検証ルールの管理:検証ルールを管理し、バージョン管理します
例
# Validate data against JSON schema
./scripts/analyze-data-validation.sh --schema schema.json --data data.json
# Perform data quality checks
./scripts/analyze-data-validation.sh --quality-checks --source database --rules rules.yaml
# Detect data anomalies
./scripts/analyze-data-validation.sh --anomaly-detection --data data.csv --threshold 3
# Validate data consistency across sources
./scripts/analyze-data-validation.sh --consistency --sources source1.csv source2.csv
# Generate data validation report
./scripts/analyze-data-validation.sh --report --output validation-report.json
出力形式
Data Validation Report
─────────────────────────────────────
Validation Date: 2025-01-15T10:30:00Z
Data Source: customer_data.csv
Total Records: 1,250,847
Validation Duration: 45s
SCHEMA VALIDATION RESULTS:
───────────────────────────
✅ Valid: 1,200,543 records (96%)
❌ Invalid: 50,304 records (4%)
Schema Violations:
• Missing required field "customer_id": 12,847 records
• Invalid email format: 18,542 records
• Invalid date format (birth_date): 8,925 records
• Invalid phone number format: 10,090 records
DATA QUALITY METRICS:
──────────────────────
Completeness: 97.8%
• Customer name: 99.2% complete
• Email address: 96.5% complete
• Phone number: 95.8% complete
• Address: 92.4% complete
Accuracy: 95.3%
• Email deliverability: 94.8% valid
• Phone number validity: 96.2% valid
• Address validity: 95.0% valid
Consistency: 98.1%
• Date formats consistent: 99.2%
• Country codes consistent: 97.8%
• Currency formats consistent: 97.3%
Timeliness: 99.5%
• Data freshness: 99.8% updated within 24 hours
• Update frequency: 99.2% updated daily
BUSINESS RULE VALIDATION:
─────────────────────────
✅ Valid: 1,245,120 records (99.5%)
❌ Invalid: 5,727 records (0.5%)
Business Rule Violations:
• Customer age < 18: 1,247 records
• Invalid order amount (negative): 842 records
• Duplicate customer records: 2,150 records
• Inconsistent region-country mapping: 1,488 records
REFERENTIAL INTEGRITY VALIDATION:
─────────────────────────────────
✅ Valid: 1,248,950 references (99.8%)
❌ Invalid: 1,897 references (0.2%)
Referential Integrity Issues:
• Orphaned order records (missing customer): 892 references
• Invalid product references: 1,005 references
ANOMALY DETECTION:
──────────────────
⚠️ Detected: 3,842 anomalies (0.3%)
Anomaly Types:
• Unusual customer age distribution: 1,250 anomalies
• Abnormal order amounts: 1,892 anomalies
• Unexpected geographic distribution: 700 anomalies
DATA PROFILING SUMMARY:
───────────────────────
Numeric Fields:
• order_amount: Min=$1, Max=$15,250, Avg=$245.75, StdDev=$125.42
• customer_age: Min=18, Max=95, Avg=42.3, StdDev=12.8
Categorical Fields:
• country: 45 distinct values (US: 45%, UK: 12%, CA: 8%, ...)
• product_category: 12 distinct values (Electronics: 35%, Clothing: 25%, ...)
Date Fields:
• order_date: Range=2024-01-01 to 2025-01-15
• customer_since: Range=2018-03-15 to 2025-01-15
DATA CONSISTENCY ACROSS SOURCES:
────────────────────────────────
• Customer database vs CRM: 98.7% consistent
• Product catalog vs inventory: 97.2% consistent
• Order system vs payment gateway: 99.1% consistent
RECOMMENDATIONS:
────────────────
1. IMMEDIATE ACTION:
• Fix missing customer_id field (12,847 records)
• Clean invalid email addresses (18,542 records)
• Remove duplicate customer records (2,150 records)
2. SHORT TERM (1-2 weeks):
• Implement data validation in ingestion pipeline
• Set up data quality monitoring and alerting
• Establish data quality SLA (target: 99.5% quality)
3. MEDIUM TERM (1-3 months):
• Implement data profiling and anomaly detection
• Establish data governance framework
• Implement data lineage tracking
4. LONG TERM (3-12 months):
• Implement master data management
• Establish data quality improvement program
• Implement predictive data quality monitoring
VALIDATION RULE COVERAGE:
─────────────────────────
• Schema validation: 100% coverage
• Data type validation: 100% coverage
• Business rule validation: 85% coverage
• Referential integrity: 90% coverage
• Anomaly detection: 75% coverage
Overall Data Quality Score: 92.8/100
注意事項
- データ検証は、可能な限りデータ入力に近い段階で実装してください
- 検証ルールはコードと同様にバージョン管理し、管理してください
- 特に大規模なデータセットでは、データ検証によるパフォーマンスへの影響を考慮してください
- ストリーミングデータには増分検証を実装してください
- 統計的手法を異常検知に使用し、誤検知を減らしてください
- 傾向を把握するため、データ品質の指標を継続的に追跡してください
- 検証の失敗時には、適切な修復ワークフローを実行してください
- 機密データを検証する際は、データのプライバシーとセキュリティを考慮してください
コメント
Markdown 対応