计算节点API应用示例
准备数据
在调用API之前(分析类型),您需要准备如下数据。
数据项 |
名称 |
说明 |
样例 |
---|---|---|---|
TICS可信节点信息 |
项目ID |
TICS所属的项目ID。 |
1551c7f6c808414d8e9f3c514a170f2e |
可信节点ip |
可信节点页面访问IP和端口号,可参考计算节点所在虚机的IP:Port获取。 |
10.1.1.1 |
|
可信节点端口 |
31000 |
||
用户名 |
TICS可信节点用户名。 |
admin |
|
密码 |
用户密码。 |
123456 |
|
MySQL数据库 |
IP地址 |
本地的MySQL数据库的IP地址,且该地址允许可信节点所在虚机通过此IP访问。 |
1xx.1.1.1 |
端口 |
MySQL数据库的端口。 |
3306 |
|
驱动文件 |
对应数据库版本的驱动文件。 |
mysql-driver.jar |
|
用户名 |
访问MySQL数据库的用户,该用户拥有MySQL数据库的读、写和删除权限。 |
username |
|
密码 |
访问MySQL数据库的用户密码。 |
DB_password |
获取用户token
调用获取tokenAPI获取token。
- 调用其他API前,需要获取token,并设置成环境变量。
curl -k -v POST 'https://10.1.1.1:31000/v1/agent/user/token' -H 'Content-Type: application/json' -d '{"user_name":"admin","password":"123456"}'
响应体中“token”的值即为Token:
"token":OEVPUldpcDY1NENWUDdUOWowdXXXXX...
- 使用如下命令将token设置为环境变量,方便后续事项。
export X-Auth-Token = OEVPUldpcDY1NENWUDdUOWowdXXXXX..
获取可信节点详情
curl -k -v GET 'https://10.1.1.1:31000/v1/agents' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdXXXXX' -H 'Content-Type: application/json' -H 'X-Language: zh-cn'
获取到可信节点agent_id为edc8357011b0449ca985daabd531083c。
创建连接器
- IP地址为1x.1.1.1。
- 端口为3306。
- 登录用户为username。
- 密码为DB_password。
- 对应的驱动版本为mysql-connector-java-8.0.20.jar
如果返回状态码为201,则说明创建命令执行成功。
curl -k -v POST 'https://10.1.1.1:31000/v1/agents/connectors' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'Content-Type: application/json' -H 'X-Language: zh-cn' --form 'data_connector="{\"connector_type\":\"MYSQL\",\"name\":\"mysql-con\",\"ext_info\":\"{\\\"user_name\\\":\\\"username\\\",\\\"password\\\":\\\"DB_password\\\",\\\"jdbc_url\\\":\\\"jdbc:mysql://1xx.1.1.1:3306\\\",\\\"driver_name\\\":\\\"mysql-connector-java-8.0.20.jar\\\",\\\"properties\\\":\\\"\\\"}\",\"auth_type\":\"PWD\"}"' --form 'file=@"/D:/mysql-connector-java-8.0.20.jar"'
返回体中包含连接器id a8ad73d567e348f1ace5f5b9d499b683,保存备用。
创建数据集
- 连接器选择上一步创建的mysql-con,数据集名称:dataset_test。
- 创建的数据集对应的mysql数据库名称为demo1,表名称为mysql_tbl,字段名为credit_no、ent_name。
如果返回状态码为201,则说明创建命令执行成功。
curl -k -v POST 'https://10.1.1.1:31000/v1/agents/datasets' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'Content-Type: application/json' -H 'X-Language: zh-cn' -d '{ "name":"dataset_test", "connector_id":"a8ad73d567e348f1ace5f5b9d499b683", "connector_name":"mysql-con", "data_type":"MYSQL", "description":"this is a test ", "ag_dataset_table":{ "db_schema":"demo1", "table_name":"dim_enterprise" }, "columns":[ { "column_name":"credit_no", "data_type":"STRING", "comments":"企业号(企业社会信用代码)", "sql_col_privacy_type":"SENSITIVE", "privacy_policy":"NONE" }, { "column_name":"ent_name", "data_type":"STRING", "comments":"企业名称", "sql_col_privacy_type":"NON_SENSITIVE", "privacy_policy":"NONE" } ] }'
发布数据集
调用发布数据集到空间API发布已创建的数据集
curl -k -v POST 'https://10.1.1.1:31000/v1/agents/edc8357011b0449ca985daabd531083c/datasets/35684e38484d41a0a3b8f46148a56456/publish' -H 'Content-Type: application/json' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'X-Language: zh-cn'
创建分析型作业
curl -k -v POST 'https://10.1.1.1:31000/v1/098593b07680d2a32f62c004a482da10/leagues/edf4254ecfd64aabbf896a522693ab05/sql-jobs' -H 'Content-Type: application/json' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'X-Language: zh-cn' -d '{ "name":"sql-test", "description":"", "agent_id":"edc8357011b0449ca985daabd531083c" }'
保存分析型作业
调用保存联邦分析作业API创建具体作业内容
作业sql内容为查询刚发布的数据集记录。
curl -k -v PUT 'https://10.1.1.1:31000/v1/098593b07680d2a32f62c004a482da10/leagues/edf4254ecfd64aabbf896a522693ab05/sql-jobs/8aa10b98d4eb47a4852f201a8137794f' -H 'Content-Type: application/json' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'X-Language: zh-cn' -d '{ "description":"", "ext":"{}", "name":"sql-test", "sql_text":"select * from LEAGUE_CREATOR.DATASET_TEST" }'
执行作业
调用执行联邦分析作业API执行已保存的分析作业
curl -k -v POST 'https://10.1.1.1:31000/v1/098593b07680d2a32f62c004a482da10/leagues/edf4254ecfd64aabbf896a522693ab05/sql-jobs/8aa10b98d4eb47a4852f201a8137794f/execute' -H 'Content-Type: application/json' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'X-Language: zh-cn'
查询作业结果
调用查询执行结果API查询作业结果
curl -k -v GET 'https://10.1.1.1:31000/v1/agents/edc8357011b0449ca985daabd531083c/job-instances/63d183a021744fd3b1cbf5e2e52d9de6/sample' -H 'Content-Type: application/json' -H 'X-Auth-Token: OEVPUldpcDY1NENWUDdUOWowdXXXXX' -H 'X-Language: zh-cn'
至此,使用开放api接口运行一个简单的分析作业流程结束,更多接口请参见接口详情。