es
文章平均质量分 51
大叶子不小
这个作者很懒,什么都没留下…
展开
-
Elasticsearch教程(19) 详解mapping之keyword
比如ignore_above=4,”abc“,”abcd“,”abcde“都能存进ES,但是不能根据”abcde“检索到数据。通过上面结果能知道”abcde“已经存入ES,也可以搜索出来,但是不存在词项”abcde“,不能根据”abcde“作为词项进行检索。查看ES自动生成的mapping,name是text类型,其下还有子类型keyword,且"ignore_above" : 256。字段常用来精确查询,过滤,排序,聚合时,应设为keyword,而不是数值型。原创 2023-03-01 15:45:26 · 1055 阅读 · 0 评论 -
ES如何查询索引的全量数据
改动index.max_result_window参数值的大小,只能解决一时的问题,当索引的数据量持续增长时,在查询全量数据时还是会出现问题。而且会增加ES服务器内存大结果集消耗完的风险。同理,from为0,size为1000000时,ES进程执行查询操作的过程中确需要将1000000 条记录都加载到内存中再返回给调用方,也会对ES内存造成很大压力。尽管最后我们只取了10条数据返回给客户端,但ES进程执行查询操作的过程中确需要将(1000000 + 10)的记录都加载到内存中,可想而知对内存的消耗有多大。原创 2023-02-28 20:34:30 · 4682 阅读 · 0 评论 -
ElasticSearch修改分片数和副本数及增加字段
本文通过一个简单的案例,先创建索引库students1和索引库students2,在创建students2的语句中指定新的分片数,然后将students1中数据复制到students2中,实现重新索引,以达到修改索引库分片数的目的。ElasticSearch中的数据会被分别存储在不同的分片上,索引库的分片数量是在索引库创建的时候通过settings去设置的,如果不设置,分片数默认是5,分片数一旦确定就不能改变。索引库的情况修改创建索引库的命令,在实现重新索引之后,要将程序中的索引库指向新的索引库。原创 2023-02-28 20:32:28 · 3839 阅读 · 0 评论 -
es的使用与原理8 -- 初识es及es简单CRUD语法
为什么不能使用数据库做搜索?1、比方说,每条记录的指定字段的文本,可能会很长,比如说“商品描述”字段的长度,有长达数千个,甚至数万个字符,这个时候,每次都要对每条记录的所有文本进行扫描。你包不包含我指定的这个关键词(比如说“牙膏”)2、还不能将搜索词拆分开来,尽可能去搜索更多的符合你的期望的结果,比如输入“生化机”,就搜索不出来“生化危机”总的来说就是数据库来实现搜索,是不太靠谱的。通常来说,性能会很差的。(1)数据量较大,es的分布式本质,可以帮助你快速进行扩容,承载大量数据。原创 2023-02-15 15:12:52 · 419 阅读 · 0 评论