Kylin系列5-Kylin每日自动构建Cube

一. Cube的Build概述

前面的步骤,我们创建好Cube后,需要手工点击Build,让Kylin去聚合数据
image.png

生产环境,Hive里的数据每天都会发生变化,那么我们Kylin预聚合的数据也需要每天进行更新。
此时我们需要通过脚本实现自动Build我们创建好的Cube,然后通过调度系统,进行定时调度。

二. 代码及实战

生成密钥

[root@hp3 kafkadata]# python -c "import base64; print base64.standard_b64encode('ADMIN:KYLIN')"
QURNSU46S1lMSU4=

kylin_cube_build_new.sh 脚本

#!/bin/bash
#操作的cube名称
cube_name=$1

# 从第2个参数获取构建cube时间
if [ -n "$2" ]
then
    do_date=$2
else
    do_date=`date -d '-1 day' +%F`
fi



#获取00:00时间戳
    # +%s 代表将日期格式转化为时间戳 
    #Kylin使用的是UTC时间,+8个小时转化为gmt+8(东八区时区时间)
start_date_unix=`date -d "$do_date 08:00:00" +%s`
# *1000转化为毫秒
start_date=$(($start_date_unix*1000))

#获取24:00的时间戳
stop_date=$(($start_date+86400000))
#-X :请求类型  新增——POST  更新——PUT  查询——GET 删除——DELEATE
#-H :请求头
    #Authorization  授权,后面跟用户名密码
    #Basic  说明用户名和密码用了Basic
#Content-Type——声明请求为json类型
#url为固定格式
curl -X PUT -H "Authorization: Basic QURNSU46S1lMSU4=" -H 'Content-Type: application/json' -d '{"startTime":'$start_date', "endTime":'$stop_date', "buildType":"BUILD"}' http://hp3:7070/kylin/api/cubes/$cube_name/build

测试:

sh kylin_cube_build_new.sh order_cube
sh kylin_cube_build_new.sh order_cube 2022-01-04

image.png

image.png

参考:

  1. https://kylin.apache.org/cn/docs31/howto/howto_use_restapi.html#build-cube
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值