龙空技术网

ClickHouse查看数据库容量、表的指标、表分区、数据大小等

技术直男 94

前言:

此刻朋友们对“查看当前用户表空间大小”大体比较着重,咱们都需要分析一些“查看当前用户表空间大小”的相关知识。那么小编同时在网上网罗了一些对于“查看当前用户表空间大小””的相关知识,希望小伙伴们能喜欢,我们一起来了解一下吧!

一、查看数据库容量

select

sum(rows) as row,--总行数

formatReadableSize(sum(data_uncompressed_bytes)) as ysq,--原始大小

formatReadableSize(sum(data_compressed_bytes)) as ysh,--压缩大小

round(sum(data_compressed_bytes) / sum(data_uncompressed_bytes) * 100, 0) ys_rate--压缩率

from system.parts

二、查看表的各个指标

select database,

table,

sum(bytes) as size,

sum(rows) as rows,

min(min_date) as min_date,

max(max_date) as max_date,

sum(bytes_on_disk) as bytes_on_disk,

sum(data_uncompressed_bytes) as data_uncompressed_bytes,

sum(data_compressed_bytes) as data_compressed_bytes,

(data_compressed_bytes / data_uncompressed_bytes) * 100 as compress_rate,

max_date - min_date as days,

size / (max_date - min_date) as avgDaySize

from system.parts

where active

and database = 'default'

and table = 'user'

group by database, table

这种结果显示的大小size是字节,我们如何转换为常见的MB和GB呢?

select

database,

table,

formatReadableSize(size) as size,

formatReadableSize(bytes_on_disk) as bytes_on_disk,

formatReadableSize(data_uncompressed_bytes) as data_uncompressed_bytes,

formatReadableSize(data_compressed_bytes) as data_compressed_bytes,

compress_rate,

rows,

days,

formatReadableSize(avgDaySize) as avgDaySize

from

(

select

database,

table,

sum(bytes) as size,

sum(rows) as rows,

min(min_date) as min_date,

max(max_date) as max_date,

sum(bytes_on_disk) as bytes_on_disk,

sum(data_uncompressed_bytes) as data_uncompressed_bytes,

sum(data_compressed_bytes) as data_compressed_bytes,

(data_compressed_bytes / data_uncompressed_bytes) * 100 as compress_rate,

max_date - min_date as days,

size / (max_date - min_date) as avgDaySize

from system.parts

where active

and database = 'default'

and table = 'user'

group by

database,

table

)

这就转换为常见的单位了

三、查看表分区

select partition

from system.parts

where active

and database = 'default'

and table = 'user'

四、跟踪分区

SELECT database,

table,

count() AS parts,

uniq(partition) AS partitions,

sum(marks) AS marks,

sum(rows) AS rows,

formatReadableSize(sum(data_compressed_bytes)) AS compressed,

formatReadableSize(sum(data_uncompressed_bytes)) AS uncompressed,

round((sum(data_compressed_bytes) / sum(data_uncompressed_bytes)) * 100.,2) AS percentage

FROM system.parts

WHERE active

and database = 'default'

and table = 'user'

GROUP BY database, table

五、检查数据大小

SELECT table,

formatReadableSize(sum(data_compressed_bytes)) AS tc,

formatReadableSize(sum(data_uncompressed_bytes)) AS tu,

round((sum(data_compressed_bytes) / sum(data_uncompressed_bytes)) * 100,2) AS ratio

FROM system.columns

WHERE database = 'default'

and table = 'user'

GROUP BY table

ORDER BY sum(data_compressed_bytes) ASC

六、查看表中列的数据大小

SELECT column,

any(type),

sum(column_data_compressed_bytes) AS compressed,

sum(column_data_uncompressed_bytes) AS uncompressed,

sum(rows)

FROM system.parts_columns

WHERE database = 'default'

and table = 'user'

AND active

GROUP BY column

ORDER BY column ASC

标签: #查看当前用户表空间大小 #查询用户表空间大小