StarRocks基本架构原理

news/2024/12/21 12:56:54/文章来源:https://www.cnblogs.com/shihongpin/p/18451160

概念

  • StarRocks是新一代高性能分析型数据仓库,支持实时、多维、高并发的数据分析;
  • StarRocks支持从各种数据源进行实时和批量数据推流,它还允许您直接分析存储在数据湖中的数据,无需数据迁移
  • StarRocks非常适合对新数据进行实时分析。可以高速摄取数据,并实时更新和删除数据

场景

  • StarRocks满足各种企业分析需求,包括OLAP多维分析、实时分析、高并发分析、统一分析等

OLAP多维分析

  • OLAP(Online Analytical Processing,联机分析处理)是一种数据分析技术,它允许用户从多个角度对数据进行快速、灵活的分析
  • MPP(Massively Parallel Processing,大规模并行处理)框架是一种分布式计算架构,它通过将任务并行地分散到多个服务器和节点上执行来提高数据处理的速度和效率
  • MPP框架和向量化执行引擎使用户能够在各种架构之间进行选择,以开发多维分析报告
  • 用户行为分析、用户画像、标签分析、用户标记、高维指标报表、自助式仪表板、服务异常探测和分析、跨主题分析、财务数据分析、系统监控分析

实时分析

  • StarRocks使用Primary Key表实现实时更新,TP数据库中的数据变更可以在几秒钟内同步到StarRocks,构建实时仓库
  • 在线促销分析、物流跟踪分析、金融行业的性能分析和指标计算、直播质量分析、广告投放分析、驾驶舱管理、应用程序性能管理(APM)

高并发分析

  • StarRocks利用高性能数据分发、灵活的索引和智能物化视图,以高并发方式进行面向用户的分析

统一分析

  • 一个系统可以为各种分析场景提供支持,从而降低系统复杂性并降低TCO
  • StarRocks统一了数据湖和数据仓库,湖仓一体中的数据可以在StarRocks中全部进行管理,需要高并发的延迟敏感型查询可以在StarRocks上运行,数据湖中的数据可以通过StarRocks提供的外部目录或外部表进行访问

架构

  • 整个系统仅由两种类型的组件组成:前端和后端。前端节点称为FE。后端节点有两种类型:BE和 CNs(计算节点)
  • 当使用本地数据存储时,会部署BE,当数据存储在对象存储或HDFS上时,会部署CN

前端节点(FE)

  • 负责元数据管理、客户端连接管理、查询规划和查询调度
  • FE节点分为Leader FE、Follower FE和Observer FE。Leader FE负责读写元数据,Follower FE和Observer FE只读取元数据,并将写请求路由到Leader FE

后端节点(BE)

  • 负责数据存储和SQL执行
  • BE节点在存算一体架构中负责数据存储,在存算分离架构中,BE被计算节点(CN)取代,数据存储在对象存储或HDFS中

数据管理

  • 使用列式存储,采用分区分桶机制进行数据管理
  • 一张表可以被划分成多个分区,一个分区内的数据可以进一步分桶,形成Tablet,每个Tablet以多副本形式存储在不同的BE节点上,支持数据的高可靠性和服务的高可用性

存算分离架构

  • StarRocks支持存算分离架构,其中计算节点(CN)仅负责数据计算任务和缓存热数据,数据存储在对象存储或HDFS中
  • 这种设计降低了存储成本,确保更好的资源隔离,并具有高度的弹性和可扩展性

特点

  • 向量化引擎:通过向量化引擎,StarRocks可以充分利用CPU的SIMD指令集,提高查询性能
  • CBO(基于代价的优化器):StarRocks的CBO优化器采用Cascades框架,基于统计信息进行代价估算,选择最优的物理执行计划
  • 高并发查询:StarRocks优化查询调度和资源分配,支持高并发查询。
  • 智能物化视图:StarRocks支持异步物化视图,可以自动刷新,支持多表关联和丰富的聚合算子,提高查询性能

StarRocks和Doris对比

StarRocks Doris
架构特点 MPP架构,支持存算分离,可以将数据存储在对象存储(如S3)或HDFS中,而计算节点可以独立扩展,支持向量化查询引擎,列式存储,以及多种数据导入方式 MPP架构,支持多种数据导入方式,在2.0版本后也开始支持存算分离架构,允许数据存储在远端存储系统中
性能对比 单表查询场景有优势,更新频率高,降低维护成本 多表查询和资源消耗方面有优势
应用场景 需要处理大规模数据和分析复杂数据的场景 需要高性能数据处理和分析的场景
存储模型 在存储方面提供了更多优化,如数据压缩和行列混存表 同样采用列式存储模型

数据导入方式

  • Insert Into: 两者都支持使用Insert Into语句直接导入数据,适用于小批量数据的导入
  • Stream Load: 两者都支持Stream Load,适用于实时数据导入,通过HTTP协议发送数据
  • Broker Load: 两者都支持Broker Load,适用于从HDFS等外部存储系统批量导入数据
  • Routine Load: 两者都支持Routine Load,适用于从Kafka等流数据源实时导入数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/809938.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

