当前位置: 首页 > 科技观察

抱歉,你之前学的ElasticSearch是垃圾!

时间:2023-03-18 00:19:01 科技观察

本文转载自微信公众号“小明菜市场”,作者小明菜市场。转载本文请联系小明菜市场公众号。Sa即ElasticSearchElasticSearch是一个基于Lucene的搜索服务器,提供分布式多用户全文搜索引擎,基于RestFulApiweb界面,基于Java语言开发,在Apache许可下发布。可以对接多种语言,如Java、PhP、.net等快速入门创建索引库ES的索引库是一个逻辑概念,包括分词列表和文档列表,相当于MySql表和MongoDB收藏。基于RestfulAPI,使用puthttp://localhost:9200/索引库名,还需要设置需要的requestbody{"settings":{"index":{"number_of_shards":1,"number_of_replicas":0}}}number_of_shardspoints分片个数number_of_replicas副本个数同时也可以使用head插件新建索引。创建映射在索引中,每个文档包含一个或多个fieID。创建映射就是在索引库中创建fieIDs的过程。对比如下文档(Document)----------------行记录字段(Field)--------------------Columnscolumn其格式如下posthttp://localhost:9200/indexlibraryname/_mapping为xedu_course索引库创建对应的映射,包括三个字段:name:课程名称description:课程描述studymondel:课程状态head中查看创建一个文档相当于MySql中创建记录的格式如下:putorPosthttp://localhost:9200/indexlibraryname/_doc/idvalue#如果不指定id值,ES会自动生成一个ID。查看head中的搜索文档,根据课程id查询文档gethttp://192.168.116.129:9200/xedu_course/_doc/4028e58161bcf7f40161bcf8b77c0000查询所有记录gethttp://192.168.116.129:9200/xedu_course/_doc/_search查询名称中包含bootstrap关键字gethttp://192.192.192的记录。9200/xedu_course/_doc/_search?q=name:bootstrap查询学习模式为201001条记录gethttp://192.168.116.129:9200/xedu_course/_doc/_search?q=studymodel:201001Tokenizerindex逐一保存搜索时,使用关键字匹配索引中的值以查找相关文档。测试分词器posthttp://192.168.116.129:9200/_analyze{"text":"测试分词器,后面是测试内容:springcloud实战"}使用ik分词器实现中文分词posthttp:///192.168.116.129:9200/_analyze{"text":"测试分词器,后面是测试内容:springcloud实战","analyzer":"ik_max_word"}映射查询查询所有索引的映射gethttp://192.168.116.129:9200/_mappingCreateposthttp://localhost:9200/indexlibraryname/_mappingupdate可以添加字段,但不能更新已有字段Delete通过删除索引来删除映射