了解篇 | StarRocks 是个什么数据库?

今天简要介绍一下StarRocks 这个强大的数据库。

注意:本文章内容仅供个人学习,不包含任何推荐性质。

图片

StarRocks(原名 Doris)是一个高性能、全场景的MPP(大规模并行处理)分析型数据库。它专为极速的多维联机分析处理(OLAP) 而设计,能够对海量数据进行实时和批量的多维分析、即席查询和高并发报表。

官方网站获取文档和下载:https://www.starrocks.io

一、 特性与优势

1. 性能

  • 列式存储引擎:数据按列存储,在查询时只需读取相关列,极大减少了I/O消耗。

  • 向量化执行引擎:利用CPU的SIMD指令,一次处理一批数据(一个向量),而不是一行数据,显著提高了CPU利用率和查询效率。

  • MPP架构: 查询任务被并行分发到集群中的所有节点,各节点独立处理自己负责的数据,最后汇总结果,实现了线性扩展。

  • CBO(基于成本的优化器): 拥有非常智能的优化器,能够为复杂查询选择最优的执行计划。

2. 实时分析

支持实时数据导入,数据写入后立即可查。它支持从多种数据源(如Kafka、Flink、Spark等)通过物化视图(Materialized View) 和 Bitmap 索引 等技术进行预聚合和加速,使得即使在大数据量下,聚合查询也能在亚秒级返回。

3. 高并发

架构设计上避免了外部系统依赖(如ZooKeeper),并进行了大量优化,能够支持数千甚至上万的高并发查询,非常适合作为企业统一的分析门户或数据中台的查询引擎。

4.全面兼容 MySQL 协议

支持标准SQL-92,并且兼容MySQL网络协议。这意味着你可以使用任何常见的MySQL客户端、BI工具(如Tableau、Superset、FineBI)或应用程序直接连接StarRocks,学习成本和迁移成本极低。

5. 物化视图

用户可以在基表上创建多个物化视图。StarRocks的优化器能够自动、智能地选择最优的物化视图来响应查询,无需在查询语句中显式指定,对应用透明,极大地加速了聚合查询。

6. 易于运维

提供简洁的前端(FE)和后台(BE)架构,部署和运维相对简单。

支持在线弹性扩缩容,可通过简单的SQL命令添加或删除节点,集群会自动进行数据重分布。

二、 技术架构

StarRocks 采用了一个非常简洁的架构,主要由两个角色组成:

1. Frontend (FE)

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

组件:

nLeader FE: 主节点,负责元数据的写入和日志。

nFollower FE: 从节点,参与选举,提供元数据读取服务。

nObserver FE: 观察者节点,仅扩展元数据的读取能力,不参与选举。

通常通过BDB JE进行Leader和Follower之间的元数据同步。

2. Backend (BE)

职责:负责数据存储和查询执行。每个BE节点存储一部分数据(Tablet),并执行FE下发的查询任务。

数据分片:表的数据被水平分区为多个Tablet,每个Tablet有多个副本(通常为3),分布在不同BE上,保证了高可用和高性能。

三、适用场景:

  • 实时数据看板与BI报表: 为业务人员提供高并发的自助分析平台。

  • 用户行为分析:支持对海量用户数据进行多维度、即席的探查与分析。

  • 日志分析:替代ELK等方案,进行结构化的日志存储与查询。

  • 统一查询入口(数据网关):通过External Table功能,可以直接查询Hive、Iceberg、Hudi、Elasticsearch等外部数据源,无需数据导入,实现“湖仓一体”分析。

  • 高并发精准查询:例如电商的订单查询、用户画像的标签查询等。

四、与其他OLAP数据库的对比

特性

StarRocks

ClickHouse

Apache Druid

Snowflake

架构

MPP

无共享(Share-Nothing)

分布式、列式

云原生、存储计算分离

并发能力

极高

一般(单表)

极高

实时摄入

支持

支持

非常擅长

支持(Streaming)

查询延迟

亚秒到秒级

亚秒级(简单查询)

秒级

秒级

SQL兼容性

