zoukankan      html  css  js  c++  java
  • 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
    " +
                    "from  DWD_FACT_ORDER_INFO  join    DWD_DIM_BASE_PROVINCE
    " +
                    "on DWD_FACT_ORDER_INFO.PROVINCE_ID =DWD_DIM_BASE_PROVINCE.ID 
    " +
                    "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
  • 相关阅读:
    WM11破解版
    安装系统
    linux配置问题
    PAT:1022. Digital Library (30) (部分正确,错最后两个)
    PAT:1023. Have Fun with Numbers (20) AC
    PAT:1081. Rational Sum (20) AC(类似math.h中的sqrt(1.0*n),algorithm的abs()用于取绝对值)
    PAT:1013. Battle Over Cities (25) AC
    conv2的计算过程
    UFLDL Tutorial
    视频深度学习 Deep Learning
  • 原文地址:https://www.cnblogs.com/yangxusun9/p/12709811.html
Copyright © 2011-2022 走看看