Doris简介:

Doris最初是由百度大数据研发部研发,之前在百度使用时叫做Palo,在贡献给Apache社区后更名为Doris。之前在百度内部超过100台机器部署Doris,服务的产品线超过200条。

Doris是一个现代化的MPP(大规模并行处理)架构的分析型数据库。拥有压秒级的查询响应,能够有效的支持实时数据分析。且易于运维,能够支撑10PB以上的超大的数据集。(MPP架构的数据库是将任务并行的分散到多个的节点上,进行协同计算,在每个节点将各自的计算任务处理完成之后,再将计算的结果进行汇总,输出最终的结果)

Doris可以满足多种的数据分析需求,例如固的历史报表、实时数据分析、交互式数据和探索式的数据分析。

Doris的主要特点:

  • MPP架构的分析型数据库
  • 毫秒级别的响应速度
  • 支持标准的SQL(兼容Mysql协议)
  • 丰富的聚合模型,以及聚合表技术
  • Rollup等预聚合技术
  • 运维简单,弹性伸缩
  • 高可用、高可靠
  • 丰富的周边生态工具
  • 向量化执行器

(具体可看官网:Doris官网)

Doris的主要架构:

Doris的主要架构分为FE(frontend)、BE(backend)两个角色、两个进程,不依赖于外部的组件,极易部署、运维,FE和BE都有很好的拓展性。

FE:存储和维护集群的元数据,负责接收和解析用户的查询请求,规划查询计化,调度查询结果。

FE主要分为三个角色:Leader、Follower、Observer

Leader和Follower主要是用来实现Doris集群的高可用,在Leader宕机之后,Follower节点能够迅速代替Leader的工作,能够实现实时恢复元数据,从而保证对Doris集群不造成任何影响。

Observer是用来拓展查询节点的,同时起到了元数据备份的作用,如果在感知到集群的查询有压力时,可以同通过添加Observer节点来达到提高集群查询的能力,注意:Observer只参与读取,不参与写入。

BE:负责数据的主要存储和计算,以及根据FE生成的物理执行计划,然后进行查询(分布式,多节点并行执行查询,统一汇总)。同时BE还会将数据存储为3副本或者多副本(可根据数据的权重以及集群的资源进行合理设置,可以动态调整)。

Broker:broker是一个无状态的进程。其中封装了文件系统的接口,能够为Doris提供访问外部数据源的能力(比如:HDFS、S3等)。通常在每一台节点上部署一个broker的示例即可。

MysqlClient:Doris是借助MysqlClient协议,所以MysqlClient可以直接访问Doris

Doris的编译部署:可参考官网:Doris部署

Doris常用端口:

Doris中FE、BE、Broker的扩容和缩容:

  • 使用Mysql客户端登录,查看FE的状态:mysql  -h ip   -P 9030  -uroot  -p xxxxx
  • SHOW PROC '/frontends'\G;  可查看FE状态
  • 将FE包的分发到准备添加为FE的
  • 首次启动需要在启动命令后加参数:--helper leader主机: edit_log_port(9010)--daemon

  • 通过 ALTER SYSTEM ADD FOLLOWER "host:9010"; 添加Follower

  • 通过 ALTER SYSTEM ADD OBSERVER"host:9010"; 添加Observer

  • 一个FE只能有一个Leader但是可以有多个Follower和Observer,其中Leader和Follower组成一个Paxos组,保证高可用,Leader宕机后Follower会进行选举,选举出新Leader,Observer不参与选举。

  • 添加完成之后通过 SHOW PROC '/frontends'\G;  可查看FE状态,查看Alive是否为true,为True证明添加成功

  • 删除FE的命令 ALTER SYSTEM DROP FOLLOWER[OBSERVER] "fe_host:edit_log_port";

  • SHOW PROC '/backends'\G;

  • BE、BROKER 和FE同理,使用 ALTER SYSTEM ADD BACKEND "host:9050";命令添加BE
  • 删除BE:ALTER SYSTEM DROP BACKEND "be_host:be_heartbeat_service_port";(不推荐!!!!,会直接删除BE节点,且数据不可恢复)
  • 推荐使用:ALTER SYSTEM DECOMMISSION BACKEND "be_host:be_heartbeat_service_port"; 删除BE时会将该节点的数据向其他BE节点处进行迁移

  • BROKER的添加和删除:

  • ALTER SYSTEM ADD BROKER broker_name "broker_host:broker_ipc_port";

  • ALTER SYSTEM DROP BROKER broker_name "broker_host:broker_ipc_port";

  • ALTER SYSTEM DROP ALL BROKER broker_name;

