行为、审计日志 (实时索引/实时搜索) - 最佳实践
标签
PostgreSQL , ES , 搜索引擎 , 全文检索 , 日志分析 , 倒排索引 , 优化 , 分区 , 分片 , 审计日志 , 行为日志
背景
在很多系统中会记录用户的行为日志,行为日志包括浏览行为、社交行为、操作行为等。
典型的应用例如:数据库的SQL审计、企业内部的堡垒机(行为审计)等。
行为、审计日志的量与业务量或者操作量有关,为了满足企业实时查询的需求,通常需要构建搜索引擎,比如使用ES或者使用PostgreSQL的全文检索功能来实现。
如果使用PostgreSQL来构建,有几个优势,可以满足多个需求:
1. 明细存储的需求,除了需要建立索引的字段,明细字段也可以存储在PostgreSQL中。
2. 索引的需求,即建立日志行为字段的全文索引。
3. 多维度索引的需求,除了日志行为字段的索引,还可以建立其他字段的索引,例如时间维