1、Doris简介
百度研发的,贡献给apache,apache Doris是一个现代化的基于MPP(大规模并行处理)技术的分析型数据库产品
2、Doris特性
列式存储,基于MPP(大规模并行处理)架构的分析型数据库,性能卓越,PB毫秒级响应 高性能,高可用,高可靠,极简运维,弹性伸缩
3、OLTP、OLAP概念
OLTP:联机事务处理 主要目标是做数据处理,它是针对具体业务在数据库联机的日常操作,通常对少数记录进行查询,修改 传统的关系型数据库系统(RDBMS)作为数据管理的主要手段 OLAP:联机分析处理 主要目标是做数据分析(多维分析) 数据仓库是OLAP系统的一个典型示例
4、OLAP引擎分类
OLAP按存储器的数据存储格式分为MOLAP,ROLAP,HOLAP (1)MOLAP:基于多维数组的存储模型,也是OLAP最初的形态,特点是对象数据进行预计算,以空间换效率,明细和聚合数据保存在cube中, 但生成cube需要大量时间和空间(eg:Kylin、Druid产品) (2)ROLAP:完全基于关系模型进行存储数据,不需要预计算,按需即时查询,明细和汇总数据都保存在关系型数据库事实表中 (3)HOLAP:混合模型,明细数据以ROLAP存放,聚合数据以MOLAP存放,这种方式相对灵活且更加高效
5、Doris架构
整体架构:Doris=Coogle Mesa + Apache Impala + ORC列式从存储 Doris主要整合了Google Mesa(数据模型),Apache Impala(MPP Query Engine)和Apache ORCfile(列式格式,编码和压缩)的技术
FE:Doris的前端节点,以java语言为主,主要负责接受和返回客户端请求,元数据以及集群管理,查询计划生成等工作 BE:Doris的后端节点,以C++语言为主,主要负责数据存储与管理、查询计划执行等工作
6、Doris集群部署安装
(1)Doris编译(编译方式两种) 适用Docker开发镜像编译 直接编译(CentOS/Ubuntu)
(2)Doris编译–数据导出 编译完成之后,可以将编译后的文件从docker导出到本地目录 (3)软硬件要求 1)FE的磁盘空间主要用于存储元数据,包括日志和image,通常几百MB到几个GB不等 2)BE的磁盘空间主要用于存放用户数据,总磁盘空间按用户总数据量*3(副本)计算 3)一台机器上可以部署多个BE实例,但是只能部署一个FE 4)FE节点数据至少为1(1个follower)。当部署1个follower和1个Observer时,可以实现读高可用。当部署3个follower时可以实现读写高可用(HA) 5)follower的数量必须时奇数,observer数量随意(建议1个follower,1-3个observer) 6)Broker是用于访问外部数据源(默认HDFS)的进程,通常每台机器部署一个broker实例即可 (4)配置FE、BE
|