Doris入门(概念理解)
Doris入门
简介
Apache Doris(原Palo)支持对海量大数据进行快速分析的MPP(Massively Parallel Processing 大规模并行处理)数据库。
定位
Doris 的定位是面向在线报表和分析的数据仓库系统,可以对标于商业的MPP 数据仓库系统,比如Greenplum、Vertica、Teradata 等。
整体架构
Doris 的整体架构分为两层。多个 FE 组成第一层,提供 FE 的横向扩展和高可用。多个 BE 组成第二层,负责数据存储于管理。
-
FE 节点分为 follower 和 observer 两类。各个 FE 之间,通过 bdbje()进行 leader 选举,数据同步等工作。 follower 节点通过选举,其中一个 follower 成为 leader 节点,负责元数据的写入操作。当 leader 节点宕机后,其他 follower 节点会重新选举出一个 leader,保证服务的高可用。 observer 节点仅从 leader 节点进行元数据同步,不参与选举。可以横向扩展以提供元数据的读服务的扩展性。
基本概念
FE:Frontend,即 Doris 的前端节点。主要负责接收和返回客户端请求、元数据以及集群管理、查询计划生成等工作。
BE:Backend,即 Doris 的后端节点。主要负责数据存储与管理、查询计划执行等工作。
dbje:。在 Doris 中,我们使用 bdbje 完成元数据操作日志的持久化、FE 高可用等功能。
优势
-
完全兼容MySQL协议; 采用列式存储、对数据以高压缩比进行压缩存储、向量化执行等先进技术,因此获得了极高的查询效率; 支持多种存储模型:同时支持类似于Mesa将列分为Key和Value的存储模型,同时支持Unique Key和Dup Key的存储模型。用户可以根据自己的业务场景,选用不同的存储模型; 支持两层分区; 支持多种数据导入方式; 安全资源隔离扩容缩容; 备份和恢复; 支持web监控和管理;
适用场景
-
高并发的点查询场景; 高吞吐的即席查询 BI报表分析 实时查询
应用
Doris 支持本地文件、实时数据和HDFS文件的导入,通过兼容MySQL协议,用户可以将原来通过各种主流BI工具和可视化平台业务切换到Doris,改为直接连接Doris集群。
