java实现连接clickHouse数据demo代码实例

clickHouse是最新的一种列式数据库,存取速度极快,

最近公司要用到该数据库,就决定认真研究一下,由于属于全新的东西,国内暂时找不到相关的开发demo,于是决定自己下手整理一下clickHouse的安装及本地测试:

那么ClickHouse到底是啥?

1. 开源的列存储数据库管理系统

2. 支持线性扩展

3. 简单方便

4. 高可靠性

5. 容错(支持多主机异步复制,可以跨多个数据中心部署。 单个节点或整个数据中心的停机时间不会影响系统的读写可用性)

ClickHouse关键功能和应用场景:

 

clickHouse的数据库用户名和密码采用配置文件的方式配置,并非像传统的数据库那样可以通过数据库设置,因此,首先要为数据库指定一个特定的用户,及访问权限。clickHouse默认使用default用户,对其下面的数据库拥有访问和增删改查的权限,这显然不符合开发要求,对用户极大的不负责任。下面是指定特定用户访问权限代码:

在ubuntu系统里找到user.xml文件:

1. 远程连接unbuntu的clickhouse数据库

1.1 在/etc目录下创建metrika.xml

 

添加如下内容:

<yandex>

<networks>

<ip>::/0</ip>

</networks>

</yandex>

 

*******************************************************************************

**

1.2修改users.xml文件

  •  
  •      <users>标签的用户标签内找到此段代码:

<networks incl="networks" replace="replace">

  •                
  •  

 

 

1.3修改config.xml文件

 

2.clickhouse配置文件详解:

2.1 users.xml标签详解

★完整demo,指定用户名,密码的完整账号信息:

完整配置文件的demo如下:

 

下面贴上clickHouse连接数据库代码:

public class Connect {

 

@Test

public void connect() {

 

ClickHouseConnection conn=null;

ClickHouseProperties properties=new ClickHouseProperties();

properties.setUser("hmt");

    properties.setPassword("Wbvc6G7f");

    properties.setDatabase("huang");

        try {

       

        ClickHouseDataSource dataSource = new ClickHouseDataSource("jdbc:clickhouse://192.168.25.130:8123",properties); //default表示数据表 ,port原来为8123

ClickHouseConnectionImpl connection = (ClickHouseConnectionImpl) dataSource.getConnection();

if(connection!=null) {

System.out.println("连接成功");

}

 

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

3.客户端连接工具

现在官方暂时没有可以连接clickhouse的客户端工具,不过有第三方的客户端工具,dbveawer,功能非常强大,可以连接多种数据库,业界良心。

下载地址:http://sharehoo.cn/shop/source/139

因代码内容过多,这里不做过多描述.......详细源码驱动包请去点击打开链接,或者点击打开链接,http://sharehoo.cn/shop/source/140 此处

文章原创来自此处http://sharehoo.cn/topic/detail/365

 

            

         

  • 2
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值