1、python脚本调用odps流程
-
如果平台python版本比较低,会无法使用run_script方法,目前作者没有找到解决的办法
sqlfrom odps import ODPS # 创建 ODPS 对象,如果该脚本是在阿里云DataWorks上运行的,下面4句可删了 access_id = '<your-access-id>' access_key = '<your-access-key>' project_name = '<your-project-name>' odps = ODPS(access_id, access_key, project_name) # 指定脚本名称 script_name = 'my_script' # 定义参数 params = { '@param1': 'value1', '@param2': 'value2' } # 调用 ODPS Script instance = odps.run_script(script_name, params=params) instance.wait_for_success() # 获取查询结果 with instance.open_reader() as reader: for record in reader: print(record)
2、python脚本调用执行sql
sql
from odps import ODPS
# 创建 ODPS 对象,如果该脚本是在阿里云DataWorks上运行的,下面4句可删了
access_id = '<your-access-id>'
access_key = '<your-access-key>'
project_name = '<your-project-name>'
odps = ODPS(access_id, access_key, project_name)
# 定义参数
param1 = 'value1'
param2 = 'value2'
# 动态构建 SQL 语句
sql = f"SELECT * FROM my_table WHERE column1 = '{param1}' AND column2 = '{param2}'"
# 执行 SQL
instance = odps.run_sql(sql)
instance.wait_for_success()
# 获取查询结果
with instance.open_reader() as reader:
for record in reader:
print(record)