如何使用JDBC连接操作Kylin?

        在之前的博客中已经谈到,Kylin提供了各种Rest API、JDBC/ODBC接口。如果我们要将数据以可视化的方式展现出来,需要使用Kylin的JDBC方式连接执行SQL,获取kylin的执行结果。本篇博客,为大家带来的就是如何使用JDBC操作连接Kylin的步骤流程!

在这里插入图片描述

文章目录


需求

        按照日期统计订单总额/总数量

开发步骤

  • 导入maven驱动依赖
<dependencies>
   <!-- Kylin -->
   <dependency>
       <groupId>org.apache.kylin</groupId>
       <artifactId>kylin-jdbc</artifactId>
       <version>2.6.3</version>
   </dependency>
   <dependency>
       <groupId>com.google.guava</groupId>
       <artifactId>guava</artifactId>
       <version>27.1-jre</version>
   </dependency>
</dependencies>
  • 编写Java代码

        ■ 加载驱动

        ■ 创建Connection连接对象

        ■ 构建SQL语句

        ■ 创建Statement对象,并执行executeQuery

        ■ 打印结果

        
参考代码:

public class Test01 {

    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        // 1. 加载驱动
        Class.forName("org.apache.kylin.jdbc.Driver");
        // 2. 创建Connection连接对象
        // 连接字符串:jdbc:kylin://ip地址:7070/项目名称(project)
        Connection connection = DriverManager.getConnection("jdbc:kylin://node01:7070/0514Work", "ADMIN", "KYLIN");

        // 3. 创建Statement对象,并执行executeQuery,获取ResultSet
        Statement statement = connection.createStatement();

       // 构建SQL和语句
        String sql = "select date1, sum(price) as total_money, sum(amount) as total_amount from dw_sales group by date1,channelid";
        ResultSet resultSet = statement.executeQuery(sql);

        // 4. 打印ResultSet
        while (resultSet.next()) {
            // 4.1 获取时间
            String date1 = resultSet.getString("date1");
            // 4.2 获取总金额
            String total_money = resultSet.getString("total_money");
            // 4.3 获取总次数
            String total_amount = resultSet.getString("total_amount");


            // 输出结果
            System.out.println(date1 + " " + total_money + " " + total_amount);
            
          }
        connection.close();
    }

}

在运行之前,我们现去Kylin的Web页面上,先进行在线查询,查看结果

在这里插入图片描述
确认结果之后,我们返回到IDEA,运行任务,观察控制台打印的结果
在这里插入图片描述
可以发现与在页面上进行查询返回的结果是一样的,说明我们使用JDBC连接操作Kylin就成功了。


总结

        本篇博客为大家演示了如何使用Java通过连接JDBC访问操作Kylin的一个简单demo。后续会为大家介绍关于Kylin的Cube优化,与我们之前所做的离线数仓项目做一个有效结合…敬请期待!!!

        如果以上过程中出现了任何的纰漏错误,烦请大佬们指正😅

        受益的朋友或对大数据技术感兴趣的伙伴记得点赞关注支持一波🙏

在这里插入图片描述

  • 52
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 59
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 59
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据梦想家

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值