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

背景:StarRocks 3.2,存储一体

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

FE 存储

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

BE 存储

预估 BE 初始存储空间

StarRocks 集群需要的总存储空间同时受到原始数据大小、数据副本数以及使用的数据压缩算法的压缩比的影响。
你可以通过以下公式估算所有 BE 节点所需的总存储空间:
磁盘大小一样,SSD盘,无需做RAID(多副本情况下)

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

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

在 StarRocks 中,一个表中的数据首先被划分为多个分区(

### 部署 StarRocks 分布式集群于 CentOS 的安装配置教程 #### 准备工作 在部署 StarRocks 集群之前,需确保所有节点的操作系统均为 CentOS 并完成基础环境准备。具体操作包括但不限于更新操作系统软件包、关闭防火墙以及 SELinux 设置[^1]。 ```bash sudo yum update -y sudo systemctl stop firewalld sudo setenforce 0 ``` #### 编写 Ansible 主机清单文件 Ansible 是一种高效的自动化工具,可用于简化分布式系统的部署过程。创建主机清单文件 `/etc/ansible/roles/starrocks_hosts.ini` 来定义目标服务器组及其 IP 地址: ```ini [starrocks_server] 192.168.1.101 ansible_user=root 192.168.1.102 ansible_user=root 192.168.1.103 ansible_user=root ``` 上述配置表示三台服务器作为 StarRocks 节点参与集群构建。 #### 解压 StarRocks 安装包至各节点 通过 Ansible 执行命令解压 StarRocks 压缩包到指定目录 `/opt/software` 中: ```bash ansible -i /etc/ansible/roles/starrocks_hosts.ini starrocks_server -m shell -a "tar -zxvf /opt/software/StarRocks-3.3.2-centos-amd64.tar.gz -C /opt/software" ``` 此命令会将压缩包 `StarRocks-3.3.2-centos-amd64.tar.gz` 提取到每台目标机器上的 `/opt/software` 文件夹下。 #### 修改 StarRocks 配置文件 进入已解压的 StarRocks 目录并编辑核心配置文件 `fe.conf` 和 `be.conf`。这些文件通常位于子目录如 `conf/` 下面。以下是部分关键参数设置示例: 对于 Frontend (FE): ```properties # fe.conf example configuration meta_dir=/data/meta/ edit_log_roll_size=1G max_memory_limit_ratio=0.7 ``` 对于 Backend (BE): ```properties # be.conf example configuration storage_root_path=/data/be_data/ heartbeat_service_port=9050 brpc_port=12500 ``` 以上路径应根据实际磁盘挂载情况调整,并确认有足够的存储空间支持数据增长需求。 #### 启动服务组件 启动 FE 及 BE 组件前先初始化元数据库结构: ```bash cd /opt/software/StarRocks-fe/bin/ ./init_fe.sh --user root --password '' ``` 随后分别启动前端与后端进程: ```bash # Start FE instance on master node only. /opt/software/StarRocks-fe/bin/start_fe.sh --daemon # On all backend nodes, start corresponding services. /opt/software/StarRocks-be/bin/start_be.sh --daemon ``` 验证各个实例运行状态正常之后即可继续后续测试环节。 #### 测试连接性及功能验证 利用 MySQL 客户端尝试访问刚刚搭建好的 StarRocks 实例,默认监听地址为本地回环接口(`localhost`)加上默认端口(9030),如下所示: ```sql mysql -h127.0.0.1 -P9030 -uroot SHOW DATABASES; USE testdb; CREATE TABLE IF NOT EXISTS mytable(id INT, name VARCHAR(50)); INSERT INTO mytable VALUES(1,'Alice'),(2,'Bob'); SELECT * FROM mytable; ``` 如果一切顺利,则说明整个集群已经成功上线可以投入使用了。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

京河小蚁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值