Elasticsearch笔记(集群插件、kibana、什么是倒排索引)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: Elasticsearch笔记(集群插件、kibana、什么是倒排索引)

Elasticsearch 中的集群、节点、索引、文档、类型


集群是一个或多个节点(服务器)的集合,它们共同保存您的整个数据,并提供跨所有节点的联合索 引和搜索功能。群集由唯一名称标识,默认情况下为“elasticsearch”。此名称很重要,因为如果节点设置为按名称加入群集,则该节点只能是群集的一部分。


节点是属于集群一部分的单个服务器。它存储数据并参与群集索引和搜索功能。


索引就像关系数据库中的“数据库”。它有一个定义多种类型的映射。索引是逻辑名称空间,映射到一 个或多个主分片,并且可以有零个或多个副本分片。 MySQL =>数据库 Elasticsearch =>索引


文档类似于关系数据库中的一行。不同之处在于索引中的每个文档可以具有不同的结构(字段),但 是对于通用字段应该具有相同的数据类型。 MySQL => Databases => Tables => Columns / Rows Elasticsearch => Indices => Types =>具有属性的文档


类型是索引的逻辑类别/分区,其语义完全取决于用户。


什么是倒排索引


一切设计都是为了提高搜索的性能


倒排索引(Inverted Index)也叫反向索引,有反向索引必有正向索引。通俗地来讲,正向索引是通过key找value,反向索引则是通过value找key。


倒排索引是搜索引擎的核心。搜索引擎的主要目标是在查找发生搜索条件的文档时提供快速搜索。ES


中的倒排索引其实就是 lucene 的倒排索引,区别于传统的正向索引,倒排索引会再存储数据时将关键词和数据进行关联,保存到倒排表中,然后查询时,将查询内容进行分词后在倒排表中进行查询,最后匹配数据即可.


假设有这么几条数据

ID Name Age Sex
1 Kate 24 Female
2 John 24 Male
3 Bill 29 Male


ID是Elasticsearch自建的文档id,那么Elasticsearch建立的索引如下:  

Name:
Term Posting List
Kate 1
John 2
Bill 3
Age:
Term Posting List
24 [1,2]
29 3


Sex:

Term Posting List
Female 1
Male [2,3]


Posting List

Elasticsearch分别为每个field都建立了一个倒排索引,Kate, John, 24, Female这些叫term,而[1,2]就是Posting List。Posting list就是一个int的数组,存储了所有符合某个term的文档id。


通过posting list这种索引方式似乎可以很快进行查找,比如要找age=24的同学,爱回答问题的小明马上就举手回答:我知道,id是1,2的同学。


elasticsearch-head chrome插件安装


elasticsearch-head是一个用于浏览Elastic Search集群并与之交互的 Web 前端。


下载,也可通过谷歌商城直接下载


安装好后点开插件

1673350184157.jpg


kibana安装


Kibana 是一个免费且开放的用户界面,能够让你对 Elasticsearch 数据进行可视化,并 让你在 Elastic Stack 中进行导航。你可以进行各种操作,从跟踪查询负载,到理解请求如 何流经你的整个应用,都能轻松完成。


下载


修改config/kibana.yml文件

# 默认端口
server.port: 5601
# ES 服务器的地址
elasticsearch.hosts: ["http://localhost:9200"]
# 索引名
kibana.index: ".kibana"
# 支持中文
i18n.locale: "zh-CN"


Windows 环境下执行 bin/kibana.bat 文件


最后:通过浏览器访问 : http://localhost:5601

1673350215790.jpg

可以通过控制台跳过 cURL 并使用此 JSON 接口直接处理数据。

1673350227436.jpg

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
3月前
|
缓存 Prometheus 监控
Elasticsearch集群JVM调优设置合适的堆内存大小
Elasticsearch集群JVM调优设置合适的堆内存大小
635 1
|
2月前
|
存储 负载均衡 监控
揭秘 Elasticsearch 集群架构,解锁大数据处理神器
Elasticsearch 是一个强大的分布式搜索和分析引擎,广泛应用于大数据处理、实时搜索和分析。本文深入探讨了 Elasticsearch 集群的架构和特性,包括高可用性和负载均衡,以及主节点、数据节点、协调节点和 Ingest 节点的角色和功能。
75 0
|
3月前
|
缓存 监控 Java
Elasticsearch集群JVM调优
Elasticsearch集群JVM调优
84 5
|
3月前
|
存储 缓存 监控
Elasticsearch集群JVM调优堆外内存
Elasticsearch集群JVM调优堆外内存
73 1
|
3月前
|
监控 Java 测试技术
Elasticsearch集群JVM调优垃圾回收器的选择
Elasticsearch集群JVM调优垃圾回收器的选择
100 1
|
3月前
|
监控 安全 网络安全
Elasticsearch集群的网络设置
Elasticsearch集群的网络设置
86 3
|
3月前
|
缓存 监控 安全
优化Elasticsearch 集群配置
优化Elasticsearch 集群配置
118 4
|
3月前
|
存储 监控 固态存储
Elasticsearch集群硬件与资源分配
Elasticsearch集群硬件与资源分配
49 2
|
3月前
|
存储 JSON Java
ELK 圣经:Elasticsearch、Logstash、Kibana 从入门到精通
ELK是一套强大的日志管理和分析工具,广泛应用于日志监控、故障排查、业务分析等场景。本文档将详细介绍ELK的各个组件及其配置方法,帮助读者从零开始掌握ELK的使用。
|
3月前
|
监控 负载均衡 安全
Elasticsearch集群配置优化
Elasticsearch集群配置优化
68 1

热门文章

最新文章