clickhouse-sql 記錄常用操作
- sql 相關(guān) 主要記錄 mysql 導(dǎo)入 clickhouse 過程
其他數(shù)據(jù)庫應(yīng)該也適用 - 用途
主要使用 clickhouse 聚合計算 特別快
上千萬數(shù)據(jù) 幾秒就能進行聚合
常用驗證命令
1.查看clichouse版本
SELECT version
2.創(chuàng)建倉庫
create database IF NOT EXISTS 倉庫名
3.刪除表
drop table 倉庫名.表名
4.刪除表數(shù)據(jù)(判斷條件必填)
ALTER TABLE 倉庫名.表名 DELETE WHERE 1=1
5.查看表條數(shù)(驗證導(dǎo)入是否成功)
select count(1) from 倉庫名.表名
6. 查看表情況
SELECT
table AS `表名`,
sum(rows) AS `總行數(shù)`,
formatReadableSize(sum(data_uncompressed_bytes)) AS `原始大小`,
formatReadableSize(sum(data_compressed_bytes)) AS `壓縮大小`,
round((sum(data_compressed_bytes) / sum(data_uncompressed_bytes)) * 100, 0) AS `壓縮率`
FROM system.parts
WHERE table IN ('表1','表2',.....)
GROUP BY table
mysql 表導(dǎo)入 clikhouse(主要用 clickhouse MySQL 引擎 也可以用別的采集工具)
主要使用 mysql 引擎(注意大小寫)
采用^20.xx.xxx 版本 低版本可能不適合(沒試過其他版本)
- 1.映射倉庫 (不推薦/沒試過)
create database IF NOT EXISTS 倉庫名 engine=MySQL('localhost:3306', 'db', 'root', 'password')
- 2.映射表 (個人感覺適用于數(shù)據(jù)量少的數(shù)據(jù) 10 萬左右/不推薦)
CREATE TABLE 倉庫名.表名('字段','字段',....) mysql('localhost:3306','db','表名','root','password')
-3.數(shù)據(jù)導(dǎo)入
思路 1.創(chuàng)建表 -2.清空數(shù)據(jù)-3.寫入數(shù)據(jù)-4.采集結(jié)果-5.獲取結(jié)果-6.清空數(shù)據(jù)-7.寫人數(shù)據(jù)-.........
!!!! * 替換為相關(guān)字段 獲取更快
定時執(zhí)行 sql 語句
1.創(chuàng)建表(第一次執(zhí)行)
CREATE TABLE 倉庫名.表名 ENGINE = MergeTree ORDER BY 主鍵名(好像不能用mysq主鍵) AS SELECT * FROM mysql('localhost:3306','db','表名','root','password')
2.清空表(定時)
ALTER TABLE 倉庫名.表名 DELETE WHERE 1=1
3.寫入數(shù)據(jù)(定時)
INSERT INTO TABLE 倉庫名.表名 SELECT * FROM mysql('localhost:3306','db','表名','root','password')
3.1.查看采入數(shù)據(jù)
select count(1) from 倉庫名.表名
5.使用sql語句程序內(nèi)執(zhí)行