ELK日志实时分析平台--Elastic篇

本文详细介绍了ElasticSearch作为ELK日志分析平台的核心组件,包括其分布式搜索引擎特性、倒排索引概念、分词器原理以及数据类型。此外,还探讨了脑裂问题的解决方案、相关性算分、排序、分页遍历以及关联关系处理等关键知识点。
摘要由CSDN通过智能技术生成

概述
  1. 日志统一手机、管理、访问。查找问题方便安全,收集放到搜索引擎中。E:ElasticSearch:分布式搜索引擎存储库,NoSql,核心是倒排索引库,可以存TB级的数据。
  2. ElasticSearch
    基于Lucene的分布式全文搜索框架,可以对logs进行分布式存储,有点像hdfs。此为ELK的核心组件,日志的分析以及存储全部由es完成
  3. LogStash
    可以流放到各自的服务器上收集Log日志,通过内置的ElasticSearch插件解析后输出到ES中
  4. Kibana
    可以多维度的展示es中的数据。可提供图表展示,造出一些非常炫酷的页面。这也解决了用mysql存储带来了难以可视化的问题。他提供了丰富的UI组件,简化了使用难度
环境搭建

ELK架构图

ElasticSearch安装
ES相关概念

相关其他配置见官方文档 (https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html)

  1. 正排索引和倒排索引
    正排索引:文档 id 到文档内容、单词的关联关系
    倒排索引:单词到文档 id 的关联关系(通过对文档内容分词实现)
      倒排索引组成:
        1. 单词词典(Term Dictionary):B+树
         2. 倒排列表(Posting List):
         - 文档id:获取原始信息
         - 单词频率(TF,Term Frequency):记录单词在文档中出现次数,用于后续算分
         - 位置(Position):记录单词在文档中(分词后)位置,用于词语搜索(Phrase Query)
         - 偏移(Offset):记录单词在文档的开始和结束位置,用于高亮显示

     倒排索引–查询流程:
       - 通过倒排索引获取单词对应的文档 id
       - 通过正排索引查询文档 id 对应的完成整内容
       - 返回用户最终结果

  1. 分词器
    es中专门处理分词的组件,英文Analyzer,组成
    在这里插入图片描述
  • Character Filters:针对原始文本进行处理,比如去除一些特定标签
  • Tokenizer:将原始文本按照一定规则切分为单词
  • Token Filters:针对tokenizer处理的单词再加工,如转小写、删除或新增(近义词)等处理

自定义分词器
  通过上面三个组成部分实现

  • Character Filters:

    • HTML Strip 去除html标签和转换html实体
    • Mapping 进行字符替换操作
    • Pattern Replace 进行正则匹配替换
      在这里插入图片描述
  • Tokenizer:将原始文本按照一定规则切分为单词

    • standard 按照单词进行分割
    • letter 按照非字符类进行分割
    • whitespace 按照空格进行分割
    • UAX URL Email 按照 standard 分割,但不会分割邮箱和url
    • NGram 和 Edge NGram 连词分割
    • Path Hierarchy 按照文件路径进行切割
  • Token Filters:针对tokenizer处理的单词再加工,如转小写、删除或新增(近义词)等处理

    • lowercase 将所有term转换成小写
    • stop 删除stop words
    • NGram 和 Edge NGram 连词分割
    • Synonym 添加近义词的term
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值