如何使用JDBC連接操作Kylin?

寫在前面: 博主是一名軟件工程系大數據應用開發專業大二的學生,暱稱來源於《愛麗絲夢遊仙境》中的Alice和自己的暱稱。作爲一名互聯網小白,寫博客一方面是爲了記錄自己的學習歷程,一方面是希望能夠幫助到很多和自己一樣處於起步階段的萌新。由於水平有限,博客中難免會有一些錯誤,有紕漏之處懇請各位大佬不吝賜教!個人小站:http://alices.ibilibili.xyz/ , 博客主頁:https://alice.blog.csdn.net/
儘管當前水平可能不及各位大佬,但我還是希望自己能夠做得更好,因爲一天的生活就是一生的縮影。我希望在最美的年華,做最好的自己

        在之前的博客中已經談到,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優化,與我們之前所做的離線數倉項目做一個有效結合…敬請期待!!!

        如果以上過程中出現了任何的紕漏錯誤,煩請大佬們指正😅

        受益的朋友或對大數據技術感興趣的夥伴記得點贊關注支持一波🙏

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章