组态也能开发WEB前端 | uiotos致敬amis、nodered、appsmith、codewave、goview、dataroom、iotrouter、FUXA、乐吾乐

WEB组态开发SCADA、HMI画面、大屏可视化,还比较常见。比如下面: UIOTOS组态示例 那么常规WEB前端功能,组态能否一并做了呢?比如下面这种: UIOTOS前端示例 答案是可以的!UIOTOS支持页面无限嵌套,能实现原型即应用。现在就以一个具体小示例介绍如何实现的。 效果 如下所示…

GUI无代码小示例 - 工作流连线实现0/1连续翻转

效果 如下所示,连续点击按钮,输出0、1、0、1...。 步骤新建页面,拖入组件拖入3个组件:数学计算、输入框、按钮。如下所示: 连线和配置按钮点击 → 函数执行1减去输入,作为函数输出这样,当首次执行时,默认操作数1将减去输入的1,输出0。 函数输出→ 输入框 → 函数输入 …

Java生成条形码(亲测可通过扫码枪扫出)

Java生成条形码(亲测可通过扫码枪扫出) 秃秃爱健身该博客介绍了如何在Java项目中通过barcode4j库生成Code128条形码,解决了条形码扫不出或美观度不足的问题。提供了相关代码示例,包括Maven依赖、工具类和生成条形码的方法,可以自定义条形码的高度、宽度、是否留白和隐藏文…

点“亮”户外应用场景,来看触想高亮显示器TPC-M8的硬实力!

工业显示器作为信息可视化和人机交互的重要媒介,正在越来越多领域担当关键任务,工业显示器的可读性及耐用性,影响应用体验、设备安全和生产效率。尤其在户外,面对高低温、灰尘雨水、强光紫外线等极端因素,常规性能的工业显示器已不足以覆盖户外高风险应用需求。为此,触想…

phpvulhunter工具:静态 php 代码审计

phpvulhunter是一款PHP源码自动化审计工具,通过这个工具,可以对一些开源CMS进行自动化的代码审计,并生成漏洞报告。 1、安装 首先从github上进行获取: git clone https://github.com/OneSourceCat/phpvulhunter2、下载完成后,将工程目录放置于 WAMP 等 PHP-Web 运行环境中…

YOLOv8-seg训练与推理

1.YOLOv8-seg简介 YOLOv8-seg是YOLO系列模型的其中一个版本。YOLOv8-seg在继承YOLO系列模型高效性和准确性的基础上,增加了实例分割的能力。 2.数据集使用的数据集较简单,主要以下目录:images:存放原始图片(1500张),大小为128x128。部分如下: images_json:存放labelme标注的…

易基因: cfMeDIP-seq揭示cfDNA甲基化高效区分原发性和转移性前列腺|Nat Commun

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 前列腺癌(Prostate cancer,PCa)是男性中第二常见的恶性肿瘤,也是全球癌症相关死亡的第三大原因。虽然大多数原发性前列腺癌可以治愈,但转移性前列腺癌患者的5年生存率仍低至30%。大多数患者很快就会发展成…

从零搭建Xswitch进行测试

1 xswitch官网 拉取社区版xwitch docker镜像,编译之,修改.env文件 ,把docker跑起来,这个是核心服务 跑起来如下,端口映射不需要管,他内部做好的,默认sip使用7060 前端ws连接端口 8081 wss连接端口 8082 2 自己照着官网ES6 demo 例子写 Vetro 例子,我是用的vue搞的前端…

【日记】医生拆线居然还能没拆干净(1796 字)

正文早上拆线,医院的门诊登记簿上写名字排队。我前面人还挺多。不过医生问过前面的情况之后,就先给我做了,因为拆线快。等我到市里转车,吃过饭后才发现,那个医生拆线没拆干净…… 吃了饭感觉口腔里还是有奇怪的东西,那个粗糙的质感,确定是线头没错了……找了个酒店的卫生…

Docker 学习笔记-基本概念与安装

Docker 学习笔记 基本概念镜像:Docker 的镜像概念类似于虚拟机里的镜像,是一个只读的模板,一个独立的文件系统,包括运行容器所需的数据,可以用来创建新的容器。 DockerFile;镜像可以基于 DockerFile 构建,DockerFile 是一个描述文件,里面包含若干条命令,每条命令都会对…

面相快速入门教程7木型

7 木型 在本章中,我将介绍木型的基础知识,你将学会如何识别木型。首先,我们来快速参考一下木的特征:能量:向上、推动、活跃、早晨、春天、童年 特质:乐观、热情、活跃、人道主义、自信、愤怒、沮丧、冲动、反应灵敏、直接、敏锐、实际、逻辑性强、有条理、果断、有判断力…

1个月手把手教授搭建交易系统

1、资料领取 2、指导学习资料 3、完成观念的搭建 4、进行交易系统的初步搭建 5、对交易系统进行回测并且给予优化建议 6、完成交易系统的优化并且进行回测 学会了上述内容后,就能够自己搭建自己的交易系统了。 目前学费5万,线下教学,包教会。食宿由学员提供,只招收1人。