操作场景
在进行二次开发时,要准备的开发环境如表2-4所示。
表2-4 开发环境
准备项 说明
操作系统 Windows系统,推荐Windows 7及以上版本。
SDK 参考 2 SDK 准备环境
准备项 说明
安装Python Python版本建议使用2.7.10和3.4.0以上版本。
安装Python依赖库 DLI Python SDK依赖第三方库包括:urllib3 1.15以上版本,
six 1.10以上版本,certifi,python-dateutil。
操作步骤
步骤1 从Python官网下载并安装Python版本。
1. 根据Python官方指导安装Python版本。
2. 检验是否配置成功,运行cmd ,输入 python。运行结果,请参见图2-5,显示版 本信息,则说明安装和配置成功。
图2-5 检验配置是否成功
步骤2 安装DLI服务Python SDK。
1. 选择SDK下载的jar包,解压安装包。
将"dli-sdk-python-<version>.zip"解压到本地目录,目录可自行调整。
2. 安装SDK。
a. 打开Windows操作系统“开始”菜单,输入cmd命令。
b. 在命令行窗口,进入“dli-sdk-python-<version>.zip”解压目录下的 windows目录。例如:“D:\tmp\dli-sdk-python-1.0.8”。
c. 执行如下命令安装DLI服务Python SDK,安装过程中会自动下载第三方依赖 库。
python setup.py install 运行结果参见图2-6所示。
图2-6 安装 Python SDK
----结束
SDK 参考 2 SDK 准备环境
3 DLI SDK 与 API 的对应关系
OBS 授权
表3-1 OBS 授权相关 API&SDK 的对应关系表 Class Metho
d Java Method Python
Method API Autho
rize OBS授
权
authorizeBuck
et
- POST /v1.0/{project_id}/dli/obs-authorize队列相关
表3-2 队列相关 API&SDK 的对应关系表
Class Method Java Method Python
Method API
Queue 创建队列
createQueue
- POST /v1.0/{project_id}/queues 删除队列
deleteQueu
e
- DELETE /v1.0/{project_id}/queues/{queue_name}
获取默认队
列
getDefaultQ
ueue
--查询所有队
列
listAllQueue
s list_queue
s
GET/v1.0/{project_id}/queues
SDK 参考 3 DLI SDK 与 API 的对应关系
资源相关
表3-3 资源相关 API&SDK 的对应关系表 Class Method Java
Method Python
ce
POST /v2.0/{project_id}/resources 删除资源包
deleteReso
urce delete_resour
ce
DELETE /v2.0/{project_id}/resources/
{resource_name}
查询所有资
源包
listAllResou
rces list_resources
GET /v2.0/{project_id}/resources 查询指定资
源包
getResourc
e get_package_r
esource
GET /v2.0/{project_id}/resources/
{resource_name}
SQL 作业相关
表3-4 SQL 作业相关 API&SDK 的对应关系表 Class Method Java Method Python
Method API Datab
ase 创建数据库
createDatab
ase create_dat
abase
POST /v1.0/{project_id}/databases 删除数据库
deleteDatab
ase delete_dat
abase
DELETE /v1.0/{project_id}/databases/{database_name}
查询所有数 据库
listAllDatab
ases list_datab
ases
GET /v1.0/{project_id}/databases 修改数据库
用户 - - PUT /v1.0/{project_id}/
databases/
{database_name}/owner Table 创建DLI表
createDLITa
ble create_dli_
table
POST /v1.0/{project_id}/databases/
{database_name}/tables 创建OBS表
createObsTa
ble create_obs
_table
POST /v1.0/{project_id}/databases/
{database_name}/tables 删除表
deleteTable delete_tab
le
DELETE /v1.0/{project_id}/databases/
{database_name}/tables/
{table_name}
SDK 参考 3 DLI SDK 与 API 的对应关系
Class Method Java Method Python
Method API
查询所有表
listAllTables list_tables
GET /v1.0/{project_id}/databases/
schema
GET /v1.0/{project_id}/databases/
{database_name}/tables/
{table_name}
预览表内容 - - GET /v1.0/{project_id}/
databases/
{database_name}/tables/
{table_name}/preview 修改表用户 - - PUT /v1.0/{project_id}/
databases/
{database_name}/tables/
{table_name}/owner
Job 导入数据
submit import_ta
ble
POST /v1.0/{project_id}/jobs/import-table
导出数据
submit export_ta
ble
POST /v1.0/{project_id}/jobs/export-table
提交作业
submit execute_s
ql
POST /v1.0/{project_id}/jobs/submit-job
取消作业
cancelJob
- DELETE /v1.0/{project_id}/jobs/{job_id}
查询所有作 业
listAllJobs
- GET /v1.0/{project_id}/jobs?page-size={size} ¤t-page={page_number}&start
={start_time}&end={end_tim e}
ultInfo
- GET/v1.0/{project_id}/jobs/{job_id}?page-size={size} ¤t-page={page_number}
查询作业状
态 - - GET/v1.0/{project_id}/jobs/
{job_id}/status 查询作业详
细信息
- - GET/v1.0/{project_id}/jobs/
{job_id}/detail
SDK 参考 3 DLI SDK 与 API 的对应关系
Class Method Java Method Python
Method API 查询SQL类
型作业
listSQLJobs
--检查SQL语
法 - - POST /v1.0/{project_id}/
jobs/check-sql 导出查询结
果 - - POST /v1.0/{project_id}/
jobs/{job_id}/export-result
Flink 作业相关
表3-5 Flink 作业相关 API&SDK 的对应关系表 Class Method Java Method Python
Method API Job 创建Flink
SQL作业
submitFlinkSq
lJob
- POST /v1.0/{project_id}/streaming/sql-jobs 创建Flink
自定义作业
createFlinkJar
Job
- POST /v1.0/{project_id}/streaming/flink-jobs 更新Flink
SQL作业
updateFlinkSq
lJob
- PUT /v1.0/{project_id}/streaming/sql-jobs/{job_id}
更新Flink
自定义作业
updateFlinkJa
rJob
- PUT /v1.0/{project_id}/streaming/flink-jobs/{job_id}
查询Flink
作业列表
getFlinkJobs
- GET /v1.0/{project_id}/streaming/jobs 查询Flink
作业详情
getFlinkJobDe
tail
- GET /v1.0/{project_id}/streaming/jobs/{job_id}
查询Flink 作业执行计 划图
getFlinkJobEx
ecuteGraph
- GET /v1.0/{project_id}/streaming/jobs/{job_id}/
etrics
- POST /v1.0/{project_id}/streaming/jobs/metrics
inks
- GET /v1.0/{project_id}/streaming/jobs/{job_id}/apig-sinks
运行Flink
作业
runFlinkJob
- POST /v1.0/{project_id}/streaming/jobs/run
SDK 参考 3 DLI SDK 与 API 的对应关系
Class Method Java Method Python
Method API 停止Flink
作业
stopFlinkJob
- POST /v1.0/{project_id}/streaming/jobs/stop 批量删除Flink作业
deleteFlinkJo
bInBatch
- POST /v1.0/{project_id}/streaming/jobs/delete
Spark 作业相关
表3-6 Spark 作业相关 API&SDK 的对应关系表 Class Method Java
Method Python
batch_job
POST /v2.0/{project_id}/batches 删除批处理
作业
deleteBatc
hJob del_spark_bat
ch_job
DELETE /v2.0/{project_id}/batches/
{batch_id}
查询所有批
处理作业
listAllBatch
Jobs
- GET /v2.0/{project_id}/batches 查询批处理
作业详情 - - GET /v2.0/{project_id}/
batches/{batch_id}
查询批处理
作业状态
getStateBa
tchJob
- GET /v2.0/{project_id}/batches/{batch_id}/
state 查询批处理
作业日志
getBatchJo
bLog
- GET /v2.0/{project_id}/batches/{batch_id}/log
Flink 作业模板相关
表3-7 Flink 作业模板相关 API&SDK 的对应关系表 Class Java Method Python
Method API Template
createFlinkJob
Template
- POST /v1.0/{project_id}/streaming/job-templatesupdateFlinkJo
bTemplate
- PUT /v1.0/{project_id}/streaming/job-templates/{template_id}deleteFlinkJob
Template
- DELETE /v1.0/{project_id}/streaming/job-templates/{template_id}SDK 参考 3 DLI SDK 与 API 的对应关系
Class Java Method Python
Method API
getFlinkJobTe
mplates
- GET /v1.0/{project_id}/streaming/job-templatesSDK 参考 3 DLI SDK 与 API 的对应关系