這是學習筆記的第 2051 篇文章
clickhouse這些年還是比較火的一門技術,是yandex在2023年6月15日開源的資料分析的資料庫。在github上有7000多的星。
它是基於列式儲存,在統計分析方面具有很大的優勢。
根據資料,以100m資料集的跑分結果:clickhouse比vertia快約5倍,比hive快279倍,比mysql 快801倍。
在集群環境中,clickhouse能夠發揮出強大的查詢能力。當然我們要在簡單的環境中也可以做一些功能的測試,看看clickhouse是不是想空中樓閣一樣離我們很遙遠。
wget --content-disposition
wget --content-disposition
wget --content-disposition
wget --content-disposition
wget --content-disposition
wget --content-disposition
當然需要提前解決依賴包的問題,在centos裡面需要準備如下的安裝包。
libicu.x86_64 0:50.1.2-17.el7 libtool-ltdl.x86_64 0:2.4.2-22.el7_3 unixodbc.x86_64 0:2.3.1-11.el7
使用如下的方式來進行安裝。
yum -y localinstall clickhouse-*.rpm
[root@vm_16_17_centos clickhouse]# rpm -qa|grep clickhouse
clickhouse-test-18.6.0-1.el7.x86_64
clickhouse-common-static-18.6.0-1.el7.x86_64
clickhouse-server-18.6.0-1.el7.x86_64
clickhouse-client-18.6.0-1.el7.x86_64
clickhouse-server-common-18.6.0-1.el7.x86_64
clickhouse-debuginfo-18.6.0-1.el7.x
啟動clickhouse也很簡單,操作方式還是比較簡單的。
/etc/init.d/clickhouse-server start
[root@vm_16_17_centos init.d]# /etc/init.d/clickhouse-server start
start clickhouse-server service: path to data directory in /etc/clickhouse-server/config.xml: /var/lib/clickhouse/
done
連線到clickhouse,可以使用clickhouse-client
# clickhouse-client
clickhouse client version 18.6.0.
connecting to localhost:9000 as user default.
connected to clickhouse server version 18.6.0 revision 54401.
vm_16_17_centos :)
操作方式和mysql是很類似的,輸出的格式會更清晰一些,也支援\g這種顯示方式。
vm_16_17_centos :) show databases;
show databases
┌─name────┐
│ default │
│ system │
2 rows in set. elapsed: 0.005 sec.
我們找幾個簡單命令來感受一下,比如生成文字的bar圖。
語句如下:select type,bar(count(*),0,200,20) from columns group by type;
輸出結果如下:
select
type,
bar(count(*), 0, 200, 20)
from columns
group by type
┌─type──────────┬─bar(count(), 0, 200, 20)─┐
│ datetime │ █▌ │
│ date │ ▍ │
│ float64 │ ▌ │
│ string │ ██████████▊ │
│ uint8 │ ██▌ │
│ array(int64) │ │
│ int64 │ ▋ │
│ uint32 │ █▋ │
│ int32 │ │
│ uint16 │ ▍ │
│ array(string) │ ▌ │
│ uint64 │ █████▊ │
12 rows in set. elapsed: 0.002 sec.
而常用的標準化sql查詢和統計都不在話下。
後續來對這個方案進行細緻的評估。
ClickHouse命令語句
進入click 不加上 m的話,進入之後只能一次寫一行,不能建表 clickhouse client m show databases 檢視資料庫 create database db doit 建立乙個資料庫 drop database db doit 刪除資料庫 show tables 檢視表檢...
cli工具,前戲
一 準備到一些模組 1.chalk 命令列 顏色 2.fs extra nodejs fs模組到替代,實現檔案拷貝刪除移動等功能 3.inquirer互動式命令列工具 4.mem fs mem fs editor 提供模版檔案等操作 讀取json等 5.path nodejs檔案路徑操作 二 bin...
CLI結果輸出
例子 ftp 11.245.253.20 cips dev bak opt ibm db2 v9.7 samples 要不要修改整體結構,先看看細節 cli結果輸出 1.逐條的獲取 確定產生的結果資料集的結構 2.滾動游標 static,read only cursor,keyset driven ...