Elasticsearch—(提高篇)
Elasticsearch—(提高篇)
前言
Elasticsearch
的简单入门请参考之前写的一篇文章Elasticsearch简单入门篇,这篇简单介绍啦Elasticsearch
的基本安装、Docker
安装方法、基本的概念,以及如何使用Java
代码实现对Elasticsearch
的CRUD
操作等入门知识。
内容摘要
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"
}
相关文章