调用kylin的restAPI接口构建cube

时间:2022-07-24 10:31:08

调用kylin的restAPI接口构建cube

参考:http://kylin.apache.org/docs/howto/howto_build_cube_with_restapi.html

1. 调用cube的构建操作

curl -X PUT -H "Authorization: Basic QURNSU46IUB3c3VPOTAtQw==" -H 'Content-Type: application/json' -d '{"startTime":'1501632000000', "endTime":'1501718400000', "buildType":"BUILD"}' http://10.214.234.111:7070/kylin//api/cubes/test_cube_gov_hall_movie_box/build

kylin的cube的buid操作需要输入的参数:

{
"startTime":'1501632000000',
"endTime":'1501718400000',
"buildType":"BUILD"
}

其中kylinUI上默认的时间是8点整。2017/8/3 08时0分0秒转换成毫秒数,就是开始startTime的值。

startTime 和endTime都需要是每天的8点整的毫秒数。

调用kylin restapi的权限认证:使用Base64编码的用户名和密码,作为权限码。

可以使用如下方法生成Base64编码。

public class Base64Demo {
public static void main(String[] args){
String encode_str = "ADMIN:!@wsuO90-C";
String decode_str = "QURNSU46S1lMSU4=";
try{
// 编码
byte[] encodeBase64 = Base64.encodeBase64(encode_str.getBytes("UTF-8"));
System.out.println("ENCODE RESULT: " +new String(encodeBase64)); // 解码
byte[] decodeBase64 = Base64.decodeBase64(decode_str.getBytes("UTF-8"));
System.out.println("DECODE RESULT: " +new String(decodeBase64)); } catch(UnsupportedEncodingException e){
e.printStackTrace();
} }
}

2. 删除kylin中无用的segment

REST API for deleting segment

https://issues.apache.org/jira/browse/KYLIN-1540

curl -X DELETE -H "Authorization: Basic QURNSU46IUB3c3VPOTAtQw==" http://10.214.234.111:7070/kylin/api/cubes/test_cube_gov_hall_movie_box/segs/19700118090516_19700118090643