Starrocks 简介

一、定义

Starrocks 是新一代极速全场景 MPP 数据库。StarRocks 采用分布式架构,对数据表进行水平划分并以多副本存储。集群规模可以灵活伸缩,能够支持 10PB 级别的数据分析; 支持 MPP 框架,并行加速计算; 支持多副本,具有弹性容错能力。

StarRocks 采用关系模型,使用严格的数据类型和列式存储引擎,通过编码和压缩技术,降低读写放大;使用向量化执行方式,充分挖掘多核 CPU 的并行计算能力,从而显著提升查询性能。

二、适用场景

StarRocks 可以满足企业级用户的多种分析需求,包括 OLAP 多维分析、定制报表、实时数据分析和 Ad-hoc 数据分析等。具体的业务场景包括:

  • OLAP 多维分析:用户行为分析、用户画像、财务报表、系统监控分析;
  • 实时数据分析:电商数据分析、直播质量分析、物流运单分析、广告投放分析;
  • 高并发查询:广告主表分析、Dashbroad 多页面分析;
  • 统一分析:通过使用一套系统解决上述场景,降低系统复杂度和多技术栈开发成本;

三、基本概念

  • FE:FrontEnd 简称 FE,是 StarRocks 的前端节点,负责管理元数据,管理客户端连接,进行查询规划,查询调度等工作;
  • BE:BackEnd 简称 BE,是 StarRocks 的后端节点,负责数据存储,计算执行,以及 compaction,副本管理等工作;
  • Broker:StarRocks 中和外部 HDFS / 对象存储等外部数据对接的中转服务,辅助提供导入导出功能;
  • StarRocksManager:StarRocks 的管理工具,提供 StarRocks 集群管理、在线查询、故障查询、监控报警的可视化工具;
  • Tablet:StarRocks 中表的逻辑分片,也是 StarRocks 中副本管理的基本单位,每个表根据分区和分桶机制被划分成多个 Tablet 存储在不同 BE 节点上;

四、系统架构

StarRocks 集群由 FE 和 BE 构成, 可以使用 MySQL 客户端访问 StarRocks 集群。

4.1 FE

  • FE 接收 MySQL 客户端的连接, 解析并执行 SQL 语句;
  • 管理元数据, 执行 SQL DDL 命令, 用 Catalog 记录库, 表, 分区, tablet 副本等信息;
  • FE 高可用部署, 使用复制协议选主和主从同步元数据, 所有的元数据修改操作, 由 FE leader 节点完成, FE follower 节点可执行读操作。元数据的读写满足顺序一致性。FE 的节点数目采用 2n+1, 可容忍 n 个节点故障。当 FE leader故障时, 从现有的 follower 节点重新选主, 完成故障切换;
  • FE 的 SQL layer 对用户提交的 SQL 进行解析, 分析, 改写, 语义分析和关系代数优化, 生产逻辑执行计划;
  • FE 的 Planner 负责把逻辑计划转化为可分布式执行的物理计划, 分发给一组 BE;
  • FE 监督 BE, 管理 BE 的上下线, 根据 BE 的存活和健康状态, 维持 tablet 副本的数量;
  • FE 协调数据导入, 保证数据导入的一致性;

4.2 BE

  • BE 管理 tablet 副本, tablet 是 table 经过分区分桶形成的子表, 采用列式存储;
  • BE 受 FE 指导, 创建或删除子表;
  • BE 接收 FE 分发的物理执行计划并指定 BE coordinator 节点, 在 BE coordinator 的调度下, 与其他 BE worker 共同协作完成执行;
  • BE 读本地的列存储引擎获取数据,并通过索引和谓词下沉快速过滤数据;
  • BE 后台执行 compact 任务, 减少查询时的读放大;
  • 数据导入时, 由 FE 指定 BE coordinator, 将数据以 fanout 的形式写入到 tablet 多副本所在的 BE 上;
相关推荐
二进制漫游记3 分钟前
FastAPI项目集成 Qdrant向量数据库+阿里云Embedding完整实战(工具封装+业务调用)
数据库·python·阿里云·embedding
2501_928996227 分钟前
GPT-4o换DeepSeek迁移成本多少?中科热备解析API聚合平台技术账本
前端·数据库·人工智能
智购科技自动贩卖机1 小时前
自动售货机嵌入式状态机设计实战:从45个事件源到层次型状态机的工程重构
大数据·人工智能·stm32·物联网·重构·硬件架构
乐迪信息1 小时前
智慧港口船舶AI算法实现在线状态监测
大数据·人工智能·深度学习·算法·计算机视觉
Raas1001 小时前
MAI Gateway(魔芋企业级AI网关)对比分析:AI网关和API网关区别?企业级能力差距一览
大数据·人工智能·数据挖掘·mai gateway·企业级产品
Neighbor_OldY2 小时前
云上安全配置审计与误配置修复实战:从安全组、OSS、RAM到数据库的全栈排查复盘
大数据·运维·安全·云计算
泡干脆面就番茄2 小时前
MySQL_子查询_分页查询与联合查询详解
数据库·mysql
工业甲酰苯胺3 小时前
AI低代码破局:制造业数智转型落地实战
大数据·人工智能·低代码·制造
大大大大晴天3 小时前
每天认识一个组件:流式存储Apache Fluss
大数据
devpotato3 小时前
缓存与数据库更新顺序不一致问题
java·数据库·redis