mcpField
D
data-catalog

data-catalog

github.com/alphaonedev数据与数据库44 次安装
代码仓库

关于 data-catalog

data-catalog 是用于管理数据资产元数据的技能,面向需要数据发现、治理和血缘追踪的数据工程团队。它通过命令行和 REST API 支持资产登记与搜索,以及维护数据血缘。

主要功能

  1. 01登记和更新资产元数据
  2. 02按文本或标签搜索
  3. 03追踪资产血缘
  4. 04关联治理标签
  5. 05连接存储系统和数据库

适用场景

  1. 01在 ETL 工作流中编目数据集
  2. 02审查数据治理和访问控制
  3. 03追踪数据来源与依赖
  4. 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"})
      

配置格式基于 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
  • 依赖项:通常链接到存储或处理集群中的技能,例如用于数据摄取或转换的技能。

评论

支持 Markdown