一、ES基本概念

1.1 文档

Es是面向文档得,文档是所有可搜索的最小单位

日志文件中的日志项

一本电影具体信息/一张唱片相信信息

MP3播放器里的一首歌/一篇PDF文档中的具体内容

文档被序列化为JSON格式,保存到ES中

JSON对象由字段组成,

每个字段都有对应的字段类型(字符串/数值/布尔/日期/二进制/范围类型)

每个文档都有一个Unique ID

可以自己指定ID

或者选自ES自动生成

1.2 索引

索引类型

关系型数据库与ES对比

二、节点、集群、分片和副本

2.1 节点

节点是一个ES实例

本质上就是一个JAVA进程

一台机器上可以运行多个ES进程,但是生产环境一般建议一台机器上只运行一个ES实例

每个节点都有一个名字,通过配置文件配置,或者启动时候 -E node.name=node1 指定

每一个节点启动之后,会分配以一个UID,保存在data目录下

2.2 Master-eligible nodes 和 Master Node

每个节点启动后,默认是一个Master eligible 节点

可以设置 node.master: false 禁止

Master-eligible 节点可以参加选主流程,成为Master节点

当第一个节点启动的时候,他会将自己选举成Master节点

每个节点上都保存了集群的状态,只有Master节点才能修改集群状态信息

集群状态(Cluster State),维护一个集群中,必要的信息

所有的节点信息

所有的索引和其相关的Mapping与Setting信息

分片的路由信息

任意节点都能修改信息会导致数据的不一致性

2.3 节点类型,Data Node & Coordinating Node

Data Node

可以保存数据的节点,叫做 Data Node。负责保存分片数据。

Coordinating Node

负责接收Client的请求,将请求转发到合适的节点,最终把结果汇聚到一起

默认每个节点都是Coordinating Node

其他节点类型

Hot & Warm Node

不同硬件配置的Data Node,用户实现Hot & Warm架构,降低集群部署成本。

Machine Learning Node

负责跑机器学习的Job,用来做异常检测

Tribe Node

Tribe Node 连接到不同的ES集群,并且支持将这些集群当成一个单独的集群部署

配置节点类型

分片(Primary Shard & Replica Shard)

主分片,用以解决数据水平扩展的问题。通过主分片,可以将数据分布到集群内的所有节点之上

一个分片是一个运行的lucene的实例

主分片数在索引创建时指定,后续不允许修改,除非Reindex

副本,用以解决数据高可用问题。分片是主分片的拷贝

副本分片数,可以动态调整

增加副本数,还可以在一定程度上提高服务的可用性(读取的吞吐)

分片的设定

对于生产环境的分片设定,需要提前做好容量规划

分片数设置过小

导致后续无法增加节点实现水平扩展

单个分片的数据太大,导致数据重新分配耗时

分片数设置过大,7.0开始,默认主分片设置成1,解决 over-sharding的问题

影响搜索结果的相关性打分,影响统计结果的准确性

单个节点上过多的分片,会导致资源浪费,同时会影响性能

查看集群的 健康状况

三、 文档基本的CRUD与批量操作

 3.1 create 文档创建

3.2 Index文档

3.3 get 文档查询

3.4 文档更新

3.5 Buk Api 批量数据操作

四、倒排索引

关键字在页码中的页码关联

5、Analysis与Analyzer

 

Thulac分词器

五、search API

5.1  URI Search

在URL 中使用查询参数

5.2 Request Body Search

使用Elasticsearch 提供的,基于JSON 格式的更加完备的 Query Domain Specific Language(DSL)
​​​​​​​

Request Body

搜索 Response

URI Search - 通过URI query 实现搜索

 

六、Request Body Search

分页

排序

_ soruce filtering

脚本字段

match查询

Mapping

​​​​​​​

聚合

总结

