跳到主要内容

system.caches

Databend 中各类缓存的概览,包含使用量和命中率统计信息。

列说明

列名说明
node节点名称
name缓存名称(与 system$set_cache_capacity 第一个参数相同)
num_items已缓存的条目数量
size已缓存条目的大小(根据 unit 为个数或字节数)
capacity容量上限(根据 unit 为个数或字节数)
unitsizecapacity 的单位:count(个数)或 bytes(字节)
access缓存访问总次数
hit命中次数
miss未命中次数

缓存列表

缓存名称缓存对象单位备注
memory_cache_table_snapshotTable snapshotcount默认开启,默认容量通常够用
memory_cache_table_statistics表统计信息count
memory_cache_compact_segment_info压缩形式的 Table Segment 元数据bytes
memory_cache_segment_statisticsSegment 级别统计信息bytes
memory_cache_column_oriented_segment_info列式 Segment 元数据bytes
disk_cache_column_data磁盘列数据缓存bytes不能通过 system$set_cache_capacity 调整
memory_cache_bloom_index_filter布隆过滤器数据bytes每个 block 中每列对应一个条目,内存占用不大。有点查场景时建议关注命中率,尽量全部缓存。
memory_cache_bloom_index_file_meta_data布隆过滤器元数据count每张表最多可缓存与 block 数量相同的条目,内存占用不大。有点查场景时建议关注命中率,尽量全部缓存。
memory_cache_inverted_index_file_meta_data倒排索引元数据count
memory_cache_inverted_index_file倒排索引数据bytes
memory_cache_vector_index_file_meta_data向量索引元数据count
memory_cache_vector_index_file向量索引数据bytes
memory_cache_spatial_index_file_meta_data空间索引元数据count
memory_cache_spatial_index_file空间索引数据bytes
memory_cache_virtual_column_file_meta_data虚拟列文件元数据count
memory_cache_prune_partitionsPartition pruning 缓存count默认开启。对满足条件的确定性查询缓存 pruning 结果。如需测试 pruning 效果可将容量设为 0 以绕过缓存。
memory_cache_parquet_meta_dataParquet 文件元数据countHive 表及其他数据源使用
memory_cache_iceberg_tableIceberg 表元数据count

示例

SELECT * FROM system.caches;

查看所有缓存的使用率和命中率:

SELECT
node,
name,
capacity,
if(unit = 'count', (num_items + 1) / (capacity + 1),
unit = 'bytes', (size + 1) / (capacity + 1), -1) AS utilization,
if(access = 0, 0, hit / access) AS hit_rate,
if(access = 0, 0, miss / access) AS miss_rate,
num_items,
size,
unit,
access,
hit,
miss
FROM system.caches;
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验