starRocks搭建

公司要使用新的大数据架构,打算用国产代替国外的大数据平台。所以这里我就纠结用doris还是starrocks,如果用doris,因为是开源的,以后就可以直接用云厂商的。如果用starrocks就得自己搭建,但是以后肯定会商业化,也是要收钱的。doris我以前用过,没用过starRocks,想试下是不是真的像下面参考链接里的高性能,所以我选择了starrocks。用他来做数仓,代替我们以前cdh里的hive-presto或者kudu-impala。

大家觉得starRocks可以替代hive吗?我觉得是可以的,hadoop那一套的都是20年前google玩腻的了,hadoop那套组件太多了,好处就是非常稳定,20年了,几乎遇到的大bug都修完了。彻底不用hadoop那套,可以用starRocks代替。

检测cpu是否支持

cat /proc/cpuinfo | grep avx2

如果什么都没有打印,那么你可以换cpu了。

Be是负责计算的,你没有这个指令集,那么部署不了

介绍

startrocks是做【数据分析】的【数据仓库】,可以替代传统的hive,他具有向量化MMP架构列式存储引擎,支持实时分析,并发计算。兼容mysql协议,可使用mysql客户端对接。支持水平扩展。全系统无外部依赖,也就是不需要zookeeper来管理,或者元数据存在mysql,只用维护自身。

他不适合做事务操作,比如更新等操作,用来分析的数据都是写入了就不变的,比如日志数据,或者是体检报告等。

向量化:指的是将数据向量化后,cpu原本只能处理一条,现在可以同时处理多条

MPP架构:大规模并行处理架构,将数据拆分给多台机器一起执行,处理大量数据

列式存储引擎:将列进行管理,支持大宽表存储和分析,mysql就不行,字段多了就崩了,单独查列很快,可以实时更新列

实时分析:查询分析速度比较快,毫秒级

mysql客户端对接:比如navicat,或者jdbc都可以直接链接它?待验证

水平扩展:1台太弱,我可以继续加机器,让他分析能力变强

支持以下BI对接:包括 Tableau、Power BI、FineBI 和 Smartbi。

作为实时数仓,他只能【秒级】同步数据,可以实时【毫秒级查询

系统架构(维护以及搭建必看)

系统的核心只有 FE(Frontend)、BE (Backend) 或 CN (Compute Node) 进程。

前端(显示界面)、后端(逻辑控制)、节点

3.0后支持了存算分离,存储持久化数据必须放到hdfs上。当然你也可以选择存算一体。

3.0同样支持这两种架构。

这2个有啥区别,存算一体的话,你必须将【数据复制】到startRocks里一份,存算分离的话,你【直接用hdfs】的数据就行了。少了一步复制,存算分离的话更加省钱,省磁盘,更好的动态扩容,扩容就不用管存储了,直接扩容计算节点就行。缺点就是要多维护一套外源数据。

不支持混合部署,存算一体选择了,就不能弄存算分离了。

Fe负责协调、和目录管理

存算一体

Be负责存储计算

Fe(详细版)

负责管理元数据,管理客户端的连接,查询规划、查询调度。

FE的元数据是存储在内存里的,磁盘中也有一份。

FE有3种角色,leader,follower,observer

Leader是选举出来的,他负责读写。然后写入后,将元数据更新完,同步给follwer和observer,只有一半的follwer成功了才算成功。

Follwer没有写入权限,只有读取权限

Observer和follwer一样,可选部署,能提高查询速度,不参与选举,相当于是如虎添翼

Be(详细版)

每个BE是一样的(没有啥leader,follwer),但是并不是每一个be都有完整的数据,BE负责是存储和计算,FE将数据分配到BE,BE将他存下来,并且生成索引。

Be计算,会将sql根据语法意思,分成逻辑单元(代码层面),然后根据数据分布变成物理单元(硬件层面),然后会在本地执行。

元数据:这个不会没人知道吧,说实话我都不想写,只是为了照顾小白。比如这个数据是什么类型的,是字符串还是数字,这就是元数据,用来修饰数据的数据。

查询规划:计划要消耗多少性能,用什么sql,进行优化,转换成物理计划

查询调度:选择哪台be去执行这个物理计划

存算提一体数据管理

starRocks最小的存储单元叫做tablet。我们可以自行分区,然后指定分桶。

图中是按时间列分区,然后对指定4个字段进行分桶(4列,其实用1列都可以),然后指定了3个副本,每个列的数据每个单元数据,分布在不同的节点下。A-1和A-2还有A-3都是相同的数据,是A的备份。

