用途
该技能面向 Lakehouse 架构下的数据质量与模式漂移问题。Lakehouse 在写入时强制模式,但模式会随时间演进;行数骤降、空值增多、数据延迟到达等质量问题可能悄无声息地破坏下游分析。该技能让智能体能够剖析数据、检测模式演进/漂移,并实现企业级数据质量检查。
主要能力
1. 模式漂移检测
比较最早可用快照/提交与最新快照的模式,列出:
- 新增列
- 删除列
- 类型变更(例如 INT 变为 LONG)
针对不同表格式提供方法:
- Delta Lake:使用
.history()查找模式变更,或解析事务日志。 - Iceberg:使用 catalog 在
table.history()中比较模式。
2. 企业级数据质量框架
当被要求构建数据质量检查时,优先使用行业标准框架而非原始 SQL。
Soda Core YAML 模式示例:
checks for catalog.database.table_name:
- row_count > 0
- freshness(updated_at) < 1h
- duplicate_count(transaction_id) = 0
- missing_count(user_id) = 0
- schema:
fail: when required column missing [id, user_id, updated_at]
Great Expectations 模式示例:
import great_expectations as gx
context = gx.get_context()
validator = context.sources.pandas_default.read_parquet("s3://bucket/path")
validator.expect_column_values_to_not_be_null("user_id")
validator.expect_column_values_to_be_unique("transaction_id")
validator.expect_table_row_count_to_be_between(min_value=1000)
3. 异常检测(统计边界)
如果用户需要高级质量检查,建议使用 SQL 中的移动平均或 Z-score 进行统计异常检测。
统计检查示例:
WITH daily_counts AS (
SELECT date_trunc('day', created_at) as dt, COUNT(*) as cnt
FROM my_table GROUP BY 1
),
stats AS (
SELECT AVG(cnt) as mean, STDDEV(cnt) as stddev FROM daily_counts
)
SELECT dt, cnt, (cnt - mean) / stddev as z_score
FROM daily_counts, stats
WHERE abs((cnt - mean) / stddev) > 3; -- Flags days > 3 standard deviations
使用方式
该技能以指令形式提供给智能体,智能体按上述步骤执行:先做模式漂移检测,再按需生成 Soda Core 或 Great Expectations 的质量检查定义,最后可选用统计方法做异常检测。
输出格式
质量剖析报告示例:
### 📉 Data Quality & Schema Profile: `[Table Name]`
#### 🔄 Schema Evolution
- **Initial Version:** 34 columns
- **Current Version:** 36 columns
- **Changes:**
- `+` `user_segment` (STRING)
- `~` `transaction_id` (INT -> BIGINT)
#### ✅ Quality Metrics (Soda Profile)
| Check | Threshold | Result | Status |
|-------|-----------|--------|--------|
| **Freshness** | `< 1h` | 2 mins ago | 🟢 Pass |
| **Duplicates** | `= 0` | 5 records | 🔴 Fail |
| **Null Rate** | `= 0%` | 0% | 🟢 Pass |
适用场景
- 需要监控 Lakehouse 表模式随时间变化的场景。
- 需要为数据表建立企业级数据质量检查的场景。
- 需要检测行数、空值、新鲜度等指标异常的场景。
限制
资料未提供该技能的具体安装方式、支持的平台范围、收费模式或性能限制等信息。