Doris进阶——初识Doris_FE、BE、BROKER的扩缩容相关推荐

  1. docker部署redis集群实现动态扩缩容

    目录 思考 分布式存储的解决方案 哈希取余分区 一致性哈希算法分区 哈希槽分区 采用哈希槽分区 部署三主三从(docker) 准备工作 创建3主3从redis实例 进入容器中,构建主从关系 主从容错切 ...

  2. 【kafka运维】分区副本重分配、数据迁移、副本扩缩容 (附教学视频)

    日常运维.问题排查=> 滴滴开源LogiKM一站式Kafka监控与管控平台 (后续的视频会在 公众号[首发].CSDN.B站等各平台同名号[石臻臻的杂货铺]上上传 ) 分区副本重分配+注意事项+ ...

  3. 拆解交易系统--性能优化,安全加固与弹性扩缩容

    点击上方蓝色字体,选择"设为星标" 优质文章,及时送达 前几篇文章我们拆解了交易系统架构层次的设计方案,对于代码细节我们讨论很很少,今天基于几个方面简短的介绍一下,未来有时间可以针 ...

  4. 从“人肉扩缩容”到云原生容量,90 后程序员的进化

    很难想象,1992年出生的郑洋飞已经是云原生性能容量团队Leader.2018年双十一稳定性总负责人,2020年双11的副队长.连续6年双十一,不仅是他带领团队的练兵场,更能从中看到蚂蚁集团技术演进的 ...

  5. Fluid 0.5 版本发布:开启数据集缓存在线弹性扩缩容之路

    作者 | 顾荣  南京大学PASALab, Fluid项目co-founder 来源 | 阿里巴巴云原生公众号 导读:为了解决大数据.AI 等数据密集型应用在云原生场景下,面临的异构数据源访问复杂.存 ...

  6. 阿里云在应用扩缩容下遇到的挑战与选型思考

    来源|阿里巴巴云原生公众号 作者 |炎寻 阿里云 EDAS 核心开发工程师Andy Shi 阿里云技术布道师 导读:在云原生技术栈逐渐普及之后,如何能够以效率更高.用户更容易接纳的方式落地 Kuber ...

  7. Serverless Kubernetes 应用部署及扩缩容

    作者 | 邓青琳(轻零) 阿里云技术专家 导读:本文分为三个部分,首先给大家演示 Serverless Kubernetes 集群的创建和业务应用的部署,其次介绍 Serverless Kuberne ...

  8. Knative 基本功能深入剖析:Knative Serving 自动扩缩容 Autoscaler

    Knative Serving 默认情况下,提供了开箱即用的快速.基于请求的自动扩缩容功能 - Knative Pod Autoscaler(KPA).下面带你体验如何在 Knative 中玩转 Au ...

  9. Fluid 0.6 版本发布:数据感知的Pod调度与数据集自动弹性扩缩容

    简介:Fluid 是 CNCF 基金会旗下云原生环境中数据密集型应用的高效支撑平台,由南京大学.阿里云云原生团队以及 Alluxio 开源社区联合发起.项目自开源发布以来吸引了众多相关方向领域专家和工 ...

最新文章

  1. 为什么我的python程序编译器没有行代号_为什么我的python字典没有附加新变量呢?...
  2. 触类旁通,经典面试题最长公共子序列应该这么答
  3. 【CodeVS】p1299 切水果
  4. 通过java反射机制获取该类的所有属性类型、值。
  5. 精简版开发工具使用手记(图解)
  6. 十个有用的linux命令行技巧
  7. 借用虚拟机在真机安装 ubuntu, 亦可安装至移动硬盘
  8. Spring Boot文档阅读笔记-使用Spring Data JPA连接多源数据库(MySQL和Oracle)
  9. 职场伦语-感悟职场,分享心得
  10. bzoj 3156: 防御准备
  11. 第十五节,基本数据类型,元组tuple
  12. 设置Image控件加载图片完毕后的效果.
  13. 详解display:inline | block |inline-block的区别(转)
  14. OEMAddressTable介绍(转)
  15. ICTCLAS 汉语词性标注
  16. perf_event 事件类型与分类
  17. 07,springcloudalibaba_sentinel(流量卫兵)
  18. Python对象赋值和拷贝
  19. QGraphicsItem图元的简单使用(一)
  20. 鸿蒙系统充电动画,荣耀智慧屏首发抢先体验:电视只是小功能,鸿蒙系统才是真亮点...

热门文章

  1. [AWT] 常用组件
  2. openEuler@树莓派
  3. 21世纪以来14起最大的数据泄露事件
  4. 调制 Modulation
  5. 微信+微支付+Q币+qq用户基数
  6. java与go对接AES-GCM加解密
  7. 集成支付宝支付出现{resultStatus=4000, result=, memo=系统繁忙,请稍后再试}
  8. 部署 Hyperledger Cello 文档
  9. Mutex与Semaphore 第二部分 互斥锁
  10. CSS基础(6)- 属性值的计算过程