他扩容的时候,不需要停止服务,增加节点会自动迁移,节点减少时也会自动均横分布数据。

存算分离

引入了【缓存】的概念,Be【只】负责计算,然后改名叫做Cn(计算节点-compute node)

缓存:会自动根据查询频率将数据进行动态变化

动态变化:分为3级,内存,本地,外源。最热的数据在内存中,然后其他是本地磁盘中,然后冷数据(不经常用的)在外源中。随着你的访问频率进行动态数据调整

存算分离建表时候,需要告诉他是否开启缓存。

支持以下后端存储:

  • 兼容 AWS S3 协议的对象存储系统(支持主流的对象存储系统如 AWS S3、Google GCP、阿里云 OSS、腾讯云 COS、百度云 BOS、华为云 OBS 以及 MinIO 等)
  • Azure Blob Storage
  • 传统数据中心部署的 HDFS


这里官网的系统架构的每句话,我都已经用自己话讲完了。下面开始搭建。

快速上手体验

他是用docker容器帮你打包好环境了,所以可以直接启动。

首先安装docker,至少4G内存,10GB空间。

我们服务器的cpu不支持avx2,这里我在下虚拟机,打算在windows上面弄一个Ubuntu.22,因为我个人电脑是支持avx2的。---等我下载完,在开始写后面的。


 

参考:

📚 【源码解析】StarRocks 查询优化系列文章 - 原理解读 - StarRocks中文社区论坛

StarRocks | StarRocks

部署前提条件 | StarRocks

https://www.cnblogs.com/huanghanyu/p/18186894

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

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

相关文章

【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会

【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会 【创作不易,求点赞关注收藏】 文章目录 【linux】服务器ubuntu安装cuda11.0、cuDNN教程,简单易懂,包教包会一、版本情况介绍二、安装cuda1、到官网…

最新PHP自助商城源码,彩虹商城源码

演示效果图 后台效果图 运行环境: Nginx 1.22.1 Mysql5.7 PHP7.4 直接访问域名即可安装 彩虹自助下单系统二次开发 拥有供货商系统 多余模板删除 保留一套商城,两套发卡 源码无后门隐患 已知存在的BUG修复 彩虹商城源码:下载 密码:chsc 免责声明&…

「AI得贤招聘官」通过首批“AI产业创新场景应用案例”评估

近日,上海近屿智能科技有限公司的「AI得贤招聘官」,经过工业和信息化部工业文化发展中心数字科技中心的严格评估,荣获首批“AI产业创新场景应用案例”。 据官方介绍,为积极推进通用人工智能产业高质量发展,围绕人工智能…

浅析Kafka Streams消息流式处理流程及原理

以下结合案例&#xff1a;统计消息中单词出现次数&#xff0c;来测试并说明kafka消息流式处理的执行流程 Maven依赖 <dependencies><dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-streams</artifactId><exclusio…

kafka发送消息流程

