SuperAPI AI 工具集

finops

部署与运维

查看项目

更新于 10-15 11:20

技能介绍

用途

该技能用于让 AI 智能体分析、归因并降低 Lakehouse 架构相关的云成本,覆盖存储、计算和 API 操作三个方面。Lakehouse 容易因陈旧快照、孤立文件、过多的 API 调用(如 S3 PUT/GET)以及未优化的集群而快速变得昂贵,该技能教导智能体在 Databricks、AWS EMR 和 Snowflake 上实施严格的 FinOps 实践。

主要能力

1. 存储优化(快照与孤立文件清理)

数据表版本和快照会随时间累积。技能建议按环境设定清理阈值:

  • 生产环境:为 Time Travel 保留 7-14 天。
  • 开发/测试环境:保留 1-3 天。

Delta Lake 清理命令:

-- Delta Lake (Databricks)
VACUUM catalog.schema.table_name RETAIN 168 HOURS;

Apache Iceberg 清理命令:

-- Apache Iceberg (Spark)
CALL catalog.system.expire_snapshots(
  table => 'catalog.schema.table_name',
  older_than => TIMESTAMP '2023-10-01 00:00:00.000',
  retain_last => 5
);

-- Clean up orphaned files not referenced by any snapshot
CALL catalog.system.remove_orphan_files(
  table => 'catalog.schema.table_name'
);

2. 计算 FinOps(Databricks / Spark)

在分析 PySpark 作业配置时,技能会查找以下反模式:

  • 过度配置:在集群利用率指标显示低于 30% 时仍使用大型实例类型(如 r6g.16xlarge)。
  • 自动伸缩限制:建议设置严格的 max_workers,以防止数据倾斜期间成本失控。
  • Spot 实例:对于 ETL 批处理作业,强制要求工作节点使用 Spot/Preemptible 实例。

Terraform 配置示例建议:

resource "databricks_cluster" "etl_cluster" {
  # ...
  autoscale {
    min_workers = 2
    max_workers = 10 # 🛡️ FinOps Guardrail
  }
  aws_attributes {
    spot_bid_price_percent = 100
    first_on_demand        = 1
    availability           = "SPOT_WITH_FALLBACK" # 🛡️ Cost Saver
  }
}

3. S3/云存储 API 成本

Iceberg 和 Delta 需要频繁的 LIST 和 PUT 请求。技能会检查:如果流式作业每 10 秒向 S3 提交一次,则计算 API 成本((606024*30 / 10) * S3_PUT_Cost)。建议在实时延迟不是严格 SLA 要求时,增大触发间隔(如 1-5 分钟)以提升成本效率。

4. 标签与归因

确保所有云资源和表都打上标签以便 FinOps 归因。必需标签:CostCenter、Environment、DataDomain。

Unity Catalog 示例:

ALTER TABLE main.sales SET TAGS ('CostCenter' = 'Finance');

使用方式

该技能以指令形式提供给 AI 智能体,智能体在分析 Lakehouse 相关配置、作业和资源时应用上述规则,并输出结构化的 FinOps 审计报告。报告格式如下:

### 💰 FinOps Audit Report: `[Pipeline/Table Name]`

#### 🔍 Compute Analysis
- **Finding:** The Spark job `Daily_Agg_Job` is using 20 on-demand `i3.4xlarge` nodes.
- **Recommendation:** Switch worker nodes to `SPOT_WITH_FALLBACK`. Estimated monthly savings: **~60%**.

#### 🗄️ Storage Analysis
- **Finding:** Table `clickstream_raw` has 12,000 retained snapshots dating back 2 years.
- **Recommendation:** Implement a daily `VACUUM` / `expire_snapshots` job retaining only the last 7 days.

#### 🏷️ Tagging
- ❌ Missing `CostCenter` tag on the S3 destination bucket.

适用场景

  • 使用 Databricks、AWS EMR 或 Snowflake 构建 Lakehouse 的团队。
  • 需要审计和优化云成本的数据工程与平台团队。
  • 需要为存储、计算和 API 操作建立成本归因标签体系的组织。

限制

资料中未提供该技能的具体安装方式、支持的平台版本、收费信息或效果保证。