Apache kylin Restful API

Apache Kylin的主要API:

1.用户认证 post  /kylin/api/user/authentication

curl -c /path/to/cookiefile.txt -X POST -H "Authorization: Basic XXXXXXXXX" -H 'Content-Type: application/json' http://<host>:<port>/kylin/api/user/authentication
选择的-c后面的路径下保存了jsession id的cookiefile文件

下次调用时直接-b

curl -b /path/to/cookiefile.txt -X PUT -H 'Content-Type: application/json' -d '{"startTime":'1423526400000', "endTime":'1423526400', "buildType":"BUILD"}' http://<host>:<port>/kylin/api/cubes/your_cube/build
当然也可以用--user参数直接显示的输入用户名和密码

curl -X PUT --user ADMIN:KYLIN -H "Content-Type: application/json;charset=utf-8" -d '{ "startTime": 820454400000, "endTime": 821318400000, "buildType": "BUILD"}' http://localhost:7070/kylin/api/cubes/kylin_sales/build
2.查询 post /kylin/api/query

需要用到参数:

sql //string类型的参数,需要执行的sql语句

offset //int类型的参数,开始执行的位置,若在sql中指定了则可以将此参数省略

limit //int类型的参数,限制返回的行数,同样如果在sql中指定了则可以省略此参数

acceptPartial //布尔型的参数,是否接受返回部分结果

project //string类型的参数,执行query的工程,默认值为DEDFAULT

{  
   "sql":"select * from TEST_KYLIN_FACT",
   "offset":0,
   "limit":50000,
   "acceptPartial":false,
   "project":"DEFAULT"
}
curl的sample

curl -X POST -H "Authorization: Basic XXXXXXXXX" -H "Content-Type: application/json" -d '{ "sql":"select count(*) from TEST_KYLIN_FACT", "project":"learn_kylin" }' http://localhost:7070/kylin/api/query
返回结果的各参数含义:

columnMetas:结果集中的各列的元数据信息

results:返回的数据结果集

cube:此次查询用到的cube

affectedRowcount:此次查询受影响的行数

isException:此次返回的结果是否异常

ExceptionMessage:返回的异常的内容

Duration:此次查询花费的时间

Partial:返回的结果是否为这次查询结果的一部分

3.列出可供查询的表 get /kylin/api/tables_and_columns

参数:

project:string类型的参数,需要查询的工程项目名

4.列出可供查询的cube名字 get /kylin/api/cubes

参数:

offset:int类型的参数,分页中的偏移量

limit:int类型的参数,每页中的偏移量

cubeName:string类型的参数,cube名字中的关键字

projectName:string类型的参数,使用的项目的名字

5.获取cube   get /kylin/api/cubes/{cubeName}

路径中需要指定的参数:

cubeName:string类型的参数,需要查找的cube的名字

6.获取cube的描述信息   get    /kylin/api/cube_desc/{cubeName}

路径中需要指定的参数:

cubeName:string类型的参数,需要获取描述信息的cube的名字

7.获取数据的模式    get /kylin/api/model/{modelName}

路径中需要配置的参数:

modelName:string类型的参数,数据模型的名字

8.构建cube   Put  /kylin/api/cubes/{cubeName}/build

路径中需要配置的参数:

cubeName:string类型的参数,cube的名字

返回信息中的参数:

startTime:开始构建cube的初始时间

endTime:构建cube的结束时间

buildType:构建cube的类型:BUILD  MERGE REFRESH

curl -X PUT -H "Authorization: Basic XXXXXXXXX" -H 'Content-Type: application/json' -d '{"startTime":'1423526400000', "endTime":'1423526400', "buildType":"BUILD"}' http://<host>:<port>/kylin/api/cubes/{cubeName}/build
9.启用 cube   PUT   /kylin/api/cubes/{cubeName}/enable

路径中需要配置的参数:

cubeName:string类型的参数  cube的名字

10.禁用cube    PUT  /kylin/api/cubes/{cubeName}/purge

路径中需要配置的参数:

cubeName:string类型的参数,cube的名字

11.恢复任务   Resume job   PUT  /kylin/api/jobs/{jobId}/resume

路径中需要配置的参数:

jobId:string类型的参数,job id

12. Pause job 停用job   PUT  /kylin/api/jobs/{jobId}/pause

路径中需要配置的参数:

jobId:string类型的参数,job  id

13.discard job 弃用job   PUT  /kylin/api/jobs/{jobId}/cancel

路径中需要配置的参数:

jobId:string类型的参数,job id

14.获取job的状态信息   GET   /kylin/api/jobs/{jobId}

路径中需要配置的参数:

jobId:string类型的参数,job id

15.获取job每一步的输出   GET   /kylin/api/jobs/{jobId}/steps/{stepId}/output

路径中需要配置的参数信息:

jobId:string类型的参数,job id

stepId:string类型的参数,要返回的步骤的id

16.获取hive的表  GET    /kylin/api/tables/{tableName}

需要的参数:

tableName:string类型的参数,查找的hive表的名字

17.获取hive表的扩展信息  GET  /kylin/api/tables/{tableName}/exd-map

需要的参数信息:

tableName:string类型的参数,要返回信息的表名

18.获取hive中的所有的表  GET  /kylin/api/tables

需要的参数信息:

project:string类型的参数,需要列出所有表的工程名

ext:布尔类型的参数,是否返回扩展信息

19.加载hive中的表,多个    POST   /kylin/api/tables/{tables}/{project}

需要用到的参数:

tables:string类型的参数 用逗号分割,需要从hive中加载的表名字

project:string类型的参数,需要把hive中的表加载到的工程名字

20.清除缓存   PUT  /kylin/api/cache/{type}/{name}/{action}

路径中需要配置的信息:

type:string类型的参数  METADATA 或者CUBE

name:string类型的参数,cache的关键字,比如:cube  name

action:string类型的参数,create  update 或者 drop

21.初始化数据集的初始位置  

PUT /kylin/api/cubes/{cubeName}/init_start_offsets

路径中需要指定的参数信息:

cubeName:string类型的参数

22.构建流式的cube

PUT   /kylin/api/cubes/{cubeName}/build2

路径中需要配置的参数:

cubeName:string类型的参数 

需要的参数:

sourceOffsetStart:long类型的参数   0代表以前位置

sourceOffsetEnd:long类型的参数 

buildType:需要的build的类型  BUILD MERGE  REFRESH

23.检查文件segment的holes   GET  /kylin/api/cubes/{cubeName}/holes

路径的配置参数:

cubeName:string类型参数

24.填充的segment holes   PUT   /kylin/api/cubes/{cubeName}/holes

路径中需要配置的参数信息:

cubeName:string类型的参数

见官网:

http://kylin.apache.org/docs20/howto/howto_use_restapi.html#authentication








猜你喜欢

转载自blog.csdn.net/songchunhong/article/details/79144080