searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Apache Doris 1.2 版本新特性介绍

2023-04-27 09:47:42
132
0

本文介绍Doris版本演进规划和V1.2版本的新特性。
Apache Doris是一个现代化的MPP分析型数据库产品。仅需亚秒级响应时间即可获得查询结果,有效地支持实时数据分析。Apache Doris的分布式架构非常简洁,易于运维,并且可以支持10PB以上的超大数据集。
Apache Doris可以满足多种数据分析需求,例如固定历史报表,实时数据分析,交互式数据分析和探索式数据分析等。

 

Doris-1.1版本回顾:

 

特性

1.0版本

1.1版本

优化效果

1

性能优化

正式发布向量化引擎,查询性能提升,但不稳定

默认开启向量化引擎

查询性能提升:
1. SSB整体提升3倍;

2.TPCH整体提升4.5倍。

2

Compaction优化

高频数据导入场景会出现版本堆积(-235)错误:导入速度大于后端数据merge速度时会阻塞导入

1. 优化compaction选择版本的策略,避免一次处理选择大量版本而导致线程阻塞

2. 主动compaction,杜绝版本堆积错误

高QPS数据导入场景下,处理延时由200ms降低至50ms

3

LTS与发版周期

/

1.1版本未发布较多新功能,主要做bug修复和性能优化。

2位版本:(2-3个月)包括BUG修复和功能更新(如1.1->1.2)

3位版本:(2-3周)包括BUG修复和稳定优化(如1.2.1->1.2.2)

 

发版迭代计划:

        用户在进行版本升级时,需要满足旧版本bug修复需求,但对新功能的不确定性存在顾虑,所以doris探索LTS(Long-Term-Support)版本的维护,每2-3月更新大版本(2位版本),每2-3周更新小版本(3位版本),3位版本更新代码变化不大,可回滚,可通过3位版本更新修复紧急问题。

 

Doris-1.2版本新功能特性:

发布时间:2022年8月

 

特性

1.1版本

1.2版本

优化效果

1

冷热分离

采用本地盘/云磁盘实现数据存储:

3副本;

单位存储成本高,无弹性;

难以根据业务需求来计算存储成本;

云磁盘甚至达到9副本

1. 支持对象存储:纠删码;单位存储成本低;无限付费;按需付费

2. Rowset级别的冷热分离(Tablet下以不同Rowset存储冷数据和热数据)

3. 冷数据支持导入、查询、schema change

4. 创建存储策略,制定数据冷却的时间和位置,支持分区级别

5. 后续优化:当前对象存储副本数和本地副本数一致,后续会优化为单副本;通过缓存机制使得对象存储中的历史数据第一次查询时间可能较长,但进行第二次查询的性能等同于本地盘效果

 

1. 存储成本降低70%;

2. 场景:可以将历史数据冷存到对象存储上,牺牲查询性能以换取存储成本的降低。

2

New unique key

Unique 模型,数据按主键做更新,merge-on-read机制,计算和查询过程中进行大量归并、排序、比较等操作,无法了解非KEY列的谓词下推,性能较差

1. 基于主键索引,在做数据导入时在索引中查找并标记状态记录在delete bitmap中,数据读取时先通过delete bitmap过滤,减少读取时的归并排序

2. 高频导入场景,会产生多个版本数据,如果每个版本查找主键效率较低,通过添加索引可快速检索所需主键

3. merge-on-write,将归并等处理放在写入阶段,提升查询阶段的性能

1. 写入性能降低30%;

(append->append+lookup)

2. 查询性能提升10倍,接近明细模型的查询效率

3. 适合场景:对写入压力不大,查询性能要求高的场景

3

Light schema change

无法支持上游schema变更(如加减列),schema同步延迟在分钟级别,会造成数据堆积

1. 轻量级schema change

2. 只修改FE元数据

3. 毫秒级的加减列更新

4. 底层数据不动

5. tablet下放到rowset级别,对应标记schema,写入rowset时,如果schema变更,会使用新的schema写新的rowset,数据查询时保证每一个rowset的schema自解释

1. 支持同步元数据变更

2. 适合场景:上游数据通过CDC同步到下游,上游业务数据经常变更,schema变更情况的场景

4

New mem tracker

内存统计不完善,大查询会导致进程OOM,BE挂掉

1. 自动统计内存开销

2. 进程级内存限制,防止OOM

3. 查询级别内存限制

4. 查询内存超限时会自动取消查询

5. 算子级别内存统计,提升可观测性

通过内存限制,避免进程OOM,减少集群节点故障

 

5

Multi catalog

查询外表需手动创建外表table,使用不方便

1. 对应多数据源的catalog

2. 只需建立连接就可以自动同步外表

支持多种外部数据源的联邦查询
0条评论
0 / 1000
赵****媛
3文章数
0粉丝数
赵****媛
3 文章 | 0 粉丝