StarRocks 生产部署一套集群,存储空间如何规划?

背景:StarRocks 3.2,存储一体

使用场景:多分析、小查询多单但不高、数据量几百T

FE 存储

由于 FE 节点仅在其存储中维护 StarRocks 的元数据,因此在大多数场景下,每个 FE 节点只需要 100 GB 的 HDD 存储,生产建议200G SSD以上,FE-FOLLOWER节点也一样的配置。

BE 存储

预估 BE 初始存储空间

StarRocks 集群需要的总存储空间同时受到原始数据大小、数据副本数以及使用的数据压缩算法的压缩比的影响。

你可以通过以下公式估算所有 BE 节点所需的总存储空间:

磁盘大小一样,SSD盘,无需做RAID(多副本情况下)

shell 复制代码
BE 节点所需的总存储空间 = 原始数据大小 * 数据副本数/数据压缩算法压缩比

原始数据大小 = 单行数据大小 * 总数据行数

在 StarRocks 中,一个表中的数据首先被划分为多个分区(Partition),每个分区建议10-20GB,如果分桶表建议每个分桶1GB左右,然后进一步被划分为多个 Tablet。Tablet 是 StarRocks 中基本数据管理逻辑单元。为保证数据的高可靠性,你可以为每个 Tablet 维护多个副本,存储于不同的 BE 节点。StarRocks 默认维护三个副本。

目前,StarRocks 支持四种数据压缩算法:zlib、Zstandard(或 zstd)、LZ4 和 Snappy(按压缩比从高至低排列)。这些数据压缩算法可以提供 3:1 到 5:1 的压缩比。

通过计算得到总存储空间后,你可以简单地将之除以集群中的 BE 节点数,估算出每个 BE 节点所需的平均存储空间。

随时添加额外存储空间

如果 BE 存储空间随着原始数据的增长而耗尽,可以进行以下选择。

  • 在 StarRocks 集群中添加新的 BE 节点
  • 在 BE 节点上添加额外的存储卷
  • 添加云存储空间

集群存储空间规划除了以上内容外,还要考虑磁盘阈值报警,业务数据未来增加大小等。

相关推荐
MARSERERER4 天前
StarRocks 3.4.4查询bug#60003(backport #60013)
starrocks
镜舟科技5 天前
镜舟科技 CTO 陈鹏:从实时分析到统一的数据分析与智能平台
starrocks·数据分析·镜舟科技·data agent·mip·统一数据·业务语义
StarRocks_labs12 天前
StarRocks 接入 Paimon C++:让湖上查询进入原生执行链路
starrocks·c++·sql·jni·paimon·auto·湖上查询
镜舟科技20 天前
从 StarRocks 到 MIP:数据平台的下一步是“理解”
starrocks·sql·ai·prompt·agent·context·mip
docsz1 个月前
StarRocks 4.X实战
starrocks
EatFan1 个月前
从T+1到分钟级:湖仓一体在大厂的真实落地收益对照(携程/网易云信/腾讯)
starrocks·flink·硬件架构·doris·湖仓一体·paimon
StarRocks_labs1 个月前
当大模型调用进入执行引擎:StarRocks AI Function 全新能力解析
数据库·starrocks·sql·ai·pipeline·数据处理·join
智码看视界1 个月前
大数据架构深度解析:StarRocks 实时数仓搭建:比 ClickHouse 更适合多维分析的场景
大数据·starrocks·olap·数据建模·列式存储·clickhouse对比