随着 Doris 越来越广泛的被在各个公司落地使用,Doris 开发团队也在不断地收集社区用户的需求和问题反馈。
为了更好地帮助用户了解 Doris 的发展方向和开发计划,百度 Doris 团队梳理了 2021 年正在进行和将要开展的工作计划。
1. 向量化执行引擎
Doris 一直以易用性和功能性著称、并且在高并发点查询、多表 Join 等复杂多维分析场景有良好的性能表现。
但是在单纯的算子性能方面依然有非常大的优化空间。今年我们会将查询层所有执行算子实现向量化,该工作预计将Doris的整体性能提升5倍左右。
2. 稳定性改进
随着Doris用户的增长,一些稳定性方面的共性问题也开始凸显。这些问题主要集中在内存OOM、查询耗时不稳定,以及一些新功能合入后引发的系统稳定性问题。Doris今年也会重点提升Doris的稳定性,包括更合理的内存管理、更精细的线程调度等。
同时我们将尝试引入更加规范的单元测试和回归测试框架以进一步提升代码质量。
3. 查询优化器的改进
Doris 现有的查询优化器源自早期版本的 Impala 查询优化器。但随着多年的不断迭代、修复和功能升级,目前的优化器已经和Impala社区有很大的不同,并且因为一些历史原因导致当前的优化器框架在扩展性和维护性方面都存在问题。所以在现有框架上增加更高级的优化器功能时往往会引发更多的问题。
因此,我们计划引入一套新的查询优化器框架来改善这个问题。新的优化器可能会和现有优化器在很长一段时间内同时存在,以期通过社区用户的反馈和迭代来不断完善。
4. 复合类型的支持
部分业务会有包括Array、Map、Struct等复合类型的需求。比如在用户画像和用户行为分析中经常使用的 Array 类型。Doris 社区目前已经完成了部分复合类型的工作,今年我们将会继续推进这方面的研发。
5. 大数据生态建设
随着ES、Flink、Pulsar、数据湖等新一代的大数据组件的流行,Doris 也在不断的和这些系统进行整合。目前社区已经完成了部分 Flink 相关的工作。
我们也在推进和其他系统的整合。这个工作能够帮助Doris更好的和企业现有的数据基础组件进行打通,进一步降低Doris的接入成本。
6. 多租户和存储计算分离
多租户从两个角度出发,一方面是企业对于多业务线权限管理的需求,另一方面是对不同租户资源隔离的需求。目前很多企业在使用 Doris 时都不得不分别建立一套离线集群和一套在线集群,以隔离不同的业务场景防止资源上的相互抢占,这样也极大的增加了数据维护成本。
我们将会在今年尝试通过两种途径来解决这个问题,一个是通过资源标签的方式将Doris集群进行节点级的划分,并限制不同的用户只能使用指定资源标签下的节点,从而达到在一个集群内物理隔离的效果。
第二个途径是存储计算分离,采用存储资源共享,计算资源独立的方式来满足业务需求。
7. 可观测性
系统的可观测性直接影响到运维人员对系统的把控程度。如一些用户反馈的慢查询无法定位、节点运行状态不透明、系统瓶颈无法排查等问题。我们将尝试引入如 OpenTelemetry 等标准化的 tracing 框架来改善这个问题,希望能够帮助运维人员更快的定位系统问题。
Join US
以上研发方向都已处于正在进行或即将展开中。我们诚邀社区的小伙伴一同参与讨论开发,共同打造一款完美的分析型数据库系统。
如果你对以上任何方向感兴趣,希望一同开发,或者有其他的建议或意见,可以通过以下渠道参与:
1. 订阅并发送邮件至dev@doris.apache.org
以 Apache Way 的方式参与社区,订阅方式见官网:
http://doris.incubator.apache.org/master/zh-CN/community/subscribe-mail-list.html#_1-发送订阅邮件
邮件列表是 Apache 社区最常用的沟通方式。我们会积极回复邮件列表中的问题。
2. 在Doris论坛发帖留言
在百度开发者社区Doris论坛发帖留言讨论:
https://ai.baidu.com/forum/topic/list/209
我们也会不定期的将一些用户常见问题在论坛中进行汇总和答复,方便用户查找。
3. 微信公众号后台留言
直接在 ApacheDoris 微信公众号后台留言,您可以留下您的联系方式,我们将与您取得联系。
4. 加入Baidu Doris 团队
Baidu Doris 团队主要负责Doris内核研发、商业化支持、云端服务和私有化部署。同时也负责维护Doris开源社区,欢迎有大数据系统内核研发经验的同学加入我们。您可以通过公众号后台留言或者发送简历至 talent-doris.baidu.com,我们虚位以待。
欢迎扫码关注:
Apache Doris(incubating)官方公众号
相关链接:
Apache Doris官方网站:
http://doris.incubator.apache.org
Apache Doris Github:
https://github.com/apache/incubator-doris
Apache Doris 开发者邮件组:
dev@doris.apache.org
百度 Doris 官方网站:
http://doris.baidu.com/
百度 Doris Github:
https://github.com/baidu-doris/incubator-doris
哎……大数据这边开发门槛略高,不是本地搭个环境就能拉起来的