SuperAPI AI 工具集

snowflake

编程与开发

查看项目

更新于 10-16 02:36

技能介绍

用途:面向 Snowflake 数据仓库的 API 操作技能,当用户提到 Snowflake、数据仓库、SQL API、warehouse、database、schema 等时使用。

主要能力:通过 SQL API 提交 SQL 语句(可携带 database、schema、warehouse、role 上下文)、查询语句状态、取消语句;通过 REST API 列出数据库、查看数据库详情、列出模式、列出与查看表、列出仓库,以及恢复(resume)和挂起(suspend)仓库。

使用方式:需设置环境变量 SNOWFLAKE_PAT(程序化访问令牌)与 SNOWFLAKE_ACCOUNT(账户标识,如 myorganization-myaccount)。基础地址为 https://${SNOWFLAKE_ACCOUNT}.snowflakecomputing.com/api,认证头为 --header "Authorization: Bearer $SNOWFLAKE_PAT"。SQL 语句以 JSON 写入 /tmp/snowflake_statement.json 后 POST 到 /api/v2/statements/;长查询返回 statement handle,可轮询 /api/v2/statements/<statement-handle> 直至完成。

排障:连接失败可运行 zero doctor check-connector --env-name SNOWFLAKE_PAT 或 zero doctor check-connector --url https://$SNOWFLAKE_ACCOUNT.snowflakecomputing.com/api/v2/databases --method GET。若报错 390432(需要网络策略),需由账户管理员在 Snowsight 中先执行 CREATE NETWORK POLICY pat_policy ALLOWED_IP_LIST = ('0.0.0.0/0'); 再执行 ALTER USER USER_NAME SET NETWORK_POLICY = pat_policy;,两条语句需分开执行;0.0.0.0/0 为临时放行,后续应收紧至运行方出口网段,并优先用 ALTER USER 而非 ALTER ACCOUNT。

限制与注意:PAT 认证可能需先配置网络策略与认证策略;建议使用最小权限角色;扫描表的查询通常需要请求体中的 warehouse 或用户默认仓库;名称含特殊字符时需 URL 编码。具体收费、价格与平台支持情况暂未提供。