如何利用API构建Cube更新Kylin数据

思路:kylin提供了api来创建job,详情可以参考:http://kylin.apache.org/cn/docs/howto/howto_use_restapi.html#build-cube

由于我这是写了个通用的sh来作为kylin cube的job调度的,所以需要在sh后面传入job name参数,如:kylin上有个aa的cube,那调度的时候执行 ./test.sh aa 就相当于在跑aa 的cube数据了。

aa.sh 内容如下:

#!/bin/bash

if [ $# -lt 2 ];then

_YYYY_MM_DD=$(date +%Y-%m-%d -d "0 days ago")

job_name=$1

else

_YYYY_MM_DD=$1

_YYYY_MM_DD=`date -d "${_YYYY_MM_DD} -1 days ago" "+%Y-%m-%d"`

job_name=$2

fi

echo $1

echo $2

echo $job_name

start_time=$(date -d "${_YYYY_MM_DD} 00:00:00" +%s)"000"

#时间需要转成1542902400000格式

date_time=`date -d "${_YYYY_MM_DD} -1 days ago" "+%Y-%m-%d"`

end_time=$(date -d "$date_time 00:00:00" +%s)"000"

echo $_YYYY_MM_DD

echo $date_time

echo $start_time

echo $end_time

curl -c /home/liuxh/cookiefile.txt -X POST -H "Authorization: Basic QURNSU46S1lMSU4=" -H 'Content-Type: application/json' http://192.168.1.111:7070/kylin/api/user/authentication

#生成cookiefile文件

curl -b /home/liuxh/cookiefile.txt -X PUT -H 'Content-Type: application/json' -d '{"startTime":'$start_time', "endTime":'$end_time', "buildType":"BUILD"}' http://192.168.1.111:7070/kylin/api/cubes/$job_name/rebuild   

#时间参数start_time,end_time ;cube名 job_name

 

每天更新增量数据就运行这个aa.sh xxx_cube 就好了,简单方便!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值