clickhouse建库_ClickHouse高性能数据库
前面的文章ClickHouse之初步認識已經簡單的介紹了ClickHouse,接下來進行簡單的性能測試。測試數據來源于美國民用航班的數據,從1987年到2017年,有1.7億條。
環境:
centos 6.3,32G內存,24核
下載腳本:
#!/bin/bash
for s in `seq 1987 2017`
do
for m in `seq 1 12`
do
mwget -n 128 http://transtats.bts.gov/PREZIP/On_Time_On_Time_Performance_${s}_${m}.zip
done
done
這里采用的是mwget,128個線程,mwget是wget的多線程版本。wget太慢了。關于mwget的安裝,請參考:https://my.oschina.net/766/blog/156807
下載以后的數據是zip壓縮包,如下:
下載完數據以后建表:
客戶端登錄:?clickhouse-client -m,如果不加-m啟用多行,那么將會報錯:
?View Code
導入數據:
for i in *.zip; do echo $i; unzip -cq $i '*.csv' | sed 's/\.00//g' | clickhouse-client --query="INSERT INTO ontime FORMAT CSVWithNames"; done
開始查詢測試:
可以看見1.7億數據,count用了0.034秒,當然列存儲數據庫count都不快還搞毛。
繼續測試其他的語句
從2000年到2016年每天的航班統計
SELECT DayOfWeek, count(*) AS c FROM ontime WHERE Year >= 2000 AND Year <= 2016 GROUP BY DayOfWeek ORDER BY c DESC;
2000 - 2008年度機場延誤數
SELECT Origin, count(*) AS c FROM ontime WHERE DepDelay>10 AND Year >= 2000 AND Year <= 2008 GROUP BY Origin ORDER BY c DESC LIMIT 10
這些查詢都有一個范圍限制,那么全部查完呢?
比如:
SELECT OriginCityName, DestCityName, count() AS c FROM ontime GROUP BY OriginCityName, DestCityName ORDER BY c DESC LIMIT 10;
可以看見依然快的不像話,哈哈。心動了沒?心動了就動手安裝,導入數據測試一下吧。
轉載自:http://www.cnblogs.com/gomysql/p/6655553.html
小編附加使用手冊:https://clickhouse.yandex/reference_en.html#MergeTree
這個數據庫適合 查詢和存儲兩種方式的數據,不適合修改類型的數據,可以應用于數據的采集,和信息的記錄;
總結
以上是生活随笔為你收集整理的clickhouse建库_ClickHouse高性能数据库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工业相机与民用相机的区别_工业相机和普通
- 下一篇: promtail 配置详解_基于loki