文档首页/ 智能数据湖 AIDataLake/ Aura语法参考/ 快速开始:使用Aura端点运行DataFrame或SQL作业
更新时间:2026-07-09 GMT+08:00
分享

快速开始:使用Aura端点运行DataFrame或SQL作业

操作场景

AI DataLake支持提交DataFrame或SQL作业至Aura端点中运行,支持使用Python编辑器和DataArts Studio开发作业,DataArts Studio开发作业详细操作,请参见快速上手使用AI DataLake查询数据

本章节为您演示如何使用Python编辑器提交DataFrame作业,包括以下操作:

1.创建一张data_frame_test_create_table表,表中包含col_a(int)和col_b(str)两列。

2. 向表中插入数据。

3. 查询表中插入的数据。

4. 删除表中的数据。

前提条件

  • 已创建工作空间,详细操作请参见创建工作空间
  • 已创建计算资源,详细操作请参见购买预留资源池
  • 已创建Aura端点,详细操作请参见创建Aura引擎端点
  • 已获取用户的AK、SK信息。
    1. 在管理控制台页面,鼠标移动至右上方的用户名,在下拉列表中选择“我的凭证”。
    2. 单击“访问密钥”页签,单击“新增访问密钥”,输入验证码或密码。
    3. 单击“确定”,生成并下载访问密钥。在.csv文件中获取用户的AK、SK信息。

使用Python编辑器提交DataFrame作业至Aura端点运行

在Python环境下运行以下代码,即可实现DataFrame作业提交至Aura端点运行。相关端点信息通过ai_lake.connect()函数进行配置,同时建立与Aura端的连接。

ai_lake.connect()相关参数说明请参见表1

表1 ai_lake.connect()接口参数信息

参数

含义

aura_endpoint

指定连接的Endpoint信息,请参见地区和终端节点获取。

aura_endpoint_id

指定连接的Aura端点ID。

可登录AI DataLake控制台,在左侧导航栏选择“引擎管理 > 多模数据引擎 Aura”,在Aura端点列表中的“名称/ID”列查看要运行作业的端点ID信息。

aura_workspace_id

指定连接的工作空间ID。

可登录AI DataLake控制台,在左侧导航栏中,单击工作空间区域,在下拉列表中选择“工作空间管理”,在工作空间列表中的“空间名称/ID”列查看运行作业的Aura端点所在工作空间的ID信息。

aura_endpoint_name

指定连接的Aura端点名。

lf_catalog_name

指定连接的LakeFormation Catalog目录。

lf_instance_id

指定LakeFormation实例的ID。

access_key

指定连接的访问密钥ID。

secret_key

指定连接的访问密钥。

security_token

指定连接的安全令牌(仅在上述访问密钥ID,访问密钥是临时的情况下需要)。

logging_level

指定日志级别。

verify

指定连接的认证。

default_database

指定连接默认使用的数据库名称。

use_single_cn_mode

指定是否使用单cn模式。

api_version

指定使用的API版本,默认为v2。

ai_lake.connect()有两种不同的API接口,根据api_version参数的取值分为两种建立连接的方式,该参数默认为v2。

api_version="v1":需要传入aura_endpoint_id,lf_instance_id和lf_catalog_name。

from aura_frame.multimodal import ai_lake

conn = ai_lake.connect(
    aura_endpoint="xxx",
    aura_endpoint_id="endpoint-id",
    aura_workspace_id="workspace-id",
    lf_catalog_name="lf-name",
    lf_instance_id="lf-id",
    access_key='ak-xxxx',
    secret_key='sk-xxxx',
    default_database="postgres",
    use_single_cn_mode=True,
    api_version="v1"
)

api_version="v2":需要传入aura_endpoint_name和lf_catalog_name。

from aura_frame.multimodal import ai_lake

conn = ai_lake.connect(
    aura_endpoint="xxx",
    aura_endpoint_name="endpoint_name",
    aura_workspace_id="workspace-id",
    lf_catalog_name="lf-name",
    access_key='ak-xxxx',
    secret_key='sk-xxxx',
    default_database="postgres",
    use_single_cn_mode=True,
    api_version="v2"
)

使用示例:

import ibis
from aura_frame.multimodal import ai_lake

def aura_connection():
    conn = ai_lake.connect(
        aura_endpoint="xxx",
        aura_endpoint_name="endpoint_name",
        aura_workspace_id="workspace-id",
        lf_catalog_name="lf-name",
        access_key='ak-xxxx',
        secret_key='sk-xxxx',
        default_database="postgres",
        use_single_cn_mode=True,
        api_version="v2"
    )
    return conn

if __name__ == "__main__":
    table_name = "data_frame_test_create_table"
    db = "dataframe_test"
    set_schema_sql = "set current_schema=dataframe_test"
    # get connection
    aura_con = aura_connection()
    aura_connsql(set_schema_sql)
    aura_conndrop_table(table_name, database=db, force=True)
    
    # create table
    aura_conncreate_table(table_name, schema={"col_a": ibis.dtype("int64"), "col_b": ibis.dtype("string")}, database=db)
    
    # insert rows
    aura_connsql("INSERT INTO dataframe_test.data_frame_test_create_table VALUES(1, 's1'), (2, 's2'), (3, 's3')")

    # select rows
    ds = aura_connload_dataset(table_name, database=db)
    ds.select_columns([ds.col_a, ds.col_b]).show(3)
    
    # drop table
    aura_conndrop_table(table_name, database=db)
    aura_connclose()
    

DataFrame作业示例运行成功后,回显结果如下,例如:

[INFO] [Aura Frame] 2026-04-21 11:52:09 Setting guc options: 'SET timezone = UTC; SET obs_result_format = 2;SET current_schema = ffff;SET fq_query_vdn = 1;'
[INFO] [Aura Frame] 2026-04-21 11:52:10 Created session 27b69c6c-0e69-4507-8e01-056517818006 successfully.
[INFO] [Aura Frame] 2026-04-21 11:52:11 Dropping table dataframe_test.data_frame_test_create_table
[INFO] [Aura Frame] 2026-04-21 11:52:11 Creating table dataframe_test.data_frame_test_create_table
[INFO] [Aura Frame] 2026-04-21 11:52:11 CREATE TABLE "dataframe_test"."data_frame_test_create_table" ("col_a" BIGINT, "col_b" TEXT)
[INFO] [Aura Frame] 2026-04-21 11:52:16 Loading dataset dataframe_test.data_frame_test_create_table
[INFO] [Aura Frame] 2026-04-21 11:52:21 SQL statement for executing:
SELECT *
FROM "dataframe_test"."data_frame_test_create_table" AS "t0"
LIMIT 3
[INFO] [Aura Frame] 2026-04-21 11:52:25 Running SQL statement, id is c8ec7709-7825-4c53-b3bc-cbbedae85bba
   col_a col_b
0      1    s1
1      2    s2
2      3    s3
[INFO] [Aura Frame] 2026-04-21 11:52:25 Dropping table dataframe_test.data_frame_test_create_table

相关文档