ES 学习笔记

Linux 安装ES及Kibana(7.17.4版本)
ES基本使用
ES是一个基于Apache的开源索引库Lucene而构建的 开源、分布式、具有RESTful接口的全文搜索引擎, 还是一个分布式文档数据库.

基本概念

  • index
    索引是具有相似结构的文档的集合, 比如可以有一个商品分类索引, 订单索引.
    每个索引都要有唯一的名称, 名称要小写, 通过索引名称来执行索引、搜索、更新和删除等操作.
    一个集群中可以有任意多个索引, 只要保证名称不同即可
  • document
    文档是存储在ES中的一个个JSON格式的字符串, 是ES索引中的最小数据单元, 由field(字段)构成.
    ES是一个非结构化的数据库,每个文档可以有不同的字段,并且有一个唯一标识.
  • field
    字段可以是一个简单的值(如字符串、数字、日期), 也可以是一个数组, 还可以嵌套一个对象或多个对象.
    字段类似于关系数据库中表数据的列, 每个字段都对应一个类型.
    可以指定如何分析某一字段的值, 即对field指定分词器
  • type
    一个索引中,可以定义一个或者多个类型(7.x版本中被废弃,8.x版本中已移除)
  • text
    文本是field类型的一种, 通常会被分析成多个Term, 存储在ES的索引库中.
  • mapping
    类似于关系数据库中的Table结构, 每个index都有一个映射: 定义索引中每个字段的类型.
    所有文档在写进索引之前都会先进行分析, 如何对文本进行分词、哪些词条又会被过滤, 这类行为叫做映射(mapping).
    映射可以提前定义, 也可以在第一次存储文档时自动识别.
  • analysis
    将文本转换为索引词的过程, 分析的结果依赖于分词器

基本原理

倒排索引
正排索引通过记录id查询内容记录;通过内容关键词获取记录id。
ES写入数据时,会把数据进行分词,把每一个分词的结果与文档进行关联,再把相同的词所关联的文档进行合并,建立倒排索引。

记录关键词位置可以对关键词进行飘红处理

相关技术

Luence 是Apache基于Java编写的信息搜索工具包(jar包),它包含了索引结构、读写索引工具、相关性工具、排序等功能,因此Lucene的使用需要我们进一步开发搜索引擎系统, 如数据获取、解析、分词等

Solr 是一个有HTTP接口的基于Lucene的查询服务器,是一个搜索引擎系统,系统封装了很多lucene细节,Solr可以直接利用HTTP GET/POST 请求去查询,维护修改索引。Solr利用zookeeper进行分布式管理,它的实现更加全面,官方提供的功能更多。

Elasticsearch 是一个建立在全文搜索引擎Apache Lucene基础上的搜索引擎,采用的策略师分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。es的实时搜索性比solr更好

Elasticsearch(ES) 基本知识相关推荐

  1. Elasticsearch集群知识笔记

    Elasticsearch集群知识笔记 Elasticsearch内部提供了一个rest接口用于查看集群内部的健康状况: curl -XGET http://localhost:9200/_clust ...

  2. [Elasticsearch] es 6.6 编译报错 SSL peer shut down incorrectly

    1.概述 前提:[Elasticsearch] es 6.6 编译报错 java.net.ConnectException: Operation timed out Mac 编译es 6.8 报错 [ ...

  3. ElasticSearch (ES)学习之路(二)Win10安装ES,可视化界面,Kibanna

    ElasticSearch (ES)学习之路(二)Win10安装ES,可视化界面,Kibanna 我前一段时间学习的时候ES 还是7.6.x 现在看ES 官网已经到了7.8.X了,迭代维护的速度还是挺 ...

  4. ElasticSearch es 插件开发

    ElasticSearch es 插件开发 1. 插件分类 API Extension Plugins API扩展插件 通过添加新的API或功能向Elasticsearch添加新功能,通常与搜索或映射 ...

  5. ElasticSearch(ES)

    文章目录 备注.必看 ElasticSearch 和 Solr 介绍,对比 ElasticSearch 7.8. 官网 基本概念 Cluster(集群) 与 Node(节点) Index -索引 索引 ...

  6. Elasticsearch(ES)的下载与安装

    Elasticsearch(ES)的下载与安装 1.安装 Java 在安装 Elasticsearch 之前,我们需要安装并配置好 JDK, 设置好环境变量 $JAVA_HOME. Elasticse ...

  7. ElasticSearch -- ES 7.x 集群版安装部署

    向导 1. ElasticSearch 1.下载 2.配置 3.查看启动状态 4.注册宕机.开机自启 5.如果磁盘是SSD,建议修改IO调度算法 6.SSD磁盘,关闭numa绑核.hugepage 2 ...

  8. elasticsearch(es)分布式全文检索引擎 简介

    0. 带着问题上路-ES是如何产生的? (1)思考:大规模数据如何检索? 如:当系统数据量上了10亿.100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题: 1)用什么数据库好?(MyS ...

  9. ELK——ElasticSearch(ES) LogStash Kibana 范围查询 经纬度

    Spring Boot 搭建 ELK,这才是正确看日志的方式! ES地理边界聚合官网 ES API官网 一.快速入门实战 二.核心语法集群高可用实战演练 三.集群架构原理与搜索技术深入 四.底层原理与 ...

最新文章

  1. oralce 数据库监听日志状态及目录:查看监听(使用grid用户登陆):
  2. C++相关:动态内存和智能指针
  3. Repeater无刷新分页
  4. Docker教程-仓库管理
  5. 详解Linux下通过yum安装Mariadb/MySQL数据库(腾讯云也适用)
  6. python查看电脑配置_怎么查看电脑配置(教你如何查看电脑配置信息和型号)
  7. 依赖注入底层反射原理_PHP基于反射机制实现自动依赖注入的方法详解_php技巧...
  8. POI导出Word插入复选框
  9. arcgis中dem坐标定义_GIS基础-DEM Grid规则格网结构
  10. Java8 forEach 使用
  11. 在java中excel格式变为zip什么原因_Excel工作表中最常见的8类问题,你一定遇到过,附解决方法!...
  12. Java中JDK安装以及环境变量设置
  13. 设计模式(1):工厂模式
  14. 一个简单进程池的实现
  15. KB4484127 更新导致ACCESS数据库查询报 Query '' is corrupt 异常解决方案
  16. 桌面版linux装哪个版本好用,linux桌面版哪个版本好用?
  17. AndroidStudio的强大搜索功能介绍!全局搜索、搜索文件、搜索类、搜索文本、搜索一切
  18. java常用jar包下载_standard.jar包
  19. 输入qq号强制进空间_除了QQ号一键登录,迷你世界QQ版还有哪些神奇之处?
  20. 通过bind实现DNS服务

热门文章

  1. 风影总结NHibernate3 ModelClass和Mapping
  2. linux查看hive账户权限,Linux用户和权限管理
  3. BUUWeb刷题记录
  4. 如何解决hao.123.com的挟持网页(篡改网站主页)
  5. SpringSecurity(一)核心功能
  6. 【Derivation】正态分布特征函数证明-X~N(a,sigma^2)
  7. 可视化项目使用vw/vh布局进行适配
  8. 教学计划编制问题(C语言)
  9. Python 谷歌翻译_浏览器版本 selenium (2022年1月测试可用)
  10. 数仓(四):数据建模:如何构建主题域/面向主题的建模