1. 认证
POST http://localhost:7070/kylin/api/user/authentication
Authorization:Basic xxxxJD124xxxGFxxxSDF
Content-Type: application/json;charset=UTF-8
2. 获取Cube的详细信息
GET http://localhost:7070/kylin/api/cubes?cubeName={cube_name}&limit=15&offset=0
- 用户可以在返回的cube详细信息里找到cube的segment日期范围。
GET http://localhost:7070/kylin/api/cubes?cubeName=test_kylin_cube_with_slr&limit=15&offset=0
Authorization:Basic xxxxJD124xxxGFxxxSDF
Content-Type: application/json;charset=UTF-8
3. 然后提交cube构建任务
PUT http://localhost:7070/kylin/api/cubes/{cube_name}/rebuild
- 关于 put 的请求体细节请参考 Build Cube API
startTime
和 endTime
应该是utc时间。buildType
可以是 BUILD
、 MERGE
或 REFRESH
。 BUILD
用于构建一个新的segment, REFRESH
用于刷新一个已有的segment, MERGE
用于合并多个已有的segment生成一个较大的segment。
- 这个方法会返回一个新建的任务实例,它的uuid是任务的唯一id,用于追踪任务状态。
PUT http://localhost:7070/kylin/api/cubes/test_kylin_cube_with_slr/rebuild
Authorization:Basic xxxxJD124xxxGFxxxSDF
Content-Type: application/json;charset=UTF-8
{
"startTime": 0,
"endTime": 1388563200000,
"buildType": "BUILD"
}
4. 跟踪任务状态
GET http://localhost:7070/kylin/api/jobs/{job_uuid}
- 返回的
job_status
代表job的当前状态。
5. 如果构建任务出现错误,可以重新开始它
PUT http://localhost:7070/kylin/api/jobs/{job_uuid}/resume
6. 调整某个 cube 中的 cuboid list,触发 optimize segment 任务
PUT http://localhost:7070/kylin/api/cubes/{cube_name}/optimize2