ClickHouse 是 Yandex(俄罗斯最大的搜索引擎)开源的一个用于实时数据分析的基于列存储的数据库,其处理数据的速度比传统方法快很多。
Cloudopt Next 为 ClickHouse 提供了插件,您只需要在配置文件中配置后并启动插件既可。
在使用前请先自行引用相应的依赖,请自行添加版本号。
RocketMQ 是 3.0.0.0-BETA6 引入的,请确保版本高于等于 3.0.0.0-BETA6。
<dependency>
<groupId>net.cloudopt.next</groupId>
<artifactId>cloudopt-next-clickhouse</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>ru.yandex.clickhouse</groupId>
<artifactId>clickhouse-jdbc</artifactId>
<version>${version}</version>
</dependency>
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>${version}</version>
</dependency>
Next 的 ClickHouse 使用的是 JDBC 连接,并且使用 HikariCP 作为线程池管理,在配置文件中仅需要配置 JDBC 连接字符串即可。
{
"clickhouse": {
"jdbcUrl": "jdbc:clickhouse://localhost:8123/default"
}
}
然后你需要将插件加载到启动的地方。
fun main(args: Array<String>) {
NextServer.addPlugin(ClickHousePlugin())
NextServer.run()
}
使用的时候与正常的 JDBC 操作方法基本相同。取出连接池的连接后就可以开始操作了。
val statement = ClickHouseManager.hikariDataSource.connection.createStatement()
val result = statement.executeQuery("show databases")
assert(result != null)