Elasticsearch与kibana

Elasticsearch与kibana
前言Java中比较流行的搜索引擎是Elasticsearch传统的数据库搜索使用like’关键字%’当内容过多时性能会大大降低所以Elasticsearch就出现了。Elasticsearch核心概念Elasticsearch 是面向文档的分布式搜索引擎所有数据以JSON格式存储和返回无需预先定义严格的表结构具备高度的灵活性和扩展性。数据层级关系ES 的数据组织层级可以类比为关系型数据库但两者并不完全等价Elasticsearch关系型数据库类比说明集群Cluster数据库实例由一个或多个节点组成统一对外提供服务节点Node数据库服务器集群中的每一台服务器存储数据并参与索引和搜索索引Index表Table具有相同结构的文档集合是数据存储和搜索的逻辑单元文档Document行Row一条完整的数据记录以 JSON 格式存储字段Field列Column文档中的具体属性如title、price、createTime倒排索引倒排索引中有两个非常重要的概念文档Document用来搜索的数据其中的每一条数据就是一个文档。例如一个网页、一个商品信息词条Term对文档数据或用户搜索数据利用某种算法分词得到的具备含义的词语就是词条。例如我是中国人就可以分为我、是、中国人、中国、国人这样的几个词条创建倒排索引是对正向索引的一种特殊处理流程如下将每一个文档的数据利用算法分词得到一个个词条创建表每行数据包括词条、词条所在文档id、位置等信息因为词条唯一性可以给词条创建索引例如hash表结构索引KibanaKibana 是一款免费且开放的前端应用程序其基础是 Elastic Stack可以为 Elasticsearch 中索引的数据提供搜索和数据可视化功能。用途搜索、查看并可视化 Elasticsearch 中所索引的数据并通过创建柱状图、饼状图、表格、直方图和地图对数据进行分析。仪表板视图能将这些可视化元素集中到一起然后通过浏览器加以分享以提供有关海量数据的实时分析视图为下列用例提供支持1.日志处理和分析2.基础设施指标和容器监测3.应用程序性能监测 (APM)4.地理空间数据分析和可视化5.安全分析6.业务分析es和kibana的安装可以参考Linux环境下安装Elasticsearch史上最详细的教程来啦~_linux elasticsearch-CSDN博客以及kibana的安装Linux下安装Kibana环境_kibana 端口 15601-CSDN博客es的操作通过kibana可视化工具操作基本操作索引创建PUT /index_name因为我是单机环境下搭建的只有 1 个节点ES 无法将副本分片分配到其他节点所以将副本数设置为0文档添加POST /index_name/_doc {JSON数据}添加方式有两种post 和 put 区别是post可以不用指定文档ID(自动生成)put需要指定文档查询GET /index_name/_doc/id索引删除DELETE /index_name高级功能批量操作使用_bulkAPI执行多个操作搜索查询通过_searchAPI实现复杂检索通过content关键字匹配查询 ,也可以通过其他字段match聚合分析利用聚合功能进行数据统计分析我这里使用的是aggs可以分别统计 条数、最小值、最大值、平均值、总和可视化展示和其他可视化工具一样可以创建数据图并且可以放在可视化大屏展示