Kylin 操作方式(web UI ,JDBC,shell脚本,Zeppelin)

Web UI

查看属性

 

 查询

注意:查询语句中事实表必须位于join的左边

 

 

 Zeppelin

打开web端界面hadoop:8080,点击右上角的interpreter

 

 然后再创建note

 

 之后就可以输入查询语句进行查询操作

 JDBC

依赖

<dependencies>
        <dependency>
            <groupId>org.apache.kylin</groupId>
            <artifactId>kylin-jdbc</artifactId>
            <version>2.5.1</version>
        </dependency>
    </dependencies>

代码示例

public class KylinMainTest {

    public static void main(String[] args) throws SQLException, ClassNotFoundException {

        //注册驱动
        Class.forName("org.apache.kylin.jdbc.Driver");

        //编写sql
        String sql="select PROVINCE_NAME,sum(FINAL_TOTAL_AMOUNT) sum_TOTAL_AMOUNT\n" +
                "from  DWD_FACT_ORDER_INFO  join    DWD_DIM_BASE_PROVINCE\n" +
                "on DWD_FACT_ORDER_INFO.PROVINCE_ID =DWD_DIM_BASE_PROVINCE.ID \n" +
                "group by DWD_DIM_BASE_PROVINCE.PROVINCE_NAME";

        //创建连接
        Connection connection = DriverManager.getConnection("jdbc:kylin://hadoop103:7070/gmall", "ADMIN", "KYLIN");

        //预编译sql
        PreparedStatement ps = connection.prepareStatement(sql);

        //执行sql
        ResultSet rs = ps.executeQuery();

        System.out.println("PROVINCE_NAME,sum_TOTAL_AMOUNT");

        //遍历结果
        while (rs.next()){

            System.out.println(rs.getString("PROVINCE_NAME")+","+rs.getDouble("sum_TOTAL_AMOUNT"));

        }

    }

效果如图

 Shell 脚本

#!/bin/bash
#操作的cube名称
cube_name=order_cube
do_date=`date -d '-1 day' +%F`

#获取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://hadoop102:7070/kylin/api/cubes/$cube_name/build

猜你喜欢

转载自www.cnblogs.com/yangxusun9/p/12709811.html
今日推荐