說明:
每天自動構建cube,動態在superset里面查看每天曲線變化圖
#! /bin/bash
##cubeName cube的名稱
##endTime 執行build cube的結束時間 (命令傳給Kylin的kylinEndTime = realEndTime + (8小時,轉化為毫秒)。只需要給Kylin傳入build cube的結束時間即可。)
##buildType BUILD 構建cube操作(還有Refresh、Merge等操作,增量構建為BUILD)
kylinMinusTime=$((8 * 60 * 60 * 1000)) #8小時對應的毫秒時間,這里是UTC時間,需要加8個小時
#today=`date -d now +%Y-%m-%d`
today="2018-11-14"
todayTimeStamp=`date -d "$today 00:00:00" +%s`
errorTimeStamp=`date "+%N"`
res=`echo $errorTimeStamp |grep '^0'`
if [ -z $res ];then
echo $res
else
errorTimeStamp=`echo $errorTimeStamp |cut -c2-10`
fi
todayTimeStampMs=$(($todayTimeStamp*1000 + $errorTimeStamp/1000000)) #將current轉換為時間戳,精確到毫秒
endTime=$(($todayTimeStampMs + $kylinMinusTime))
cubeName=xxx_cube
curl -X PUT -H "Authorization: Basic QURNSU46S1lMSU4=" -H 'Content-Type: application/json' -d '{"endTime":'$endTime', "buildType":"BUILD"}' http://ip:7070/kylin/api/cubes/$cubeName/rebuild