数据库&大数据半年度迭代盘点:AI、多模、存算分离多点突破(中
大数据生态圈
Elasticsearch发布两个重要版本
Elasticsearch在2025上半年主要发布了两个重大版本,8.18.x与9.0.x,带来了诸多新的功能特性,如ES|QL支持索引联合查询LOOKUP JOIN;在性能上有大幅度提升,如Lucene 9升级到Lucene 10,BBQ(Better Binary Quantization)向量搜索技术。另外,针对7.17.x、8.16.x、8.17.x发布了多个修复版本,便于用户升级更新。
Elasticsearch 8.18.x应该是ES 8系列最后一个版本,之后ES 8 不会有新的大版本发布,后续会持续发布多个修复版本,为迁移升级到ES 9做适配。
Elasticsearch 7.17.x发布了一些修复版本,修复已知问题,为迁移升级ES 8做适配。
Elasticsearch 2025 上半年版本发布情况
1、LOOKUP JOIN多索引联合查询
- LOOKUP JOIN在ES 8.18正式发布,在历史版本中,想在ES上实现宽表查询,需要在三方平台完成宽表拼接或者借助ES Ingest Enrich完成,这些方式都有一定的局限性,特别是查询数据实时性问题。
- LOOKUP支持宽表查询,但是必须使用ES|QL查询语法,其它查询语法无法完成,ES|QL是新的查询引擎,性能上相较于过去有大幅度提升。
- LOOKUP虽然支持多个索引联合查询,带来了诸多便利性,但跨多数据表联合查询依然会有性能瓶颈,在强调查询为主的场景下,宽表依然是最佳的解决方案。
2、Better Binary Quantization二进制量化
- Better Binary Quantization(BBQ)是一种高效的向量压缩与搜索技术,首次出现在8.16预览版本中,在ES 8.18正式发布。
- BBQ核心原理是通过binary二进制来替代float32量化存储,相比原有float32节约了95%的存储量,是一种极致的量化压缩技术手段。
- BBQ在存储时量化速度同比快10倍以上,查询速度同比快2倍以上,非常适合大规模AI向量应用场景。
3、Semantic text语义文本字段类型
新增semantic_text语义文本字段类型,通过指定推理模型,直接将文本转换为向量类型,相比原有的dense_vector稠密向量与sparse_vector稀疏向量,在操作性上带来了一些便利,如向量转换、向量查询场景。
# 配置语义字段类型,指定推理模型
{
"mappings": {
"properties": {
"inference_field": {
"type": "semantic_text",
"inference_id": "my-elser-endpoint-for-ingest",
"search_inference_id": "my-elser-endpoint-for-search"
}
}
}
}
4、Rank Vectors多组向量字段类型
- 新增rank_vectors多组向量字段类型,容许给文档存储多组向量,而不是单个dense_vector稠密向量值,这些向量在检索阶段用于第二轮重排序,采用max-sim相似度函数完成,ES目前内置maxSimDotProduct脚本函数。
- rank_vectors适合第一次用HNSW或BBQ做粗排,再用多向量maxSim做精排的场景。
# 单一字段配置多组稠密向量
{
"dbaplus_vector" : [[0.5, 10, 6], [-0.5, 10, 10]]
}
5、Lucene 10
- Elasticsearch内核全面升级到Lucene 10。
- 并行化索引分段(segments)文件搜索。
- 并行化I/O预读取机制,通过预读取阶段,避免搜索主线程阻塞,导致查询收到I/O研制。
- 稀疏索引模式(sparse idexing),基于索引排序规则,可以节约大量的数据存储、减少CPU查询消耗。
6、JDK 24
- Elasticsearch运行环境全面升级到jdk 24,以获得更好的性能。
- jdk 24拥有诸多新功能特性,都是Elasticsearch需要使用的,如:结构化并发与虚拟线程,ES可以更好地控制任务并发;更强的native支持,可以更直接地获得原生操作系统与硬件的性能。
7、Elasticsearch MCP Server
Elasticsearch发布了官方的标准MCP Server,提供了比较简单的tools,基于NodeJS运行,非常便利AI场景使用,如果期望更多的使用MCP,可以基于此分支开发晚上更多特定的场景。
8、docs文档风格变化
Elasticsearch官方文档风格变化巨大,ES 9基于整体解决方案的思路,设计文档查看方式,相比ES 8更注重应用场景的解决方案能力,对于新手来说,是一个不小的挑战。
Apache Flink发布2.0.0版本
2025年3月24日,Apache Flink 2.0.0发布,引入了多项重要功能,具体如下:
1、分离式状态管理
Flink 2.0引入了分离式状态管理,提供了从运行时到SQL算子层的端到端体验,显著提升了性能和云原生支持。
- 异步执行模型:
- 无序数据处理:解耦状态访问和计算,实现并行执行。
- 异步状态API:支持非阻塞性状态操作,减少延迟并提高资源利用率。
- 语义保持:确保核心语义(如水位传播、定时器处理)不变,用户无需担心行为变化。
- 更强大的SQL算子:
- 重新实现了七个关键SQL算子(如Join和Aggregates),支持异步状态访问,提升吞吐量。
- 用户可通过table.exec.async-state.enabled参数启用该功能。
- ForSt分离式状态后端:
- 专为云原生设计,解耦状态存储与计算,支持并行I/O操作,降低延迟。
- 集成DFS,确保数据持久化和容灾能力,优化读写性能。
性能评估:
- 在Nexmark基准测试中,重I/O的有状态查询吞吐量提升显著(75%-120%)。
- 状态较小的查询性能平均下降不超过10%,展现了分离式架构的高效性。
2、流批统一
Flink 2.0在流批统一处理方面取得重要进展,提升了生产级可操作性和性能。
- 物化表:
- 支持表结构和查询语句的更新,无需重新处理历史数据。
- 原生支持YARN和Kubernetes集群,便于生产环境集成。
- 与Paimon集成,实现流批计算与高性能ACID事务的结合。
- 自适应批处理执行:
- 自适应Broadcast Join:动态切换Join策略,提升执行效率。
- 自动优化数据倾斜:动态拆分倾斜数据分区,缓解长尾延迟。
- 性能提升:
- 在10TB TPC-DS基准测试中,性能提升8%-16%。
3、流式湖仓
Flink与Paimon的深度集成,提升了流式湖仓的实时处理能力。
- Paimon数据源增强:
- 支持嵌套投影下推,减少I/O开销。
- Lookup Join性能提升,减少数据检索量。
- Paimon维护操作:
- 通过Flink SQL的CALL语句轻松执行维护操作,支持命名参数。
4、人工智能支持
Flink 2.0加强了与人工智能的集成,支持实时数据处理与AI模型结合。
- Flink CDC 3.3:
- 引入动态调用AI模型的能力,支持OpenAI模型。
- 实现RAG技术在实时场景中的应用。
- Flink SQL增强:
- 支持定义和调用AI模型,无缝集成复杂数据处理逻辑。
5、API改进
- DataStream V2 API:
- 提供基础构建块和高级扩展,如窗口和Join。
- 当前处于实验阶段,建议在生产环境中谨慎使用。
- SQL Gateway:
- 支持Application模式执行SQL作业,取代Per-Job模式。
- SQL语法增强:
- 支持C风格转义字符串。
- 新增QUALIFY子句,简化窗口函数过滤。
6、非兼容性变更
Flink 2.0移除了多个旧API和功能,包括:
- 移除的API:
- DataSet API、Scala DataStream和DataSet API。
- SourceFunction、SinkFunction、Source和Sink V1。
- TableSource和TableSink。
- 配置调整:
- 移除旧版配置文件flink-conf.yaml,采用新格式config.yaml。
- Java最低版本提升至Java 11,不再支持Java 8。
- 其他变更:
- 状态兼容性不再保证,需重新设计状态管理。
- 移除Per-Job部署模式,推荐使用Application模式。
7、其他优化
- 序列化改进:
- 引入更高效的集合类型序列化器。
- Kryo升级至5.6版本,提升性能和兼容性。
- 连接器适配计划:
- Kafka、Paimon、JDBC和ElasticSearch连接器将率先适配新API。
ClickHouse发布六个新版本
2025上半年,ClickHouse主要发布了24.12、25.1、25.2、25.3、25.4、25.5六个新版本,其中25.3是LTS版本,值得关注的更新具体如下:
1、JSON动态列作为表主键:在24.12 中,ClickHouse将每个唯一JSON路径的值以真正的列式存储方式进行存储,这种方式不仅提供了出色的数据压缩,还能保持与传统数据类型相同的查询性能。
2、Join的持续优化和改进:从24.12到25.5,ClickHouse通过指定并行Hash作为默认算法,自动重新排序,Join表达式优化,支持非等值JOIN等一些列功能演进,得到了TPCH结果的巨大优化。
3、ANN Vector Search in Beta:ClickHouse 25.5中的向量相似度索引功能现已从实验阶段升级为Beta阶段,并新增了对混合搜索中前置过滤和后置过滤策略的支持。
4、数据湖的集成:在24.12中,ClickHouse引入了对查询Apache Iceberg REST目录的支持。同时支持的还有Unity和Polaris目录,在之后的几个版本中又新增了对Delta RUST的内核集成以及支持AWS Glue and Unity。在25.4中,ClickHouse开始支持用户在外部托管的、持续更新数据集上运行无限数量的阅读器,这非常适合数据共享和发布,另外,ClickHouse也可以在Iceberg的历史快照中执行查询。
5、其他优化:
- 提升查询性能:查询条件缓存(25.3),延迟物化(25.4),外部数据的自动化并行处理 (25.3)等。
- 便捷使用:增加了Minmax Indice(25.1),表级别的默认压缩编码器(25.4)等。
- 企业化功能:支持备份数据库引擎(25.2)。
Apache Doris发布最新稳定版本2.1.10
2025上半年,Apache Doris发布了最新稳定版本2.1.10,该版本持续在查询执行引擎、湖仓一体等方面进行改进提升与问题修复,其中值得关注的新功能有:
1、查询执行引擎:支持了更多的GEO类型的计算函数ST_CONTAINS,ST_INTERSECTS,ST_TOUCHES,GeometryFromText,ST_Intersects,ST_Disjoint,ST_Touches;支持years_of_week函数。
2、湖仓一体:Hive Catalog支持Catalog级别的分区缓存开关控制;Paimon、Iceberg版本依赖升级至最新。
SelectDB 2025上半年重要发布汇总
2025上半年,SelectDB发布了SelectDB Enterprise Core 2.1.8-2.1.10、3.0.5、SelectDB Enterprise Manager 24.1.4-24.1.5、24.2.0、24.3.0-24.3.1,以及全新免费管理工具SelectDB Studio 1.0.0、1.1.0-1.1.1。其中值得关注的新功能有:
1、SelectDB Enterprise Core
- 湖仓一体:FE Metrics新增Catalog/Database/Table数量监控指标;MaxCompute Catalog支持Timestamp类型
- 查询执行:新增URL处理函数:top_level_domain、first_significant_subdomain、cut_to_first_significant_subdomain;新增year_of_week函数,兼容Trino语法实现;percentile_array函数支持Float和Double数据类型
- 存算分离支持重命名计算组(Rename Compute Group)
2、Enterprise Manager
- 集群巡检功能Preview版本
- Manager部署、升级等任务重构优化
- 节点前置检查增加对JAVA_HOME有效性的检测
- 节点启动、重启、批量重启增加前置检查
- 主机监控的IO-Util和磁盘吞吐量按照具体磁盘显示
- 集群升级备份数据提示文案优化
- Studio支持获取版本号
- Studio跳转提示优化
- 新建集群优化节点元数据、存储、日志等目录生成逻辑
- 主机界面新增Agent部署端口和路径的展示
- 集群为非运行状态时,也允许设置自动拉起和FE代理地址
- 优化Manager日志结构,去掉manager.out日志
3、SelectDB Studio
发布了Windows版本和Mac Intel芯片版本,对SQL控制台做了较大的更新,以及一些Bug修复和功能优化:
- SQL控制台支持多行SQL查询
- Profile支持原始Text格式显示
- 支持REFRESH CATALOG
- 支持白名单限制部分用户登录(Server 版本,运行在Cloud BYOC仓库上)
- 用户/角色管理增加COMMENT
StarRocks发布3.4和3.5版本
StarRocks在2025上半年发布了3.4与3.5两个版本,持续提升性能与体验,并带来多项关键功能更新,覆盖AI场景支持、存算分离、数据湖优化等多个方向。
1、更强的AI场景支持
- 引入Vector Index,支持IVFPQ和HNSW两种主流索引类型
- 新增Python UDF,便于数据预处理、模型推理
- 支持Arrow Flight协议,加速大批量查询结果传输,提升系统间协作效率
2、分区管理优化
- 支持时间表达式分区合并
- 支持通用分区表达式TTL,支持基于分区表达式定义分区的生命周期管理策略
3、ETL增强
- 新增多语句事务(Multi-statement Transaction),实现完整的原子性和一致性保障
4、存算分离
- 新增集群级Snapshot快找功能,提升灾备能力
- 引入了批量导入优化功能,减少导入后查询波动及Compaction成本
- 优化主键表内部修复逻辑
5、物化视图
- 支持多列分区表达式
- 支持分区级 TTL 策略
- 透明查询改写增强
6、数据湖
- Iceberg v2 equality delete读取优化,避免重复读,提升性能
- 支持异步查询片段投递
- 引入SLRU缓存淘汰策略,缓解缓存污染,提升命中率
- 还优化了Data cache的自适应I/O策略
- 新增Query Feedback功能,识别慢查询并给出调优建议
- 查询模式优化,涵盖主外键裁剪、聚合下推、多列OR谓词下推等
7、湖仓生态
支持Iceberg Time Travel功能,允许用户创建或删除BRANCH和TAG,并通过指定TIMESTAMP或VERSION来查询特定分支或标签的数据
ByteHouse云数仓发布2.3 GA版本
一、ByteHouse云数仓
2025上半年,ByteHouse云数仓主要发布了2.3 GA版本,其中值得关注的重点特性有:
- 负载弹性,通过实时感知负载,动态调配资源,高峰期自动扩容保障响应,低谷期智能缩容降低成本,避免资源瓶颈及浪费,实现计算资源动态优化,保障业务流畅并降本30%;
- Binlog,通过实时数据订阅构建事件驱动的实时数仓,实现业务数据变更的瞬间同步与分析,助力企业提升决策效率、降低数据延迟损失并优化运维成本;
- 向量检索,高效存储与检索文本/图片/视频等多模态非结构化数据的向量特征,实现向量/文本/标量数据混合检索;助力以图搜图转化率提升20%、跨模态搜索转化率提升40%,打破数据壁垒驱动AI应用落地;
- 文本检索,支持多语言分词、倒排索引及关键词/词组/语义相似度检索;促进企业知识库检索效率提升30%、知识复用率提高40%,有效驱动企业知识管理与智能服务效率升级;
- AI日志检索,通过AI模型自动分类日志问题、提供诊断修复建议及自动生成SQL精准检索日志,促进日志分析效率提升5倍,开发测试中问题定位效率提升80%,全面提升企业运维效率与故障应对能力。
二、ByteHouse企业版
2025上半年,ByteHouse企业版主要发布了25.3、25.4及25.5 GA版本,其中值得关注的新特性有:
- MCP Server支持基于Faas Remote部署,实现LLM + ByteHouse对接与协同。可为ByteHouse数据开发、查询优化、集群运维提供全生命周期智能化服务;
- 智能巡检功能可实现集群重点指标按需配置关注,并自动生成巡检报告;
- Auto MV支持单表或多表异步物化, 数据处理链路效率大幅提升;
- 集群扩容能力便捷性显著提升,体验更加流畅;
- 非结构化数据向量检索场景能力不断增强,在性能、便捷性和易用性方面表现更优;
- 支持为集群设置白名单以管理集群访问权限,实现精细化访问控制;
- 新增支持表统计信息收集功能。该功能通过收集集群内表的统计信息,助力用户查看、分析集群中的表信息,用户可依据这些信息采取优化措施,实现集群性能的提升。
三、国产数据库
四、云数据库
请见《数据库&大数据半年度迭代盘点:AI、多模、存算分离多点突破(下)》