ES2 知识-Es入门相关推荐

  1. OpenGL ES入门(使用指南)

    转载地址:https://www.ict528.com/wpozv3sz3srrtywpoq1qvuyqooqxz1usvwr2uqoo.html. OpenGL ES 入门 一.前言 OpenGL ...

  2. php es使用,PHP的ES入门(一)—— Index的创建和删除

    大神请看 本文不一定写的全部都对,如果有哪里写得不好或者不对,可以提但请不要喷,不喜勿看绕道走就是了,虽然有可能在一些小知识点上会误导小白,但是还是可以看看基础的ES操作,对于使用还是一点帮助的 ES ...

  3. 知识图谱入门2-2:用户输入->知识库的查询语句

    注:欢迎关注datawhale:https://datawhale.club/ 系列: 知识图谱入门一:知识图谱介绍 知识图谱入门2-1:实践--基于医疗知识图谱的问答系统 知识图谱入门2-2:用户输 ...

  4. 知识图谱入门2-1:实践——基于医疗知识图谱的问答系统

    注:欢迎关注datawhale:https://datawhale.club/ 系列: 知识图谱入门一:知识图谱介绍 知识图谱入门2-1:实践--基于医疗知识图谱的问答系统 知识图谱入门2-2:用户输 ...

  5. 知识图谱入门一:知识图谱介绍

    知识图谱入门一: 一.知识图谱简介 1.1 引言 1.2 什么是知识图谱呢? 1.2.1 什么是图(Graph)呢? 1.2.2 什么是 Schema 呢? 1.3 知识图谱的价值在哪呢? 二.怎么构 ...

  6. 知识图谱入门学习笔记(二)-知识表示

    目录 1 知识表示的概念 1.1 知识表示方法 1.2 知识表示的分类观点 1.3 知识表示的发展 2.1 语义网络 2.2 产生式系统 2.3 框架系统(Frame Systems) 2.4概念图( ...

  7. 知识图谱入门 【九】- 知识问答

    知识图谱入门 [一]- 认识图谱技术 知识图谱入门 [二]- 知识表示与知识建模 知识图谱入门 [三]- 知识抽取 知识图谱入门 [四]- 知识挖掘 知识图谱入门 [五]- 知识存储 知识图谱入门 [ ...

  8. 计算机打字工作内容,计算机基础知识打字入门

    <计算机基础知识打字入门>由会员分享,可在线阅读,更多相关<计算机基础知识打字入门(1页珍藏版)>请在人人文库网上搜索. 1.计算机基础打字入门对于初学者而言,其实应该把打字作 ...

  9. 知识图谱入门 【八】- 语义搜索

    知识图谱入门 [一]- 认识图谱技术 知识图谱入门 [二]- 知识表示与知识建模 知识图谱入门 [三]- 知识抽取 知识图谱入门 [四]- 知识挖掘 知识图谱入门 [五]- 知识存储 知识图谱入门 [ ...

最新文章

  1. 栈和托管堆/值类型和引用类型/强制类型转换/装箱和拆箱[C#]
  2. java for循环乘法表_JAVA-for循环案例(冒泡、九九乘法表、素数、菱形)
  3. ds18b20c语言显示小数位,DS18B20多点测温(读序列,匹配序列,51单片机C程序,1602显示)...
  4. 测试python第二周_python第二周作业
  5. P7909 [CSP-J 2021] 分糖果 方法二
  6. javaScript语法基础
  7. Linux 入门笔记
  8. 天主教、新教、东正教
  9. Windows FindFirstFile利用
  10. EdgeRouterX配置option43使用华为AP连接远程AC的方法
  11. winxp下用ssh控制 linux 服务器
  12. mysql报错:1264-Out of range value for column ‘字段‘ at row 1
  13. 魔兽世界lua笔记(4、集合石插件修改,实现集合石亮灯hack)
  14. UOJ#310 【UNR #2】黎明前的巧克力:FWT
  15. 关于虚拟专用网的一些概念
  16. 二. 征服C指针:C如何使用内存
  17. MFC WebBrowser获取网面完整源码 WebBrowser获取网面完整HTML
  18. 2023美国大学生数学建模竞赛ABCDEF题思路汇总 美赛建模思路
  19. android期末大作业,Android代做,毕业设计,SQlLite数据库增删改查
  20. linux,/etc/passwd,/etc/shadow字段解释

热门文章

  1. 苹果itunes官方版 v11.2 中文版
  2. ocr大pk(阿里读光,百度,face++,有道)
  3. qrcodeplus PHP扩展,plus/qrcode.php · jake/alazixun - Gitee.com
  4. dedecms php_dedecms中使用php语句指南
  5. 力扣练习——31 有效的井字游戏
  6. 2012最新版 人教版pep小学英语 三年级上册 恋宇思涵英语点读软件
  7. 201871010128-杨丽霞《面向对象程序设计(java)》第四周学习总结
  8. Redis IO多路复用理解
  9. 计算机毕业设计Java家乡旅游文化推广网站(源码+系统+mysql数据库+lw文档)
  10. 国科大学习资料–模式识别--全面整理