配置props.put(ProducerConfig.PARTITIONER_CLASS_CONFIG, RoundRobinPartitioner.class); public Map<String,Object> producerConfigs(){Map<String,Object> props new HashMap<>();props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG,bootstrapServers…

文件的顺序读写

文件读写函数介绍 文件顺序读写函数 函数名功能适用于fputc 字符输出函数 所有输出流 fgetc 字符输⼊函数 所有输⼊流 fputs ⽂本⾏输出函数 所有输出流fgets ⽂本⾏输⼊函数 所有输⼊流fprintf 格式化输出函数 所有输出流fscanf 格式化输⼊函数 所有输⼊流fwrite ⼆进制输出…

Spring源码中的模板方法模式

1. 什么是模板方法模式 模板方法模式&#xff08;Template Method Pattern&#xff09;是一种行为设计模式&#xff0c;它在操作中定义算法的框架&#xff0c;将一些步骤推迟到子类中。模板方法让子类在不改变算法结构的情况下重新定义算法的某些步骤。 模板方法模式的定义&…

被动的机器人非线性MPC控制

MPC是一种基于数学模型的控制策略&#xff0c;它通过预测系统在未来一段时间内的行为&#xff0c;并求解优化问题来确定当前的控制输入&#xff0c;以实现期望的控制目标。对于非线性系统&#xff0c;MPC可以采用非线性模型进行预测和优化&#xff0c;这种方法被称为非线性模型…

DBeaver导入脚本和导出数据

DBeaver导入脚本和导出数据 前言&#xff1a; 通常产品会要求&#xff0c;把xx表导出Excel&#xff0c;navicat一般公司不让用。讲解使用DBeaver 导入脚本 我们将sql脚本导入DBeaver 1&#xff0c;选择数据库&#xff0c;找到执行脚本 2&#xff0c;选用sql脚本&#xff0…

【Linux】权限管理与相关指令

文章目录 1.权限、文件权限、用户文件权限的理解以及对应八进制数值表示、设置目录为粘滞位文件类型 2.权限相关的常用指令susudochmodchownchgrpumaskwhoamifile 1.权限、文件权限、用户 通过一定条件&#xff0c;拦住一部分人&#xff0c;给另一部分权利来访问资源&#xff0…

IDEA实现SpringBoot项目的自打包自发布自部署

目录 前言 正文 操作背景 自发布 自部署 尾声 &#x1f52d; Hi,I’m Pleasure1234&#x1f331; I’m currently learning Vue.js,SpringBoot,Computer Security and so on.&#x1f46f; I’m studying in University of Nottingham Ningbo China&#x1f4eb; You can reach…

U盘坏了怎么把数据弄出来

在数字化时代&#xff0c;U盘作为一种便携式存储设备&#xff0c;为我们的数据保存和传输提供了很多便利。不过&#xff0c;我们在使用U盘过程中难免会遇到各种问题&#xff0c;比如常见的U盘损坏问题。U盘损坏会导致数据无法读取&#xff0c;给我们造成困扰。幸运的是&#xf…

Spring相关的面试题

1、spring中bean的生命周期 spring bean的生命周期主要分为三大类 &#xff0c;分别是创建-》使用-〉销毁。 在三大类下面又可以分为5个小类。分别是 实列化-〉初始化-》组册destruction回调-〉使用-〉销毁 这这其中 初始化也可以细分为 设置属性值&#xff0c;前置处理&#…

【学习笔记】无人机(UAV)在3GPP系统中的增强支持(七)-通过无人机实现无线接入的独立部署

引言 本文是3GPP TR 22.829 V17.1.0技术报告&#xff0c;专注于无人机&#xff08;UAV&#xff09;在3GPP系统中的增强支持。文章提出了多个无人机应用场景&#xff0c;分析了相应的能力要求&#xff0c;并建议了新的服务级别要求和关键性能指标&#xff08;KPIs&#xff09;。…

dhtmlx-gantt甘特图数据展示

官网文档&#xff1a;甘特图文档 实现效果&#xff1a; 首先需要下载 dhtmlx-gantt组件 npm i dhtmlx-gantt //我项目中使用的是"dhtmlx-gantt": "^8.0.6" 这个版本&#xff0c;不同的版本api或是文档中存在的方法稍有差异 界面引用 <template>&l…

什么是MOW,以bitget钱包为例

元描述&#xff1a;MOW凭借其富有创意的故事情节和广阔的潜力在Solana上脱颖而出。本文深入探讨了其独特的概念和光明的未来。 Mouse in a Cats World (MOW)是一个基于Solana区块链的创新meme项目&#xff0c;它重新构想了一个异想天开且赋予权力的故事。在这个奇幻的宇宙中&am…

Leetcode算法题(链表的中间节点+返回倒数第k个节点+合并两个有序链表)

题目1&#xff1a; 本题力扣链接&#xff1a;https://leetcode.cn/problems/middle-of-the-linked-list/solutions/164351/lian-biao-de-zhong-jian-jie-dian-by-leetcode-solut/ 思路1&#xff1a;单指针法 首先我们对链表进行遍历&#xff0c;记录链表的总长度N&#xff0c;…

微信小程序毕业设计-学习资料库系统项目开发实战(附源码+论文)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;微信小程序毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计…

使用APEXSQL LOG解析sql server事务日志,进行审计与数据恢复

一 下载 https://download.csdn.net/download/sunke861/11449739 二 使用 解压安装包后&#xff0c;点击&#xff1a;ApexSQLLog.exe 2.1 连接数据库 连接要审计的数据库&#xff1a; 假如报错&#xff1a; 则点击ok关闭该窗口&#xff0c;然后点击左上方的New按钮&#xf…

平替ChatGPT的多模态智能体来了

在人工智能领域&#xff0c;多模态技术的融合与应用已成为推动技术革新的关键。今天&#xff0c;我们用智匠AI实现了完全由国产模型驱动的多模态智能体——智酱v0.1.0&#xff0c;它不仅能够媲美ChatGPT的多模态能力&#xff0c;更在联网搜索、图片识别、画图及图表生成等方面展…