如何用clickhouse连接金仓数据库
1. ClickHouse简介
ClickHouse是俄罗斯的Yandex于2016年开源的一个用于联机分析(OLAP:Online Analytical Processing)的列式数据库管理系统(DBMS:Database Management System) , 主要用于在线分析处理查询(OLAP),能够使用SQL查询实时生成分析数据报告。 ClickHouse的全称是Click Stream,Data WareHouse,简称ClickHouse。
ClickHouse是一个完全的列式分布式数据库管理系统(DBMS),允许在运行时创建表和数据库,加载数据和运行查询,而无需重新配置和重新启动服务器,支持线性扩展,简单方便,高可靠性,容错。它在大数据领域没有走 Hadoop 生态,而是采用 Local attached storage 作为存储,这样整个 IO 可能就没有 Hadoop 那一套的局限。它的系统在生产环境中可以应用到比较大的规模,因为它的线性扩展能力和可靠性保障能够原生支持 shard + replication 这种解决方案。它还提供了一些 SQL 直接接口,有比较丰富的原生 client。
1.1 ClickHouse优点
- 灵活的MPP架构,支持线性扩展,简单方便,高可靠性
- 多服务器分布式处理数据 ,完备的DBMS系统
- 底层数据列式存储,支持压缩,优化数据存储,优化索引数据 优化底层存储
- 容错跑分快:比Vertica快5倍,比Hive快279倍,比MySQL快800倍,其可处理的数据级别已达到10亿级别
- 功能多:支持数据统计分析各种场景,支持类SQL查询,异地复制部署
- 海量数据存储,分布式运算,快速闪电的性能,几乎实时的数据分析 ,友好的SQL语法,出色的函数支持。
- 不支持事务,不支持真正的删除/更新;
- 不支持高并发,官方建议qps为100,可以通过修改配置文件增加连接数,但是在服务器足够好的情况下;
- SQL满足日常使用80%以上的语法,join写法比较特殊;最新版已支持类似SQL的join,但性能不好;
- 尽量做1000条以上批量的写入,避免逐行insert或小批量的insert,update,delete操作,因为ClickHouse底层会不断的做异步的数据合并,会影响查询性能,这个在做实时数据写入的时候要尽量避开;
- Clickhouse快是因为采用了并行处理机制,即使一个查询,也会用服务器一半的CPU去执行,所以ClickHouse不能支持高并发的使用场景,默认单查询使用CPU核数为服务器核数的一半,安装时会自动识别服务器核数,可以通过配置文件修改该参数。
1.2 ClickHouse缺点
2. ClickHouse下载安装
阿里云下载地址:https://mirrors.aliyun.com/clickhouse/tgz/stable
下载以下4个文件:
clickhouse-client-22.2.2.1.tgz
clickhouse-common-static-22.2.2.1.tgz
clickhouse-common-static-dbg-22.2.2.1.tgz
clickhouse-server-22.2.2.1.tgz
将下载后的四个安装文件上传到服务器,这里是上传到linux的/opt/software/下。
依次将这四个安装包解压,并且每解压一个,执行一下解压文件夹下的install下的doinst.sh脚本。

1、clickhouse-server-22.8.5.29-arm64.tgz
(1)tar -xvf clickhouse-server-22.8.5.29-arm64.tgz
(2)./clickhouse-common-static-22.8.5.29/install/doinst.sh


2、clickhouse-common-static-dbg-22.2.2.1.tgz
(1) tar -xvf clickhouse-common-static-dbg-22.8.5.29-arm64.tgz
(2) ./clickhouse-common-static-dbg-22.8.5.29/install/doinst.sh

3、clickhouse-server-22.2.2.1.tgz
注意:在运行doinst.sh时,clickhouse会默认创建一个default的用户,让你设置密码,不设置密码可以按回车。
(1) tar -xvf clickhouse-server-22.8.5.29-arm64.tgz
(2) ./clickhouse-server-22.8.5.29/install/doinst.sh


4、clickhouse-client-22.8.5.29-arm64.tgz
(1) tar -xvf clickhouse-client-22.8.5.29-arm64.tgz
(2) ./clickhouse-client-22.8.5.29/install/doinst.sh
3. 启动clickhouse服务
启动命令:
clickhouse start

关闭命令:
clickhouse stop
4. 使用clickhouse
1、连接clickhouse:
clickhouse-client -u default --password 111111 --之前部署的时候设置了密码为111111

2、clickhouse 默认不允许远程访问,需要修改配置文件:
cd /etc/clickhouse-server/
vi config.xml
找到<listen_host>::</listen_host>在下面添加一行也可把上面的注释取消,保存退出,如图所示:

重启clickhouse服务:clickhouse restart
5. 使用clickhouse连接金仓数据库
1、登录clickhouse
clickhouse-client -u default --password 111111

2、创建数据库
CREATE DATABASE postgresql_db ENGINE = PostgreSQL('host:端口', 'database', '用户名', '密码');
其中:
host:port — 金仓数据库服务地址
database — 金仓数据库名
user — 金仓数据库用户名
password — 用户密码

在clickhouse中查询金仓数据库中的数据

浙公网安备 33010602011771号