AuraJobV2作业接口应用示例
概述
本文指导用户通过调用API的方式,介绍使用AuraJobV2作业的完整流程,包括创建会话、执行SQL、查看SQL执行结果、关闭会话等。
本流程假设终端租户已经在Console界面完成AI DataLake的服务授权,且已创建工作空间和会话端点。API的调用方法请参见如何调用API。
前提条件
- Aura端点已创建成功并处于“运行中”。
- 已获取待创建会话Aura的引擎地址。
- 已获取待创建会话的工作空间ID。
- 已获取待创建会话的端点名称。
- 已获取待创建会话的lakeformation的catalog名称。
创建会话
- 接口相关信息
- 请求示例
POST /v2/workspaces/{workspace_id}/aura-sessions
{workspace_id}:端点所在工作空间ID。
Body:{ "endpoint_name":"aura-job-vzhh", "catalog_context":{ "catalog_name": "xxx_default", } } - 响应示例
{ "session_id": "019ec92b-f4cc-xxxx-xxxx-C46dcdd60929", "status": "RUNNING" }
执行SQL
- 接口相关信息
URI格式:POST /v2/workspaces/{workspace_id}/aura-sessions/statements
- 请求示例
POST /v2/workspaces/{workspace_id}/aura-sessions/statements
{workspace_id}:端点所在工作空间ID。
Body:{ "statement":"DROP SCHEMA IF EXISTS abcdefgh CASCADE;CREATE SCHEMA abcdefgh;drop function if exists test gpu;CREATE FUNCTION test_gpu(x INTEGER)\nRETURNS TEXT\nhandler = .check gpu simple'\nruntime version = '3.11'\nAS $$\ndef check gpu_simple(x):\nreturn \"hello world\"\n$S LANGUAGE python;", "limit":"1", "session_id": "019ec92b-f4cc-xxxx-xxxx-C46dcdd60929", "is_sync": false } - 响应示例
{ "session_id": "019ec92b-f4cc-xxxx-xxxx-C46dcdd60929", "statement_id": "019eb5fb-871d-xxxx-xxxx-68534fa6f089", "status": 1 }
查看SQL执行结果
- 接口相关信息
URI格式:POST /v2/workspaces/{workspace_id}/aura-sessions/statements/{statement_id}
- 请求示例
POST /v2/workspaces/{workspace_id}/aura-sessions/statements/{statement_id}
- {workspace_id}信息为端点所在工作空间ID。
- {statement_id}信息为SQL执行的任务ID。
- 响应示例。
{ "status" : 0, "session_id" : "019ec92b-f4cc-xxxx-xxxx-C46dcdd60929", "statement_id" : "019eb5fb-871d-xxxx-xxxx-68534fa6f089", "results" : [ { "status" : "PGRES_TUPLES_OK", "statement_id" : "019eb5fb-871d-xxxx-xxxx-68534fa6f089", "num_rows" : 1, "row_count" : 1, "page_count" : 1, "page_no" : 1, "err_code" : "0", "sql_state" : "0", "message" : "", "result_set" : { "columns" : [ { "name" : "test_gpu", "table_id" : 0, "column_id" : 0, "format" : 0, "type" : 25, "size" : -1, "type_mod" : -1 } ], "rows" : [ [ "0000000" ] ] } } ] }