第2.6章 StarRocks表设计——数据压缩

注:本篇文章阐述的是StarRocks-3.2版本的数据压缩机制

1.数据压缩概述

StarRocks支持对表,索引数据进行压缩(compression)。数据压缩不仅有助于节省存储空间,还能提高I/O密集型任务的性能,但是压缩和解压数据需要额外的cpu资源。

2.选择数据压缩算法

StarRocks支持四种数据压缩算法:LZ4,Snappy,Zstandard(或 zstd)、zlib。每种压缩算法在压缩率和压缩/解压缩性能上有所不同。压缩率排名如下:zlib > Zstandard > LZ4 > Snappy 。由于数据高度压缩,使用zlib算法的表,其导入和查询性能会受到一定程度的影响。LZ4 和 Zstandard算法具有较为均衡的压缩比和解压缩性能。如果对存储空间占用没有特殊需求,建议使用LZ4 或Zstandard算法。除此之外,不同的数据类型也会影响算法的压缩率。

3.设置数据压缩算法

只能在建表时通过增加属性 compression 为其设置数据压缩算法且后续无法修改。如不指定数据压缩算法,StarRocks 默认使用 LZ4

compression 有效值包括:

  • LZ4:LZ4 算法。
  • ZSTD:Zstandard 算法。
  • ZLIB:zlib 算法。
  • SNAPPY:Snappy 算法。
sql 复制代码
#对表data_compression指定算法 Zstandard
create table `data_compression` (
  `id`      int(11)     not null     comment "",
  `name`    char(200)   null         comment ""
)
engine=olap 
unique key(`id`)
comment "olap"
distributed by hash(`id`)
properties (
"compression" = "zstd"
);

参考文章:

数据压缩 | StarRocks

相关推荐
bbsh20992 分钟前
WebFuture 升级提示“不能同时包含聚集KEY和大字段””的处理办法
数据库·sql·mysql·webfuture
线条11 小时前
大数据 ETL 工具 Sqoop 深度解析与实战指南
大数据·sqoop·etl
Zfox_4 小时前
Redis:Hash数据类型
服务器·数据库·redis·缓存·微服务·哈希算法
陈丹阳(滁州学院)6 小时前
若依添加添加监听容器配置(删除键,键过期)
数据库·oracle
远方16097 小时前
14-Oracle 23ai Vector Search 向量索引和混合索引-实操
数据库·ai·oracle
GUIQU.8 小时前
【Oracle】数据仓库
数据库·oracle
mazhafener1238 小时前
智慧照明:集中控制器、单双灯控制器与智慧灯杆网关的高效协同
大数据
打码人的日常分享8 小时前
物联网智慧医院建设方案(PPT)
大数据·物联网·架构·流程图·智慧城市·制造
恰薯条的屑海鸥9 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十六期-SSRF模块)
数据库·学习·安全·web安全·渗透测试·网络安全学习
咖啡啡不加糖9 小时前
Redis大key产生、排查与优化实践
java·数据库·redis·后端·缓存