引言
腾讯云日志服务 CLS 团队联合北京大学软件工程国家工程研究中心、Tencent ES Oteam,在传统搜索引擎的基础上,引入了时序概念,实现了时序搜索引擎。该时序搜索引擎已经提交了 6 项相关专利申请,同时,该研究成果《TencentCLS: The Cloud Log Service with High Query Performances》已经被数据库顶会 VLDB 2022 接收,将于 2022 年 9 月份澳大利亚悉尼举行的 VLDB 学术会议上发布。
在海量日志检索性能方面,时序搜索引擎相对传统搜索引擎取得了近 40 倍的提升;腾讯云日志服务 CLS 也因此实现了在海量日志检索领域,对类似 ELK 等业界主流日志产品大幅的性能优势。本文将大家详细解密专利背后的硬核技术。
业务背景
CLS 日志服务是腾讯云推出的专业日志服务,采用了 Lucene 来支持海量日志数据的检索、分析处理。Lucene 是 Apache 软件基金会的开源项目,是当前主流的日志数据处理工具;但 Lucene 主要是为通用搜索而打造的,在搜索过程中并不能有效利用日志数据的特点;因此,多家公司基于性能考虑,放弃 Lucene 改为自研日志搜索引擎,如国内某专业日志处理公司,在几年前放弃了 Lucene 转而自研专用搜索引擎,宣称其搜索性能比 Lucene 提升了 1 倍。
为了进一步提高 CLS 的日志检索和分析能力,满足多种业务场景的检索分析需求。CLS 团队在 Lucene 的基础上,实现了日志数据专用的时序搜索引擎。相对传统搜索引擎,时序搜索引擎在正序检索、逆序检索、直方图检索方面,分别取得了 38 倍、24 倍、7.6 倍的性能提升。论文相关实验数据如下:
(表中 O0、O1、O2、O3 分别代表我们设计的 4 项优化技术方案)
正序检索:
逆序检索:
直方图检索:
而在离线测试中,时序搜索引擎的性能比原生 Lucene 提升了 50 倍,响应速度提升了 5 倍;上述相关功能已经在 CLS 上全量应用,在最消耗性能的冷数据场景,测试结果显示各类核心操作的响应速度均有 **10 倍+**提升。
资料领取直通车:大厂面试题锦集+视频教程https://docs.qq.com/doc/DTlhVekRrZUdDUEpy
免