es 创建索引报错_ES创建索引库/创建映射/文档操作(添加文档、搜索文档、更新文档、删除文档)/使用IK分词器/映射(映射字段类型)...

以下ES、ES_head都部署在linux系统中

一、创建索引库

ES的索引库是一个逻辑概念,它包括了分词列表及文档列表,同一个索引库中存储了相同类型的文档。它就相当于MySQL中的表,或相当于Mongodb中的集合。

关于索引这个语:

索引(名词):ES是基于Lucene构建的一个搜索服务,它要从索引库搜索符合条件索引数据。

索引(动词):索引库刚创建起来是空的,将数据添加到索引库的过程称为索引。

下边介绍两种创建索引库的方法,它们的工作原理是相同的,都是客户端向ES服务发送命令。

第一种:使用postman或curl这样的工具创建:

put http://服务器ip:9200/索引库名称 #注意不能使用post

{"settings":{"index":{"number_of_shards":1,"number_of_replicas":0}

}

}

下面使用postman创建的例子

第二种:使用es_head创建

二、创建映射

1.概念说明:

在索引中每个文档都包括了一个或多个field(一行记录中包含一个或多个字段),创建映射就是向索引库中创建field的过程,下边是document和field与关系数据库的概念的类比:

文档(Document)----------------Row 行记录(数据库记录)

​ 字段(Field)-------------------Columns 列

上边讲的创建索引库相当于关系数据库中的数据库还是表?

1、如果相当于数据库就表示一个索引库可以创建很多不同类型的文档,这在ES中也是允许的。

2、如果相当于表就表示一个索引库只能存储相同类型的文档,ES官方建议 在一个索引库中只存储相同类型的文档。

2.创建映射

创建映射语法

post http://服务器ip:9200/索引库名称/类型名称/_mapping

由于ES6.0版本还没有将type(类型名称)彻底删除,所以暂时把type起一个没有特殊意义的名字。ES9.0版本把type彻底删除

使用postman创建的例子

post http://服务器ip:9200/es_wcc/doc/_mapping #在es_wcc索引库下的doc类型下创建映射

映射内容     创建映射,三个字段:name/description/studymodel

{"properties": {"name": {"type": "text"},"description": {"type": "text"},"studymodel": {"type": "keyword"}

}

}

映射创建成功,查看es_head页面

三、文档操作

添加文档

ES中文档相当于MySQL数据库表中的记录。

添加文档语法

put 或Post http://服务器ip:9200/es_wcc/doc/id值 #如果不指定id值ES会自动生成id,id值可以随便设置,如果id值重复了,就是修改之前的数据,不是创建 ******

使用postman创建示例   (这里没有设置id值,随机生成id值)

post http://101.132.167.242:9200/es_wcc/doc

{"name":"Bootstrap开发框架","description":"Bootstrap是由Twitter推出的一个前台页面开发框架,在行业之中使用较为广泛。此开发框架包含了大量的CSS、JS程序代码,可以帮助开发者(尤其是不擅长页面开发的程序人员)轻松的实现一个不受浏览器限制的精美界面效果。","studymodel":"201001"}

通过es_head查看数据

搜索文档

1.根据id查询数据

查询语句

get http://101.132.167.242:9200/es_wcc/doc/r3kAcnUB3x_-S6cmA9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值