高(兼容MySQL)

中等(方言)

中等(方言)

极高(标准SQL)

易用性

简单

较复杂

复杂

极简(全托管)

运维成本

无(SaaS)

成本

开源/低成本

开源/低成本

开源/低成本

商业/按量付费

文章小结

StarRocks 是一个在性能、并发、实时性和易用性之间取得出色平衡的MPP数据库,其极简架构、向量化引擎和智能物化视图,成为了大数据实时分析领域的一个OLAP解决方案。;适合需要高并发、低延迟查询的企业级分析场景,支持自建数据中心和云上部署。

文章至此。

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

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

相关文章

SSL部署完成,https显示连接不安全如何处理?

在部署 SSL 后,如果浏览器仍然显示 “连接不安全” 或 “Not Secure”,通常是由以下几种原因导致的。针对每种可能的原因和问题,以下提供了详细的排查和解决方案。 1. 排查问题的可能原因 1.1 SSL 证书未正确安装 如果 SSL 证书安装不完整或…

LeetCode热题100--105. 从前序与中序遍历序列构造二叉树--中等

1. 题目 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,15,20,7] 输出: [3,9,20,null,n…

【WitSystem】详解JWT在系统登录过程中前端做了什么事,后端又做了什么事?

要理解 JWT(JSON Web Token)登录流程中前端与后端的职责分工,需先明确 JWT 的核心定位:它是一种无状态的身份认证令牌,用于替代传统 Session 认证,解决跨服务、跨域登录的问题。其流程本质是“后端生成令牌…

MongoDB 在线安装-一键安装脚本(CentOS 7.9)

1. 脚本概述本脚本用于在 CentOS 7.9 系统上在线安装 MongoDB,自动处理端口占用和重复安装问题,并创建管理员用户 test8,密码 test123。2. 功能停止并关闭防火墙检查 27017 端口占用并结束进程如果已安装 MongoDB,卸载重装配置 Mo…

树形数据结构之树状基础-算法赛

今天给分享的是一道算法决赛的题目,这道题目的综合要求比较高,希望大家可以好好理解,同时这道题用到的是树状树形结构的有关知识。可以用这几天学的相关内容结合起来。问题描述给定两个长度为 N的排列 A 和 B。若一对二元组下标 (i,j) 满足以…

Jenkins 构建清理策略:自带功能 vs Discard Old Build 插件,全场景实操指南

前言:在 Jenkins 持续集成过程中,构建记录、工作空间、产物包会不断积累,既占用磁盘空间,也会让构建历史变得臃肿。Jenkins 自带的“丢弃旧的构建”功能和 Discard Old Build 插件,是两种常见的构建清理方案。本文将详…

Leetcode | Hot100

文章目录两数之和字母异位词分组最长连续序列移动零盛水最多的容器三数之和接雨水无重复字符的最长子串找到字符串中所有字母异位词和为 K 的子数组滑动窗口最大值最小覆盖子串最大子数组和合并区间轮转数组除自身以外数组的乘积缺失的第一个正数矩阵置零螺旋矩阵旋转图像搜索二…

【论文阅读】Uncertainty Modeling for Out-of-Distribution Generalization (ICLR 2022)

论文题目:Uncertainty Modeling for Out-of-Distribution Generalization 论文来源:ICLR 2022 论文作者: 论文链接:https://arxiv.org/pdf/2202.03958 论文源码:https://github.com/lixiaotong97/DSU ​ 一、摘要…

分布式系统单点登录(SSO)状态管理深度解析:从Cookie+Session到JWT的演进之路

分布式系统单点登录(SSO)状态管理深度解析:从CookieSession到JWT的演进之路作者:默语佬 | CSDN博主 在分布式微服务架构盛行的今天,单点登录已成为企业级应用的标准配置。本文将深入探讨SSO状态管理的技术演进,从传统的CookieSess…

从 WPF 到 Avalonia 的迁移系列实战篇7:EventTrigger 的迁移

从 WPF 到 Avalonia 的迁移系列实战篇7:EventTrigger 的迁移 在 WPF 中,EventTrigger 是非常常用的功能,它可以让我们直接在 XAML 中绑定事件与动画或动作,实现 UI 的交互效果。例如按钮点击时旋转、鼠标悬停时变色等。 然而&…

深圳比斯特|电池组PACK自动化生产线厂家概述

电池组PACK自动化生产线是指用于生产电池模组的一套自动化系统。这类生产线主要用于生产各类电池组,如锂离子电池组,应用于电动汽车、储能系统等领域。自动化生产线通过机械设备和计算机控制系统,实现电池组生产过程的自动化和高效率。整条生…

基于librdkafa C++客户端生产者发送数据失败问题处理#2

https://blog.csdn.net/qq_42896627/article/details/149025452?fromshareblogdetail&sharetypeblogdetail&sharerId149025452&sharereferPC&sharesourceqq_42896627&sharefromfrom_link 上次我们介绍了认证失败的问题。这次介绍另一个问题生产者发送失败…

pg卡死处理

[postgresapm ~]$ ps -ef|grep postgres:|grep -v grep|awk {print $2}|xargs kill -9 锁: 1 查找锁表的pid select pid from pg_locks l join pg_class t on l.relation t.oid where t.relkind r and t.relname lockedtable; 2 查找锁表的语句 select pid, …

Spring Boot 与 Elasticsearch 集成踩坑指南:索引映射、批量写入与查询性能

前言Elasticsearch 作为分布式搜索和分析引擎,凭借其高性能、可扩展性和丰富的查询能力,被广泛应用于日志分析、全文检索、电商搜索推荐等场景。 在 Spring Boot 项目中集成 Elasticsearch 已成为很多开发者的日常需求,但真正落地时往往会踩到…

windows 10打开虚拟机平台时,出现错误“找不到引用的汇编”解决办法

通过dism.exe开启虚拟机平台时,出现了以下错误:找不到引用的汇编,如下图所示 通过以下命令进行修复均无效: dism /online /cleanup-image /scanhealth sfc /scannow 最后通过加载windows系统的安装光盘iso, 双击setup.exe以【保…

设计模式(C++)详解——建造者模式(1)

<摘要> 建造者模式是一种创建型设计模式&#xff0c;通过将复杂对象的构建过程分解为多个步骤&#xff0c;使相同的构建过程能够创建不同的表示形式。本文从背景起源、核心概念、设计意图等角度深入解析该模式&#xff0c;结合电脑组装、文档生成等实际案例展示其实现方式…

移动端触摸事件与鼠标事件的触发机制详解

移动端触摸事件与鼠标事件的触发机制详解 在移动端开发中&#xff0c;我们经常会遇到一个现象&#xff1a;一次简单的触摸操作&#xff0c;不仅会触发touch系列事件&#xff0c;还会触发一系列mouse事件&#xff0c;最终甚至会触发click事件。这其实是浏览器为了兼容传统桌面端…

如何科学评估CMS系统性能优化效果?

为什么要评估性能优化效果&#xff1f; 在投入时间精力优化CMS系统后&#xff0c;很多开发者只凭"感觉"判断网站变快了&#xff0c;但这种主观判断往往不可靠。科学评估性能优化效果可以帮助我们&#xff1a; 量化优化成果&#xff1a;用数据证明优化的价值发现潜在问…

中控平台数据监控大屏

中控平台数据监控大屏前言&#xff1a;什么是数据大屏&#xff1f; 数据大屏就像是一个"数字仪表盘"&#xff0c;把复杂的数据用图表、动画等方式直观展示出来。想象一下汽车的仪表盘&#xff0c;能让你一眼看到速度、油量、转速等信息——数据大屏也是这个原理&…

【Vue2手录13】路由Vue Router

一、Vue Router 基础概念与核心原理 1.1 路由本质与核心要素 本质定义&#xff1a;路由是URL路径与页面组件的对应关系&#xff0c;通过路径变化控制视图切换&#xff0c;实现单页应用&#xff08;SPA&#xff09;的无刷新页面切换。核心三要素&#xff1a; router-link&#x…