如何使用JDBC连接操作Kylin?

举报
大数据梦想家 发表于 2021/09/28 00:49:20 2021/09/28
【摘要】         在之前的博客中已经谈到,Kylin提供了各种Rest API、JDBC/ODBC接口。如果我们要将数据以可视...

        在之前的博客中已经谈到,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>

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 编写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();
    }

}

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34

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

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


总结

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

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

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

在这里插入图片描述

文章来源: alice.blog.csdn.net,作者:大数据梦想家,版权归原作者所有,如需转载,请联系作者。

原文链接:alice.blog.csdn.net/article/details/106169553

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。