上一篇:ElasticSearch(8)—IK分词器
1.Rest风格介绍
method | url地址 | 方法描述 |
---|---|---|
PUT | localhost:9200/索引名称/类型名称/文档id | 创建一个指定id的文档 |
POST | localhost:9200/索引名称/类型名称 | 创建一个随机id的文档 |
POST | localhost:9200/索引名称/类型名称 /_search | 查询所有文档数据 |
POST | localhost:9200/索引名称/类型名称 /_update | 修改文档 |
GET | localhost:9200/索引名称/类型名称 /文档id | 查询指定id的文档 |
DELETE | localhost:9200/索引名称/类型名称 /文档id | 删除指定id的文档 |
使用Kibana插件和head插件来进行测试:
命令语法(可以使用postman/http/kibana执行命令):
操作类型(GET/PUT/POST/DELETE) /索引名称/类型名称/文档id
{
请求体
}
- 创建一个索引
在elasticsearch-head中查看:
2.字段类型(type)
在es中的数据类型有以下几种:
2.1 核心数据类型
- 字符串(text、keyword)
- 数值(long、integer、short、byte、double、float、half_float、scaled_float)
- 日期(date)
- 日期纳秒(date_nanos)
- 布尔(boolean)
- 二进制(binary)
- 范围(integer_range、float_range、long_range、double_range、date_range)
2.2 复杂数据类型
- 对象(object 用于单个JSON对象)
- 嵌套(nested 用于JSON对象数组)
2.3 地理数据类型
- Geo_point(用于表示lat/lon坐标点)
- Geo_shape(用于表示复杂形状(如多边形))
2.2 专门的数据类型
- IP(用于IPv4和IPv6地址)
- Completion(提供自动完成建议)
- 令牌数 (token_count 用于计算字符串中令牌数量)
……
ES有多种数据类型,但是我们一般最常使用的还是几种核心的数据类型。那如何指定ES中的字段数据类型呢?
类似于mysql建表一样,先创建一个index索引库同时指定字段使用的数据类型:
然后再使用es-head插件查看刚创建的index库:发现新建了一个index2,且该库中无数据。
库已经建好 了,字段的数据类型也指定好了,现在只需要向该库中插入数据就可以了:
再次使用es-head插件查看索引: