对不起,你以前学的 ElasticSearch 都是垃圾!

服务器
ElasticSearch 是一个基于 Lucene 的搜索服务器,其提供了一个分布式的多用户能力的全文搜索引擎,基于 RestFul Api Web 接口,基于 Java 语言开发,在 Apache 许可下发布。可以连接多种语言,例如Java,PhP,.net 等。

本文转载自微信公众号「小明菜市场」,作者小明菜市场 。转载本文请联系小明菜市场公众号。

撒是ElasticSearch

ElasticSearch 是一个基于 Lucene 的搜索服务器,其提供了一个分布式的多用户能力的全文搜索引擎,基于 RestFul Api Web 接口,基于 Java 语言开发,在 Apache 许可下发布。可以连接多种语言,例如Java,PhP,.net 等。

快速入门

创建索引库ES 的索引库是一个逻辑概念,包括分词列表和文档列表,相当于MySql的表,MongoDB的集合。基于Restful API 这样使用

 

  1. put http://localhost:9200/索引库名称 

同时需要设置需要的请求体

 

  1.     "settings":{  
  2.         "index":{ 
  3.             "number_of_shards":1, 
  4.             "number_of_replicas":0 
  5.         } 
  6.     } 

number_of_shards 分片数量 number_of_replicas 副本数量

同时,还可以使用 head 插件创建新的索引

 

创建映射

在索引中,每个文档都包含了一个或多个 fieID,创建映射就是在索引库中创建 fieID 的过程。其对比如下

 

  1. 文档(Document)----------------Row记录  
  2. 字段(Field)-------------------Columns列 

其格式如下

 

  1. post http://localhost:9200/索引库名称/_mapping 

为 xedu_course 索引库创建对应的映射,共包括三个字段:

name:课程名称 description:课程描述 studymondel:课程状态

 

在 head 中查看

 

创建文档

相当于创建 MySql 中的记录 其格式如下

 

  1. put 或 Post http://localhost:9200/索引库名称/_doc/id值  
  2. # 如果不指定id值ES会自动生成ID 

在 head 中查看

 

搜索文档

根据课程 id 查询文档

 

  1. get http://192.168.116.129:9200/xedu_course/_doc/4028e58161bcf7f40161bcf8b77c0000 

 

查询所有记录

 

  1. get http://192.168.116.129:9200/xedu_course/_doc/_search 

 

查询名称中包括 bootstrap 关键字的的记录

 

  1. get http://192.168.116.129:9200/xedu_course/_doc/_search?q=name:bootstrap 

查询学习模式为 201001 的记录

 

  1. get http://192.168.116.129:9200/xedu_course/_doc/_search?q=studymodel:201001 

分词器

索引中保存的是一个个的词,当去搜索的时候,使用关键字去匹配索引中的值,找到关联的文档。测试分词器

 

  1. post http://192.168.116.129:9200/_analyze 
  2. {"text":"测试分词器,后边是测试内容:spring cloud实战"

 

使用 ik 分词器实现中文词组分词

 

  1. post http://192.168.116.129:9200/_analyze  
  2. {"text":"测试分词器,后边是测试内容:spring cloud实战","analyzer":"ik_max_word" } 

映射

查询查询所有索引的映射

 

  1. get http://192.168.116.129:9200/_mapping 

 

创建

  1. post http://localhost:9200/索引库名称/_mapping 

更新可以添加字段,不能更新已有的字段

 

删除通过删除索引来删除映射

 

责任编辑:武晓燕 来源: 小明菜市场
相关推荐

2019-10-24 14:15:52

Python工具数据

2009-11-24 09:09:05

Chrome OS发布

2023-03-07 10:53:33

短信

2017-10-20 14:23:01

动态数据大数据数据采集

2013-05-20 16:30:37

移动应用App推广

2014-05-21 09:51:46

JavaFXJava8

2014-01-14 10:18:02

智能硬件CES2014升级系统

2020-06-09 15:18:48

数据库Python技术

2021-01-07 08:57:14

MySQL数据库索引

2018-06-15 15:17:30

文章区块链人工智能

2024-02-28 12:12:20

Pipeline数据机制

2023-11-13 22:27:53

Mapping数据库

2016-10-09 22:14:31

iPhone7苹果

2019-11-01 17:15:12

SQL数据开发

2020-08-17 17:21:30

备份数据数据库

2021-03-12 11:50:08

项目组件 API

2019-08-12 11:14:00

JVM垃圾对象

2024-07-10 11:40:15

2023-11-30 15:23:07

聚合查询数据分析

2023-11-13 12:48:32

语言DSL
点赞
收藏

51CTO技术栈公众号