大数据基础:Doris重点架构原理

打印 上一主题 下一主题

主题 681|帖子 681|积分 2043


文章目次
Doris重点架构原理
一、Apache Doris先容
二、Apache Doris使用场景
三、Apache Doris架构原理
四、Apache Doris 特点


Doris重点架构原理

一、Apache Doris先容

基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知,仅需亚秒级响应时间即可返回海量数据下的查询结果,不仅可以 支持高并发的点查询场景,也能支持高吞吐的复杂分析场景

二、Apache Doris使用场景



  • 报表分析
  • 即席查询(Ad-hoc Query)
  • 统一数仓构建
  • 数据湖联邦查询

三、Apache Doris架构原理


Doris 架构非常简单,只有两类进程FE和BE,这两类进程都是可以横向扩展的,单集群可以支持到数百台呆板,数十 PB 的存储容量。而且这两类进程通过同等性协议来包管服务的高可用和数据的高可靠。这种高度集成的架构筹划极大的低落了一款分布式系统的运维成本。


  • Frontend(FE) : 主要负责用户请求的接入、查询解析规划、元数据的存储、节点管理相干工作。
FE又分为 Leader、Follwer和Observer三种脚色 ,默认一个Doris集群中只能有一个Leader,可以有多个Follwer和Observer。其中Leader和Follwer构成一个Paxos选择组,如果Leader宕机,则剩下的Follower会自动选出新的Leader,包管单节点宕机环境下元数据的高可用及数据写入高可用。
Observer用来扩展查询节点、同步Leader元数据举行备份,如果Doris集群压力非常大,可以扩展Observer节点来进步集群查询能力,Observer不加入选举、数据写入,只加入数据读取。


  • Backend(BE) :一个用户请求通过FE解析、规划后,详细的执行筹划会发送给BE详细执行,BE主要负责数据存储、查询筹划的执行。
BE分布式的存储Doris table表数据,table表数据会经过分区分桶形成tablet,tablet采用列式存储,默认有3个副本。BE会吸收FE命令来创建、查询、删除table表,吸收来自FE的执行筹划并分布式执行。BE会通过索引和谓词下推快速过滤数据,可以在后台执行Compact任务,减少查询时的读放大。


  • Broker(可选):
Apache Doris架构中除了有BE和FE进程之外,还可以摆设Broker可选进程,主要用于支持Doris读写远端存储上的文件和目次。例如:Apache HDFS 、阿里云OSS、亚马逊S3等。
Broker 通过提供一个 RPC 服务端口来提供服务,是一个无状态的 Java 进程,负责为远端存储的读写操作封装一些类 POSIX 的文件操作,如 open,pread,pwrite 等等。除此之外,Broker 不记录任何其他信息,所以包括远端存储的连接信息、文件信息、权限信息等等,都必要通过参数在 RPC 调用中传递给 Broker 进程,才能使得 Broker 能够精确读写文件。Broker 仅作为一个数据通路,并不加入任何盘算,因此仅需占用较少的内存。通常一个 Doris 系统中会摆设一个或多个 Broker 进程。

四、Apache Doris 特点



  • 支持标准SQL接口
  • 列式存储引擎
  • 支持丰富的索引结构
  • 支持多种存储模型
  • 支持物化视图
  • MPP架构筹划
  • 支持向量化查询引擎
  • 动态调整执行筹划
  • 采用CBO和RBO 查询优化器



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

圆咕噜咕噜

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表