1、创建 clickhouse 目录
mkdir clickhouse
2、进入到clickhouse
cd clickhouse
curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh | sudo bash
看到 The repository is setup! You can now install packages. 成功了
4、查看目录下 是否有相关文件
sudo yum list 'clickhouse*'
clickhouse-client.x86_64 20.5.4.40-1.el7 Altinity_clickhouse
clickhouse-common-static.x86_64 20.5.4.40-1.el7 Altinity_clickhouse
clickhouse-compressor.x86_64 1.1.54336-3.el7 Altinity_clickhouse
clickhouse-debuginfo.x86_64 20.1.11.73-1.el7 Altinity_clickhouse
clickhouse-odbc.x86_64 1.1.8-1.el7 Altinity_clickhouse
clickhouse-server.x86_64 20.5.4.40-1.el7 Altinity_clickhouse
clickhouse-server-common.x86_64 20.5.4.40-1.el7 Altinity_clickhouse
clickhouse-test.x86_64 20.5.4.40-1.el7 Altinity_clickhouse
5、安装 sudo yum install -y clickhouse-server clickhouse-client 服务端与客户端
sudo yum install -y clickhouse-server clickhouse-client
6、启动服务
service clickhouse-server start
7、启动客端
clickhouse-client –m
出现 :)符号
8、查看 数据库列表
SHOW DATABASES
┌─name───────────────────────────┐
│ _temporary_and_external_tables │
│ default │
│ system │
└────────────────────────────────┘
--------------------------华丽的分隔线---------------------------------------------------------以上代表 ck安装成功
---------开始坑人的mysql 导入了。我是新手 起码踩了3个坑。下在一一说来。
1、从mysql 导入 最简单的方法 是直接使用mysql函数 但坑人的是低版本 不支持mysql函数 我上面下载的版本是支持的。
2、先安装mysql 客户端
3、尝试用mysql客户端 连接
mysql -h -u -p 连接
我刚才始总是连接不上,一直找不到原因。因为我的mysql服务器 是用的阿里云。 后来加入IP白名单 连接成功
4、使用mysql函数导入
进入ck客户端 clickhouse -client;
创建数据库 create databases test
ck数据类型 与mysql 大不一样。选创表 太麻烦了。我只是想简单 测试一下,性能到底比mysql 提高多少
我选择了自动建表的形式
create table test.testtable engine =MergeTree() order by tid as select * from mysql('xx.xxx.xxx.xxx','dbname','tablename','username','pwd');
导入成功!
但自动创建的表,数据类型不对。我mysql的类型 decimal 变成了string类型
测试性能
一个order by sum(total) desc 单表语句 在mysql 中500w数据 需要 15S 用ck的话。只需要0.168s
我再继续追加数据到2千万 也只需要 0.558s
10 rows in set. Elapsed: 0.558 sec. Processed 22.83 million rows, 577.25 MB (40.90 million rows/s., 1.03 GB/s.)