25.ElasticSearch

发布时间 2023-03-24 23:26:48作者: lucsa

简介

Elastic是Lucene的封装,提供了REST API的操作接口。

基本概念

Index(索引)

动词:相当于MySql中的insert

名词:相当于Mysql中的Database

Type(类型)

再Index(索引)中可以定义一个或多个类型

相当于MySql的Table,每一种类型的数据放在一起

Document(文档)

保存在某个Index(索引)下的某个Type(类型)的一条数据(Docment),文档是JSON格式的

一个Docment(文档)相当于MySql的Table的一行数据

倒排索引

这就是为什么ElasticSearch检索起来比较快的原因:存了Docment(文档)的分词

下面举个例子:

比如我们要存储5条“文档”:1-红海行动,2-探索红海行动,3-红海特别行动,4-红海记录篇,5-特工红海特别探索

这5条“文档”存入到“类型”时会拆分单词存储为倒排索引:

 比如我们要检索“红海特别行动”时,会根据分词“红海”,“特别”,“行动”,检索到1,2,3,4,5这5个“文档”,但是检索到的这5个“文档”会根据相关性得分排序:

5的相关性得分是3,2的相关性得分是2,3的相关性得分是2,1的相关性得分是1,4的相关性得分是1

设置每个微服务的最大占用内存

我们在开发过程中,启动多个微服务后发现电脑内存被吃了很多,我们可以设置下每个微服务的最大占用内存,每个设置100M就完全够用了。

 

 给每一个微服务都设置下,在VM options输入: -Xmx100m