ElasticSearch添加索引代码实例解析

作者:闲人鹤 时间:2023-11-21 03:41:04 

1. 编写索引内容

节点解释:

settings:配置信息

"number_of_replicas": 0 不需要备份(单节点的ElasticSearch使用)

"mappings": 映射内容

"dynamic":false 是否动态索引,这里使用的是false,表示索引的固定的,不需要修改。

"properties": 属性结构内容

"index":"true" 需要分词处理的结构

type对应的数据类型,text文本(长字符串),integer数字,date时间,keyword单词

elasticsearch 6.X版本的索引文件


{
"settings":{
 "number_of_replicas": 0
},
"mappings":{
 "house":{
  "dynamic":false,
  "properties":{
   "houseId":{"type":"long"},
   "title":{"type":"text", "index":"true"},
   "price":{"type":"integer"},
   "area":{"type":"integer"},
   "createTime":{"type":"date","format":"strict_date_optional_time||epoch_millis"},
   "lastUpdateTime":{"type":"date", "format":"strict_date_optional_time||epoch_millis"},
   "cityEnName":{"type":"keyword"},
   "regionEnName":{"type":"keyword"},
   "direction":{"type":"integer"},
   "distanceToSubway":{"type":"integer"},
   "subwayLineName":{"type":"keyword"},
   "subwayStationName":{"type":"keyword"},
   "tags":{"type":"text"},
   "district":{"type":"keyword"},
   "description":{"type":"text", "index":"true"},
   "layoutDesc":{"type":"text", "index":"true"},
   "traffic":{"type":"text", "index":"true"},
 "roundService": {"type": "text", "index": "true"},
   "rentWay":{"type":"integer"}
  }
 }
}
}

elasticsearch 7.X版本的索引文件


{
"settings":{
 "number_of_replicas": 0
},
"mappings":{
 "dynamic":false,
 "properties":{
  "title":{"type":"text", "index":"true"},
  "price":{"type":"integer"},
  "area":{"type":"integer"},
  "createTime":{"type":"date","format":"strict_date_optional_time||epoch_millis"},
  "lastUpdateTime":{"type":"date", "format":"strict_date_optional_time||epoch_millis"},
  "cityEnName":{"type":"keyword"},
  "regionEnName":{"type":"keyword"},
  "direction":{"type":"integer"},
  "distanceToSubway":{"type":"integer"},
  "subwayLineName":{"type":"keyword"},
  "subwayStationName":{"type":"keyword"},
  "tags":{"type":"text"},
  "district":{"type":"keyword"},
  "description":{"type":"text", "index":"true"},
  "layoutDesc":{"type":"text", "index":"true"},
  "traffic":{"type":"text", "index":"true"},
 "roundService": {"type": "text", "index": "true"},
  "rentWay":{"type":"integer"}
 }
}
}

2. 创建索引

使用Postmen发送创建索引请求

ElasticSearch添加索引代码实例解析

(1)地址栏后半段是索引名称

(2)请求使用的PUT方式,选择Body,raw形式,采用JSON格式发送

创建成功的显示结果:


{
 "acknowledged": true,
 "shards_acknowledged": true,
 "index": "house"
}

在ElasticSearch-Head里查看结果:

3. 创建索引时的报错:

错误1:Root mapping definition has unsupported parameters

原因:ElasticSearch7.X之后的版本默认不在支持指定索引类型,默认索引类型是_doc(隐含:include_type_name=false),所以在mappings节点后面,直接跟properties就可以了。

ElasticSearch添加索引代码实例解析

问题2:Could not convert [title.index] to boolean

原因:也是新版本的问题,之前版本的index属性写法是"analyze",现在只能设置true, false, "true","false"

来源:https://www.cnblogs.com/huanshilang/p/12616310.html

标签:ElasticSearch,添加,索引
0
投稿

猜你喜欢

  • Android Tab标签的使用基础

    2023-11-21 18:10:03
  • Flutter实现微信朋友圈功能

    2022-10-02 00:28:15
  • Java使用Thread和Runnable的线程实现方法比较

    2021-11-17 07:52:54
  • Android使用phonegap从相册里面获取照片(代码分享)

    2023-07-24 18:53:03
  • Android WebView实现顶部进度条

    2023-10-14 23:44:03
  • C#实现文件夹的复制和删除

    2023-02-18 00:54:22
  • C# 异步多线程入门到精通之ThreadPool篇

    2022-03-23 01:51:00
  • Fluent Mybatis零xml配置实现复杂嵌套查询

    2022-02-03 19:34:32
  • java的泛型你真的了解吗

    2022-07-25 09:40:06
  • C# websocket及时通信协议的实现方法示例

    2023-11-16 05:14:48
  • java 使用异常的好处总结

    2023-11-29 13:35:49
  • java Swing基础教程之图形化实例代码

    2023-06-30 03:15:20
  • 如何使用RequestHeaders添加自定义参数

    2023-01-10 17:37:14
  • 基于Ant路径匹配规则AntPathMatcher的注意事项

    2021-11-19 03:58:16
  • mybatis中<choose>标签的用法说明

    2023-07-22 19:37:27
  • C#正则表达式匹配HTML中的图片路径,图片地址代码

    2023-03-10 16:33:48
  • c++函数转c#函数示例程序分享

    2023-08-13 14:45:26
  • C#基于委托实现多线程之间操作的方法

    2022-07-16 23:58:16
  • Android Activity之间的数据传递方法总结

    2023-05-26 03:43:21
  • springboot添加https服务器的方法

    2022-08-19 06:14:31
  • asp之家 软件编程 m.aspxhome.com