Skip to content

Roadmap 2025 #1

Description

@morningman

Apache Doris 2025 年 Roadmap

2025 年,Apache Doris 将围绕湖仓一体、半结构化数据分析,在查询执行、存储和安全、查询优化器等核心领域持续优化,进一步提升性能、稳定性和生态兼容性,满足更多复杂场景和大规模数据处理需求。同时,Doris 将加强云原生能力和安全性,并探索与 AI 结合的场景,包括向量检索,AI 训练数据管理等,以及利用 AI 能力辅助系统监控、运维等工作,为用户提供更加全面、高效和安全的现代化数据分析平台。

一、湖仓一体

1. 性能和稳定性

  • IO 优化
    • Parquet/ORC 复杂类型延迟物化:提升复杂数据类型的查询性能。
    • 优化 Scan 任务调度,优化小查询长尾问题。
    • 支持动态分区裁剪:优化分区表的查询效率。
    • 优化 Data Cache 小文件问题:解决小文件过多导致的性能问题。
  • 元数据 优化
    • 单查询内元数据缓存共享:提升查询性能,减少重复元数据加载。
    • 优化 Hive、Iceberg、Paimon 元数据访问性能:提升元数据访问和 Plan 性能。

2. 湖仓生态

  • Iceberg

    • 支持 Iceberg branch/tag 的访问与管理:提升 Iceberg 格式的灵活性。
    • 支持更多 Iceberg 系统表:增强 Iceberg 格式的兼容性。
    • 支持 Iceberg Update/Delete:增强对 Iceberg 表的写操作支持。
    • 支持 Iceberg 小文件合并和 Snapshot 管理:解决小文件问题并优化快照管理。
    • 支持 AWS S3Tables
    • 支持 Snowflake Iceberg 表引擎
    • 支持 Databricks Uniform DeltaLake 表引擎。
  • Paimon

    • 支持 Paimon 数据写回:实现对 Paimon 数据的写入支持。
    • 支持 Paimon 快照读:支持基于快照的历史数据查询。
    • 支持更多 Paimon 系统表:增强 Paimon 格式的兼容性。
  • Hive

    • 支持多 Kerberos 环境连接。
    • 支持多套 Hadoop 配置文件管理。
  • Doris

    • 支持 Doris Catalog:提供对多个 Doris 集群的联邦查询。
  • Delta Lake/Hudi

    • 优化和 Iceberg 的生态兼容。
  • Catalog

    • 支持 Unity Catalog。
    • 支持 Apache Paloris。
    • 支持 Apache Gravitino。

3. 代码重构

  • 优化和统一各数据源属性名称:提升数据源配置的一致性。
  • JDBC Catalog 插件化:增强 JDBC Catalog 的可扩展性。
  • 文件系统插件化:提升文件系统的可插拔性。

二、半结构化与日志分析

1. 倒排索引增强

  • 支持更多的分词器
    • 中文 ik 分词器
    • unicode icu 分词器
    • 适用于日志场景高性能 simple 分词器等
  • 支持分词器的词库自定义和管理
  • 存算分离模式支持索引增量构建
  • 倒排索引空间占用进一步优化
  • 索引可观测性增强,包括写入和查询的性能指标等

2. VARIANT 半结构化数据类型能力增强

  • VARIANT 存算分离支持1万个子列
  • VARIANT 稀疏列支持更多稀疏子列
  • VARIANT 支持 JSON array 嵌套 object 的复杂结构展开
  • VARIANT 支持指定子列类型
  • VARIANT 支持指定部分字段建索引

3. 日志和可观测性生态完善

  • [] 输出插件支持根据变量值写入多表

    • filebeat
    • logstash
  • 可观测性生态集成

    • Opentelemetry
    • Jeager
  • 支持更多的日志采集器插件

    • ilogtail
    • vector

三、查询引擎

1. 查询性能优化

  • 动态算法检测和调整数据倾斜:优化查询执行,提升大数据场景下的性能。
  • ARM 架构调优和优化:支持更多硬件架构,提升运行效率。
  • 自适应并发:根据系统负载和资源动态调整并行任务数量,提升查询队列和溢出场景的稳定性。
  • 更多函数兼容:
    • 增强与 ClickHouse 的函数兼容性。
    • 增强与 Presto 的函数兼容性。
    • 增强与 Spark 的函数兼容性。

2. 可观测性增强

  • 提供更加优异的可观测性:包括更好的运行时监控、更准确的查询分析、更完备的指标体系。

四、存储和安全

1. 云原生和存算分离

  • 优化对象冷读:提升冷数据的读取性能。
  • 更加易用的 Cache 策略:优化 Cache 策略的配置和使用。
  • 更加易用的读写分离:提升存算分离场景下的性能。
  • 支持更多云厂商的鉴权方式:提升云环境下的安全性。
    • IAM Role 鉴权

2. 安全性

  • 支持存储加密:提升数据存储的安全性。
  • 提升 HTTP 接口安全性,包括 HTTPS 支持以及接口鉴权。

3. ETL 增强

  • 支持临时表:增强 ETL 场景下的数据处理能力。
  • 支持多语句事务的写写冲突处理:提升事务操作的可靠性。

4. 容灾和高可用

  • 支持云原生备份恢复:增强数据的容灾能力。
  • 跨集群复制(CCR)
    • 功能完备:通过充分的混沌测试,确保生产环境的稳定性。
    • 支持存算分离:提升 CCR 在云原生架构下的适配能力。
    • 支持主备切换:增强高可用能力。

5. 实时数据流

  • 支持 Binlog 支持增量计算:支持实时数据流处理场景。

五、查询优化器

1. 异步物化视图

  • 数据湖表格式(Iceberg、Paimon、Hudi)分区增量构建:提升物化视图的构建效率。
  • 利用监控信息和系统表提升可观测性:增强运维能力。
  • 数据血缘信息接口:提供数据血缘追踪能力。
  • 逻辑视图与物化视图互相转化:提升视图管理的灵活性。
  • 自动物化视图:实现物化视图的智能化管理。

2. 功能增强

  • 递归 CTE:支持递归查询。
  • 过滤聚合 (FILTER Clause):提升 SQL 功能的标准兼容性。
  • Pivot 和 Unpivot:支持数据透视和反透视操作。
  • 更合理的隐式类型转换规则:优化类型转换逻辑。
  • 标准 SQL 兼容性提升:增强对标准 SQL 的支持。

3. 执行优化

  • 压缩物化:优化存储空间利用率。
  • 全局延迟物化:提升查询性能。

4. 计划质量增强

  • HBO 支持。
  • 增强常量传播、NULL 传播等优化规则。
  • 利用数据特征的优化规则增强。
  • 数据倾斜自适应优化。
  • 公共子计划提取。
  • 基于代价的 CTE 物化选择。
  • 基于代价的聚合阶段选择。
  • Runtime Filter 等待时间自适应。
  • 增强分布式计划的 Shuffle 算法选择。
  • 自适应并行度控制。

5. 计划管理

  • 执行计划固定:支持计划的可控性。
  • 执行计划演进:提升计划的灵活性和智能化。

6. 框架优化

  • 小查询场景规划性能优化:提升小查询的执行效率。
  • 旧优化器代码剔除:简化代码维护。

7. 运维增强

  • 统计信息状态收集监控与系统表:提升统计信息的可观测性。
  • 规划耗时监控与系统表:增强查询规划的诊断能力。
  • 丰富审计日志中的查询相关信息:提升审计能力。
  • 报错信息分类和内容优化:提升错误信息的可读性和诊断能力。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions