clickhouse語句 ClickHouse初識

2021-10-14 01:12:30 字數 3009 閱讀 5644

這是學習筆記的第 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 ...