最近更新时间:2026-04-29 18:02:54
日志服务提供搜索型和分析型两种日志池类型,以满足不同的业务场景需求。两种类型在底层架构、查询方式、数据结构等方面存在差异,您可以根据实际业务需求选择合适的类型。本文介绍搜索型和分析型日志池以及如何选择日志池类型。
搜索型日志池基于Elasticsearch(ES)架构构建,提供强大的全文检索和模糊搜索能力。它对Lucene查询语法提供了完整支持,特别适合需要快速定位问题日志的运维场景。
底层架构:基于Elasticsearch,对全文检索的支持更好
查询方式:支持Lucene语法和SQL语法,适合关键词检索和模糊搜索
数据结构:字段可以动态增加,schema灵活可变,无需预先定义固定结构
日志全文检索和模糊搜索,需要快速定位特定日志内容
日志字段结构不固定或经常变化的业务系统
运维场景中的问题排查和日志定位
需要从前端或移动端直接上报数据的应用监控场景
支持动态字段扩展的业务日志采集
分析型日志池基于StarRocks架构构建,专为海量数据的实时统计分析而设计。它对SQL语句提供了更强大的支持,能够执行复杂的多维度数据查询和聚合操作,具备高性能的数据分析能力。
底层架构:基于StarRocks,对SQL语句的支持更好
查询方式:支持MySQL语法,适合复杂的统计分析和数据聚合
数据结构:采用结构化字段管理,需要日志结构相对固定
分析型日志池支持开启字段设置功能,系统会自动初始化数据结构并提供以下预置字段:
__id__:预置字段,text类型
__source__:预置字段,记录日志来源,text类型
__path__:预置字段,记录日志采集路径,text类型
__timestamp__:预置字段,记录日志写入klog的时间,text类型
timestamp:预置字段,text类型
__extra__:预置字段,保存没有被预先定义的字段数据,text类型
__errors__:预置字段,保存因字段类型不匹配而无法正确解析的数据,text类型
需要进行复杂的数据统计分析和业务报表生成
使用SQL语句进行多维度数据查询和聚合计算
日志结构相对固定且字段定义明确的业务系统
处理海量数据的实时分析场景
业务指标统计和数据监控
下表对比了搜索型日志池和分析型日志池的核心差异,帮助您根据业务需求选择合适的类型:
搜索型日志池 | 分析型日志池 | |
|---|---|---|
底层技术 | Elasticsearch | StarRocks |
主要用途 | 全文检索、模糊搜索 | 统计分析、数据聚合 |
查询语法 | Lucene语法、SQL语法 | 支持MySQL |
字段管理 | 动态字段,自动扩展 | 结构化字段,需预定义 |
数据结构 | Schema灵活可变 | Schema相对固定 |
Web Tracking | ✅ 支持 | ✅ 支持 |
数据加工 | ✅ 支持 | ✅ 支持 |
日志投递 | ✅ 支持 | ✅ 支持 |
字段设置 | 无需配置 | 支持预定义字段结构 |
如果您的主要需求是快速检索定位日志、进行全文搜索,或者日志字段结构经常变化,建议选择搜索型日志池。
如果您的主要需求是进行数据统计分析、报表生成,且日志结构相对固定,建议选择分析型日志池。
两种类型的日志池可以在同一个工程中共存,您可以针对不同的业务场景创建不同类型的日志池,充分发挥各自的优势。
纯净模式
