关于 data-catalog
data-catalog 是用于管理数据资产元数据的技能,面向需要数据发现、治理和血缘追踪的数据工程团队。它通过命令行和 REST API 支持资产登记与搜索,以及维护数据血缘。
主要功能
- 01登记和更新资产元数据
- 02按文本或标签搜索
- 03追踪资产血缘
- 04关联治理标签
- 05连接存储系统和数据库
适用场景
- 01在 ETL 工作流中编目数据集
- 02审查数据治理和访问控制
- 03追踪数据来源与依赖
- 04自动登记数据管道产出
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ alphaonedev/ openclaw-graph --skill data-catalog安装后在 Claude Code 中输入/data-catalog确认已加载。
详细介绍
data-catalog
用途
此技能用于管理数据资产的元数据,支持数据工程工作流中的发现、治理和血缘追踪。它对数据集、架构和依赖项进行编目,为数据驱动项目提供支持。
适用场景
在项目中需要追踪数据资产时使用此技能,例如 ETL 处理期间、数据治理审计期间,或构建数据管道时。它适用于涉及大型数据存储库、合规要求或协作数据团队的场景。
主要功能
- 使用 JSON 结构注册和更新数据集的元数据,例如:
{"name": "sales_data", "schema": {"columns": ["id", "date"]}}。 - 通过全文或基于标签的筛选搜索和查询资产,并支持追踪数据来源等血缘查询。
- 通过为资产关联“sensitive”等标签来执行治理策略,例如访问控制。
- 以 JSON 格式生成血缘图,例如:
{"source": "raw_logs", "target": "processed_reports"}。 - 集成 S3 或数据库等存储系统,并使用需要通过
$DATA_CATALOG_API_KEY提供 API 密钥的连接器。
使用模式
要使用此技能,请先通过环境变量进行身份验证,例如 export DATA_CATALOG_API_KEY=your_key。然后按以下模式操作:初始化目录、注册资产、按需查询并处理更新。对于管道,可将其嵌入脚本以自动注册输出。操作前请务必验证元数据,以避免冲突。
常用命令/API
使用 dcatalog CLI 或 REST API 进行交互。请求中需要通过 $DATA_CATALOG_API_KEY 进行身份验证。
-
CLI 命令:
- 注册资产:
dcatalog register --asset-name sales_data --type dataset --metadata '{"schema": ["id", "amount"]}' --api-key $DATA_CATALOG_API_KEY - 查询资产:
dcatalog search --query "sales" --tags metadata --limit 10 - 更新血缘:
dcatalog update-lineage --source raw_data --target processed_data --relation depends_on
- 注册资产:
-
API 端点:
- POST /api/v1/assets:创建新资产。curl 示例:
curl -H "Authorization: Bearer $DATA_CATALOG_API_KEY" -d '{"name": "sales_data", "tags": ["metadata"]}' -X POST https://api.opencclaw.com/api/v1/assets - GET /api/v1/assets/search?query=sales:搜索资产。示例:
curl -H "Authorization: Bearer $DATA_CATALOG_API_KEY" https://api.opencclaw.com/api/v1/assets/search?query=sales - PUT /api/v1/lineage:更新血缘。代码片段:
import requests headers = {"Authorization": f"Bearer {os.environ['DATA_CATALOG_API_KEY']}"} response = requests.put('https://api.opencclaw.com/api/v1/lineage', headers=headers, json={"source": "raw_data", "target": "report"})
- POST /api/v1/assets:创建新资产。curl 示例:
配置格式基于 JSON,例如 CLI 配置文件(~/.dcatalog/config.json):
{"default_tags": ["data-governance"], "api_endpoint": "https://api.opencclaw.com"}
集成说明
通过将 API 调用封装在自定义运算符中,将此技能与 Apache Airflow 或 AWS Glue 等数据工具集成。例如,在 Python 脚本中导入 API 客户端并传入 $DATA_CATALOG_API_KEY。确保架构版本匹配以保证兼容性;映射使用 JSON 配置,例如通过 {"bucket": "my-bucket", "prefix": "data/"} 链接到 S3 存储桶。投入生产前,请在沙盒环境中测试集成。
错误处理
通过检查 API 响应中的 HTTP 状态码来处理错误;例如,若状态码为 401,则提示重新验证 $DATA_CATALOG_API_KEY。对于 CLI,请在脚本中使用 try-catch:
try:
subprocess.run(["dcatalog", "register", "--asset-name", "test"], check=True)
except subprocess.CalledProcessError as e:
print(f"Error: {e.returncode} - {e.output}")
常见问题包括无效的 JSON 元数据(发送前使用 json.loads() 验证即可修复)或身份验证失败(使用更新后的密钥重试)。记录带时间戳的错误,以便调试。
图关系
- 相关集群:data-engineering
- 关联标签:metadata、data-governance、data-discovery
- 依赖项:通常链接到存储或处理集群中的技能,例如用于数据摄取或转换的技能。