Spring Boot集成ClickHouse

ClickHouse 是俄羅斯 Yandex 公司旗下的實時列式存儲系統。在海量數據面前,它可以比傳統關係型資料庫更高效地進行數據的存儲和查詢,並且體積小巧而易於安裝和維護。在企業中,ClickHouse 被廣泛應用於日誌分析、BI 數據分析等領域。Spring Boot 相信大家都不陌生,它是 Spring Framework 的拓展,使得 Spring 應用程序開發更加簡單快捷。此文主要介紹了如何將 ClickHouse 與 Spring Boot 集成。

一、安裝 ClickHouse

我們可以從 ClickHouse 的官網下載最新版本的 ClickHouse,或者使用系統包管理器進行安裝(只要操作系統支持)。在最新的 Ubuntu 20.04 LTS 操作系統中,輸入以下命令即可安裝:

sudo apt-get update
sudo apt-get install -y clickhouse-client clickhouse-server clickhouse-common-static

安裝好後,我們可以使用以下命令啟動 ClickHouse 服務:

sudo /etc/init.d/clickhouse-server start

如果我們要停止 ClickHouse 服務,則可以使用以下命令:

sudo /etc/init.d/clickhouse-server stop

如果我們要檢查 ClickHouse 服務的狀態,則可以使用以下命令:

sudo /etc/init.d/clickhouse-server status

二、Spring Boot的ClickHouse依賴配置

在 Spring Boot 項目的 pom.xml 文件中,我們需要添加 ClickHouse 的依賴配置。


    
        ru.yandex.clickhouse
        clickhouse-jdbc
        0.3.1
    

然後,我們需要在 application.yml 文件中進行 ClickHouse 連接的配置。

spring:
  datasource:
    driver-class-name: ru.yandex.clickhouse.ClickHouseDriver
    url: jdbc:clickhouse://localhost:8123/default?user=default_user&password=qwerty

其中,url 部分需要根據實際情況進行更改。資料庫連接時需要指定 ClickHouse 驅動程序的名稱和 URL,其中包括主機名和埠。

三、Spring Boot中使用ClickHouse

在 Spring Boot 中使用 ClickHouse 也非常的簡單。我們只需要使用 JdbcTemplate 即可實現對 ClickHouse 的增刪改查操作。在使用 JdbcTemplate 前,我們需要在 Spring Boot 應用程序中配置 ClickHouse 資料庫的 DataSource。

@Autowired
private DataSource dataSource;
 
// 查詢表中所有記錄
public List findAll() {
    JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
    return jdbcTemplate.query("select * from student",
        (rs, rowNum) -> new Student(rs.getLong("id"),
        rs.getString("name"), rs.getInt("score")));
}
 
// 新增一條記錄
public int add(Student student) {
    JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
    String sql = "insert into student (id, name, score) values (?, ?, ?)";
    Object[] args = { student.getId(), student.getName(), student.getScore() };
    return jdbcTemplate.update(sql, args);
}
 
// 統計記錄數
public int count() {
    JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
    return jdbcTemplate.queryForObject("select count(*) from student", Integer.class);
}

四、總結

本文主要介紹了如何將 ClickHouse 和 Spring Boot 集成。我們可以先安裝 ClickHouse,然後在 Spring Boot 項目的 pom.xml 和 application.yml 文件中添加 ClickHouse 的依賴配置和連接配置。最後,我們可以使用 JdbcTemplate 進行對 ClickHouse 的增刪改查操作。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/196142.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-03 09:53
下一篇 2024-12-03 09:53

相關推薦

發表回復

登錄後才能評論