其他
使用 ae-cli 管理 AE DataOps 数仓…
在已安装并配置 ae-cli 的 AE DataOps 环境中,按安全规则完成空间发现、表/视图、流程创建监控、Backfill、IDE SQL 查询和数据集成。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 40/100 ×0.15
适用场景
使用 ae-cli 管理 AE Data特定
解决思路
- 本技能自包含;处理 DataOps 侧任务时直接使用 Global AE CLI Rules,不要依赖单独的共享技能。
- AE CLI(ae-cli)是 AE(Agentic Engine)分析平台的命令行工具;AE 分析侧请求优先使用 ae-cli 和本技能 reference 文档,而不是模型记忆。
- 使用全局参数 `--format <json|table>` 控制输出格式,默认 JSON。
- 使用全局参数 `--jq <expr>` 过滤 JSON 输出。
- 使用全局参数 `--host <url>` 覆盖当前 AE host;它可用于每个命令,并可放在子命令之后,例如 `ae-cli dataops_ide +<command> --host <url>`。
- 成功命令默认返回机器可读 JSON;envelope 可能包含可选 `_notice.host_compat`。
- 失败命令返回 ok=false、error.type、error.message、error.hint,并以非零状态退出。
- 每次运行 `ae-cli` 后,检查 stderr 和 `_notice.host_compat`;若任一项存在,在用户回复开头加简短 ⚠️ 版本警告,并逐字引用 `npm i -g` / `npx skills add`(或 update-cluster)相关行,然后呈现业务结果;这是软提示,ok=true 也可能携带该 notice。
- 读命令在所需 ID 和引用已验证后可直接执行。
- 普通 write 命令无需 `--yes`;只有 high-risk-write 命令在用户明确确认后才使用 `--yes`。
- 不要发明命令名、flag、JSON payload、`project_id`、资源 ID、字段名、事件名、属性名、指标定义或日期格式;先阅读匹配的命令参考并发现真实项目元数据。
- 绝不要伪造或猜测资源名(报告、仪表盘、事件、属性、指标、集群、标签、告警);始终先用 list 命令发现真实资源;若 fuzzy search 和 full list fallback 后仍找不到,明确告诉用户 resource not found 并停止,不要用伪造名称继续。
- DataOps 域包括 `dataops_repo`、`dataops_datatable`、`dataops_flow`、`dataops_operations`、`dataops_ide`、`dataops_integration`。
- `dataops_repo` 负责空间发现。
- `dataops_datatable` 负责数据表和视图管理。
- `dataops_flow` 负责 flow 创建、节点删除和编排。
- `dataops_flow` 负责 flow 执行和监控。
- `dataops_operations` 负责 operations instance 搜索、详情和任务日志。
- `dataops_operations` 负责 backfill job 创建、完整 draft 更新、删除、执行、plans、停止和重跑。
- `dataops_ide` 负责数据探索和 SQL 查询。
- `dataops_integration` 负责 datasource 和数据集成。
- 使用前先理解 ID 系统:`executeId` 由 `dataops_flow +execute_flow` 返回,用于 scheduler `flowInstanceId` 可用前的提前停止句柄。
- `flowInstanceId` 由 `dataops_operations +search_flow_instances` 返回,用于从 operations 视角检查实例和停止。
- `jobId` 由 `dataops_operations +create_backfill_job` 或 `+search_backfill_jobs` 返回,用于持久化 backfill job 详情和生命周期操作。
- 记住环境默认:大多数 flow/ide/datatable 命令默认 `DEV`。
- `dataops_operations +search_flow_instances` 用于 operations 实例搜索,可按 keyword、execution date、status、paging 过滤。
- `dataops_operations +get_flow_instance_detail` 用于实例详情,检查一个实例 DAG 和任务状态。
- `dataops_operations +get_task_instance_detail` 用于任务详情/日志,检查一个任务,仅在需要时包含日志。
- `dataops_operations +stop_flow_instance` 用于实例停止,必须且只能通过 `executeId` 或 `flowInstanceId` 之一停止。
- `dataops_operations +list_backfill_flows` 用于补数来源发现,返回 eligible PROD flows 以及是否需要 ST。
- `dataops_operations +search_backfill_jobs` 用于 backfill job 搜索,过滤持久化 job 并获得 `jobId`。
- 遵守 schema 命名:DEV 环境为 `ws_${spaceCode}_dev`,PROD 环境为 `ws_${spaceCode}_product`。
- 执行 SELECT 查询用 `dataops_ide`。
- 创建/修改/删除数据表(DDL)用 `dataops_datatable`,禁止用 `dataops_ide`。
- 遵循 flow 生命周期:创建 DEV Flow → 创建/更新 DEV SQL、Integration、Workflow Instance Check 或 Task Instance Check 任务 → 配置依赖/调度 → Preview Release → Release 到 PROD → PROD 手动执行/Operations 排障。
- 遵循 backfill 生命周期:发现 eligible PROD flow → 创建或完整更新 DRAFT job → 显式运行 → 搜索/检查 plans → 停止或重跑完整 job;只有在检查目标后才删除。
- CRON 使用 6 字段:`second minute hour day month weekday`,比标准 5 字段多一个 second 字段;例如 `0 0 2 * * ?` 表示每天 2 AM,`0 0 */4 * * ?` 表示每 4 小时,`0 30 8 * * 1-5` 表示工作日 8:30。
- Preset Repository(te_etl):`datasourceId` 为 `te_etl@TASK_ENGINE_TRINO`,database 字段为空,且需要 `gatewayConfig`。
- 非 Preset Repository:`datasourceId` 为具体 datasource ID,database 字段必填。
- 根据用户意图路由场景技能:创建 flow/加删节点/配置调度/发布 → `dataops-flow-create`。
- 查看执行状态/排障失败/查看日志 → `dataops-flow-monitor`。
- 跨空间搜索 operation instances → `dataops-flow-monitor`。
- 创建或操作持久化多日期 backfill job → `dataops-backfill`。
- 创建 datasource/配置同步方案/执行同步 → `dataops-integration`。
- 浏览元数据/搜索表/执行 SQL 查询 → `dataops-query`。
- 创建表和视图 → `dataops-table`。
- 空间发现:`dataops_repo` 只暴露一个读命令;在调用需要 `spaceCode` 的 DataOps 命令前,用它发现有效 `spaceCode`;返回 `createTime`、`spaceCode`、`spaceDisplayName`。
- 如果用户已提供可信 `spaceCode`,复用它。
- 如果 `spaceCode` 未知,先运行 `ae-cli dataops_repo +list_spaces`。
- 如果只返回一个 space,使用其 `spaceCode`。
- 如果返回多个 space 且用户意图无法识别一个,询问用户使用哪个 space;不要猜测。
- 表/视图管理:从 `dataops_datatable +dict_search_tables` 开始做可见 DataOps catalog discovery。
- 仅在需要 raw engine metadata 时使用 `dataops_ide +search_tables`,仅在已知 catalog/schema browsing 时使用 `dataops_ide +ide_list_tables`。
- 用 `dataops_datatable` 创建表/视图,不用 `dataops_ide`;创建仅限 DEV,且必须用 `+publish_entity` 发布。
- DDL 遵循 Trino 语法;当前空间 view DDL 应保留字面量 `${env}` 占位符。
- 表/视图详细工作流、命令 flags、示例和参数说明见 `references/dataops-table.md`。
- Flow 编排:在 DEV 中创建和更新任务;在 PROD 执行前 preview/release。
- 将 `+delete_task` 视为高风险:用 `+get_flow_overview` 验证目标,用 `--dry-run` 预览,并仅在用户明确确认后使用 `--yes`;删除影响 DEV,需 release flow 才能应用到 PROD。
- `+execute_flow` 总是运行 PROD;返回 `executeId` 用于提前停止。
- 优先使用 operations 搜索得到的 `flowInstanceId` 进行稳定检查和排障。
- Backfill job 是持久化的并批量处理多个 base date;不要通过循环 `+execute_flow` 模拟。
- 将创建和运行 backfill job 作为分离步骤;`+rerun_backfill_job` 重跑完整 job,而不是只重跑失败 plans。
- `+update_backfill_job` 替换 DRAFT job 的完整配置;先检查 job,不要把它当作 partial patch。
- 将 `+delete_backfill_job` 视为高风险,确认前用 `--dry-run` 预览。
- 在任务 SQL 中以 `${paramKey}` 引用 workspace parameters。
- Flow 创建/配置详细命令见 `references/dataops-flow-create.md`;执行、监控、operation instance、任务日志和停止命令见 `references/dataops-flow-monitor.md`;持久化多日期 backfill jobs 见 `references/dataops-backfill.md`。
- IDE SQL 查询:IDE 仅用于 query;创建/修改/删除表用 `dataops_datatable`。
- 除非需要 raw engine metadata 或 schema browsing,优先用 `dataops_datatable +dict_search_tables` 做表发现。
- 只提交一条 read-only SQL 查询;它会创建平台受限的 download task;行不会内联返回,结果不是无限或完整导出。
- IDE 详细元数据浏览、SQL 查询、异步下载、取消工作流见 `references/dataops-query.md`。
- 数据集成:根据 reference templates 生成 `sourceConfig`、`sinkConfig`、`channelConfig`、`fieldsMapping`;不要发明 key。
- MySQL Source read partitioning 使用 `sourceConfig.splitColumn`;`fieldsMapping.shardingKey` 是列元数据,不能用于该目的。
- `+save_sync_solution` 不是 partial patch:先调用 `+get_sync_detail --withParams true`,再提交完整 configs;`syncName` 为兼容而接受但被忽略。
- Preset repository sync 使用 `te_etl@TASK_ENGINE_TRINO` 并要求 gateway configuration。
- 停止运行中的 sync 前,使用 `+list_sync_runs` 获取 `taskId`。
- 数据集成详细 datasource、元数据浏览、同步方案、执行和监控工作流见 `references/dataops-integration.md`。
- 详细命令 flag 和用法参考 `references/` 目录中的命令文档。
适用边界 · 注意事项
- 未安装或未配置 ae-cli,或没有 AE 平台访问权限时。
- 需要通过 IDE 执行 DDL 或需要返回无限/完整 SQL 导出结果,而不是平台受限 download task 时。
- 非 AE DataOps 环境,或目标工具不是 ae-cli 的场景。