mysql數據庫有information_schema.tables
系統表記錄表相關元數據,clickhouse對應的有system.parts
表。下面是查看clickhouse數據庫和表大小、行數及壓縮率等方法。
-- 查看數據庫容量,以測試數據爲參考
select
sum(rows) as "總行數",
formatReadableSize(sum(data_uncompressed_bytes)) as "原始大小",
formatReadableSize(sum(data_compressed_bytes)) as "壓縮大小",
round(sum(data_compressed_bytes) / sum(data_uncompressed_bytes) * 100, 0) "壓縮率"
from system.parts;
┌──────總行數─┬─原始大小──┬─壓縮大小─┬─壓縮率─┐
│ 169851144587 │ 30.76 TiB │ 4.51 TiB │ 15 │
└─────────────┴───────────┴──────────┴────────┘
1 rows in set. Elapsed: 1.462 sec. Processed 90.35 thousand rows, 42.81 MB (63.76 thousand rows/s., 30.60 MB/s.)
-- 查詢test表,2019年10月份的數據容量
select
table as "表名",
sum(rows) as "總行數",
formatReadableSize(sum(data_uncompressed_bytes)) as "原始大小",
formatReadableSize(sum(data_compressed_bytes)) as "壓縮大小",
round(sum(data_compressed_bytes) / sum(data_uncompressed_bytes) * 100, 0) "壓縮率"
from system.parts
-- 根據實際情況加查詢條件
where table in('test')
and partition like '2019-10-%'
group by table;
┌─────總行數─┬─原始大小───┬─壓縮大小──┬─壓縮率─┐
│ 3015199559 │ 727.83 GiB │ 60.34 GiB │ 8 │
└────────────┴────────────┴───────────┴────────┘
1 rows in set. Elapsed: 0.227 sec. Processed 3.52 thousand rows, 1.70 MB (15.48 thousand rows/s., 7.50 MB/s.)
下一節 我們來看下如何查看後臺進程並殺死。