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 节点上添加额外的存储卷
  • 添加云存储空间

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

相关推荐
一条路上的咸鱼1 天前
StarRocks元数据无法合并
starrocks
Shyllin3 天前
StarRocks 排查单副本表
starrocks
小强签名设计7 天前
SQL语句整理五-StarRocks
数据库·starrocks·sql
京河小蚁9 天前
[bug] StarRocks borker load意向之外的bug
starrocks·broker
m0_375599739 天前
StarRocks:存算一体模式部署
starrocks
一条路上的咸鱼24 天前
离线数据同步变迁
starrocks·数据同步
hankl19901 个月前
StarRocks-同步hive数据
starrocks·数据仓库
一条路上的咸鱼1 个月前
一种小资源情况下RDS数据实时同步StarRocks方案
starrocks·数据同步
roman_日积跬步-终至千里1 个月前
【StarRocks】starrocks 3.2.12 【share-nothing】 多Be集群容器化部署
starrocks