SuperAPI AI 工具集

clickhouse-data-handling

数据与分析

查看项目

更新于 10-15 22:42

技能介绍

用途:在 ClickHouse 中管理完整数据生命周期,包括 TTL 过期、GDPR/CCPA 删除、数据脱敏、分区管理与审计追踪。该技能生成迁移 SQL 与 TypeScript 客户端代码写入项目,并通过 ClickHouse 的 system.* 表验证结果。

主要能力:TTL 自动过期与分层存储(热→冷→删除)、列级 TTL 置空 PII;GDPR/CCPA 删除(轻量 DELETE FROM、可验证的 ALTER TABLE ... DELETE、DROP PARTITION 批量删除);脱敏与匿名化视图(sipHash64 哈希标识符、仅显示邮箱域名、字典白名单);DSAR 导出与删除(exportUserData / deleteUserData 按 user_id 遍历所有表并记录删除);不可变、无 TTL、按月分区的 audit_log 审计表;保留策略监控(system.tables/system.parts 联查报告大小、时间跨度及缺失 TTL 的 MergeTree 表)。

使用方式:按六步顺序操作新表,或跳至所需步骤。用 Write/Edit 将生成的 SQL 放入迁移文件(或 TypeScript 放入数据访问层),对 ClickHouse 执行后通过 system.* 查询验证。示例:ALTER TABLE analytics.events MODIFY TTL created_at + INTERVAL 90 DAY; 随后 OPTIMIZE TABLE analytics.events FINAL 强制清理。

前提:已有可操作的表(模式来自配套技能 clickhouse-core-workflow-a);有书面数据保留策略(各类数据保留时长及 PII 列);使用轻量 DELETE FROM 需 ClickHouse 23.3+,旧版本须用 ALTER TABLE ... DELETE;可访问 system.mutations 与 system.parts 验证删除。

输出:迁移 SQL、TypeScript 客户端代码、验证查询、审计记录。

限制与错误处理:变更卡住需检查 system.mutations 必要时取消;TTL 未过期可用 OPTIMIZE TABLE ... FINAL 强制;旧版本 DELETE 不生效改用 mutation;导出超时可加 LIMIT 或分批。敏感数据(API 密钥、令牌)不应存入 ClickHouse,应使用密钥管理器。完整 SQL 与 TypeScript 见 references/implementation.md,端到端场景见 references/examples.md。