GBASE南大通用分享:clickhouse-Merge Tree原理解析

GBASE南大通用分享

MergeTree表引擎参数:

partition by:分区键

order by:排序键

primary key:主键

sample by:抽样表达式(如果使用此配置,主键配置也需要声明同样的表达式)

settings index_granularity:索引力度,默认值是8192,表示每隔8192行数据才生成一条索引

settings:index_granularity_bytes:根据每一批次写入数据的体量大小,动态划分间隔大小,默认为10M,设置为0表示不启动自适应功能

settings:enable_mixed_granularity_parts:设置是否开启自适应索引间隔的功能

settings:merge_with_ttl_timeout:数据ETL功能

settings:storage_policy:多路径的存储策略

一级索引:

稀疏索引

索引粒度:8192,通过index_granularity这个参数来实现

二级索引:

allow_experimental_data_skipping_indices

granularity:数据的粒度

index_granularity:聚合信息汇总的粒度

跳数索引类型:

minmax:记录了一段数据内的最小和最大极致

set:记录了声明字段或表达式的取值(唯一值,无重复),其中max_rows是一个阈值,表示在一个index_granularity内索引最多记录的数据行数,如果为0,表示无限制

ngrambf_v1:记录的是数据短语的布隆表过滤器,只支持string和fixedstring数据类型,完整形式(n,size_of_bloom_filter_in_bytes,number_of_hash_functions,random_seed)

n:token长度,依据n的长度将数据切割为token短语

size_of_bloom_filter_in_bytes:布隆过滤器的大小

number_of_hash_functions:布隆过滤器中使用hash函数的个数

random_seed:hash函数的随机种子

tokenbf_v1:是ngrambf_v1的变种,除了短语token的处理方法外,其他的一样。

查询压缩数据的统计信息:

clickhouse-compressor --stat < .bin(数据文件)

数据块的大小由min_compress_block_size(默认65536)与max_compress_block_size(默认1048576)参数指定

相关推荐
2601_9495936514 分钟前
深入解析CANN-acl应用层接口:构建高效的AI应用开发框架
数据库·人工智能
javachen__14 分钟前
mysql新老项目版本选择
数据库·mysql
Dxy123931021632 分钟前
MySQL如何高效查询表数据量:从基础到进阶的优化指南
数据库·mysql
Dying.Light35 分钟前
MySQL相关问题
数据库·mysql
蜡笔小炘1 小时前
LVS -- 利用防火墙标签(FireWall Mark)解决轮询错误
服务器·数据库·lvs
韩立学长1 小时前
基于Springboot泉州旅游攻略平台d5h5zz02(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·旅游
Re.不晚2 小时前
MySQL进阶之战——索引、事务与锁、高可用架构的三重奏
数据库·mysql·架构
老邓计算机毕设2 小时前
SSM智慧社区信息化服务平台4v5hv(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·智慧社区、·信息化平台
麦聪聊数据2 小时前
为何通用堡垒机无法在数据库运维中实现精准风控?
数据库·sql·安全·低代码·架构
2301_790300962 小时前
Python数据库操作:SQLAlchemy ORM指南
jvm·数据库·python