StarRocks入门部署

本文介绍了高性能分析型数据仓库StarRocks,包括其系统架构,如前端节点FE负责元数据管理等,后端节点BE负责数据存储和SQL执行;还阐述了数据管理特性,采用列式存储和分区分桶机制。此外,给出了简单部署步骤,含部署前准备和手动部署各节点及集群搭建等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、StarRocks整体介绍

1.1、系统架构图:

1.2、FE相关

1.3、BE相关

1.4、数据管理特性

二、简单部署

2.1、部署前准备

2.2、手动部署

 2.2.1、部署Leader FE节点

2.2.2、部署BE节点

2.2.3、关联FE、BE,搭建StarRocks集群

2.2.4、给root设置密码:


一、StarRocks整体介绍

StarRocks 是一款高性能分析型数据仓库。广泛应用于实时数仓、OLAP 报表、数据湖分析等场景。官网:StarRocks @ StarRocks_intro @ StarRocks Docs

1.1、系统架构图:

1.2、FE相关

FE 是 StarRocks 的前端节点,负责管理元数据,管理客户端连接,进行查询规划,查询调度等工作。每个 FE 节点都会在内存保留一份完整的元数据,这样每个 FE 节点都能够提供无差别的服务。

1.2.1、Leader FE

  • Leader 从 Follower 中自动选出,进行选主需要集群中有半数以上的 Follower 节点存活。如果 Leader 节点失败,Follower 会发起新一轮选举。
  • Leader FE 提供元数据读写服务。只有 Leader 节点会对元数据进行操作,Follower 和 Observer 只有读取权限。Follower 和 Observer 元数据写入请求路由到 Leader 节点,Leader 更新完数据后,会同步给 Follower 和 Observer。必须有半数以上的 Follower 节点同步成功才算作元数据写入成功

1.2.2、Follower

  • 只有元数据读取权限,无写入权限。通过回放 Leader 的元数据日志来异步同步数据。
  • 参与 Leader 选举,必须有半数以上的 Follower 节点存活才能进行选主。

1.2.3、Observer

  • 主要用于扩展集群的查询并发能力,可选部署。
  • 不参与选主,不会增加集群的选主压力。
  • 通过回放 Leader 的元数据日志来异步同步数据。

1.3、BE相关

BE 是 StarRocks 的后端节点,负责数据存储、SQL执行等工作。

  • 数据存储方面,StarRocks 的 BE 节点都是完全对等的,FE 按照一定策略将数据分配到对应的 BE 节点。BE 负责将导入数据写成对应的格式存储下来,并生成相关索引

  • 在执行 SQL 计算时,一条 SQL 语句首先会按照具体的语义规划成逻辑执行单元,然后再按照数据的分布情况拆分成具体的物理执行单元。物理执行单元会在对应的数据存储节点上执行,这样可以实现本地计算,避免数据的传输与拷贝,从而能够得到极致的查询性能。

1.4、数据管理特性

StarRocks 使用列式存储,采用分区分桶机制进行数据管理。

=================待熟悉补充======= 

二、简单部署

2.1、部署前准备

2.1.1、检查端口占用情况:

FE:

netstat -tunlp | grep 8030
netstat -tunlp | grep 9020
netstat -tunlp | grep 9030
netstat -tunlp | grep 9010

BE:

netstat -tunlp | grep 9060
netstat -tunlp | grep 8040
netstat -tunlp | grep 9050
netstat -tunlp | grep 8060

需要已经安装了jdk。

2.2、手动部署

一台服务器,部署了一个FE、一个BE。

wget https://releases.starrocks.io/starrocks/StarRocks-3.0.1.tar.gz
tar -zxvf StarRocks-3.0.1.tar.gz

 详见:https://docs.starrocks.io/zh-cn/latest/deployment/deploy_manually

部署后结构:

 2.2.1、部署Leader FE节点

修改 FE 配置文件 fe/conf/fe.conf:元数据存储路径:

meta_dir = /home/starrocks/data/femeta

启动:

./fe/bin/start_fe.sh --daemon
查看FE日志,检查是否启动成功:
cat fe/log/fe.log | grep thrift

2.2.2、部署BE节点

修改 BE 配置文件 be/conf/be.conf:数据存储路径:

storage_root_path = /home/starrocks/data/bestorage

启动BE:

./be/bin/start_be.sh --daemon
cat be/log/be.INFO | grep heartbeat

2.2.3、关联FE、BE,搭建StarRocks集群

在FE、BE部署好之后,需要将他们关联起来才能使用。如果FE中一个BE都没有,navicat连接会报错:1064 - Backend node not found. Check if any backend node is down.

 通过 MySQL 客户端连接到 StarRocks(在本机安装一个,或者找个其他安装了的服务器远程连接也行。)初始用户 root ,密码默认为空。

-- 2.2.3.1、登录
mysql -h 172.20.30.20 -P 9030 -u root

 在mysql客户端执行以下命令:(注意命令以;或者\g或者\G结尾

-- 2.2.3.2、查看 Leader FE 节点状态:
SHOW PROC '/frontends'\G

======2.2.3.3、添加 BE 节点至集群======
-- ALTER SYSTEM ADD BACKEND "<be_address>:<heartbeat_service_port>", "<be2_address>:<heartbeat_service_port>", "<be3_address>:<heartbeat_service_port>";

ALTER SYSTEM ADD BACKEND "172.20.30.20:9050";

-- 2.2.3.4、查看 BE 节点状态
SHOW PROC '/backends'\G

2.2.4、给root设置密码:

SET PASSWORD = PASSWORD('密码');

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值