Elasticsearch—(提高篇)

2020-05-27 00:00:00 索引 查询 数据 字段 文档

Elasticsearch—(提高篇)

前言

Elasticsearch的简单入门请参考之前写的一篇文章Elasticsearch简单入门篇,这篇简单介绍啦Elasticsearch的基本安装、Docker安装方法、基本的概念,以及如何使用Java代码实现对ElasticsearchCRUD操作等入门知识。

内容摘要



1.1.Elastic Stack应用场景

  • 网站搜索、代码搜索等(例如生产环境的日志收集 ——格式化分析——全文检索——系统预警)
  • 日志管理与分析、应用系统性能分析、安全指标监控等

1.2.Elastic Stack技术架构

Elastic static家族产品



架构

Elastic的技术架构可以简单,也可以,它是很具有扩展性的,简单的技术架构就是使用Beats进行数据的收集,Beats是一种抽象的称呼,具体的可以是使用FileBeat收集数据源为文件的数据或者使用TopBeat来收集系统中的监控信息,可以说类似Linux系统中的TOP命令,当然还有很多的Beats的具体实现,再使用logstash进行数据的转换和导入到Elasticsearch中,后使用Kibana进行数据的操作以及数据的可视化等操作。

当然,在生产环境中,我们的数据可能在不同的地方,例如关系型数据库Postgre,或者MQ,再或者Redis中,我们可以统一使用Logstash进行数据的转换,同时,也可以根据数据的热度不同将ES集群架构为一种冷温热架构,利用ES的多节点,将一天以内的数据称谓热数据,读写频繁,就存放在ES热节点中,七天以内的数据称之为温数据,就是偶尔使用的数据存放在温节点中,将极少数会用到的数据存放在冷节点中



1.3.ES基本概念回顾

文档(Document)

Elasticsearch面向文档性,文档就是所有可搜索数据的小单位。比如,一篇PDF中的内容,一部电影的内容,一首歌等,文档会被序列化成JSON格式,保存在Elasticsearch中,必不可少的是每个文档都会有自己的标识,可以自己指定,也可以由Elasticsearch帮你生成。类似数据库的一行数据。

元数据(标注文档信息)

"_index" : "user",
"_type" : "_doc",
"_id" : "l0D6UmwBn8Enzbv1XLz0",
"_score" : 1.6943597,
"_source" : {
    "user" : "mj",
    "sex" : "男",
    "age" : "18"
}

相关文章