RestClient操作索引库(一)

发布时间:2023年12月29日

ES官方提供了各种不同语言的客户端,用来操作ES。这些客户端的本质就是组装DSL语句,
通过http请求发送给ES。

官方文档地址: https://www.elastic.co/quide/en/elasticsearch/client/index.html

目录

一、用JavaRestClient实现创建、删除索引库,判断索引库是否存在

1.1. 导入一个Demo数据库与工程项目

1.2. 分析数据结构

1.2.1?ES的copy to字段?


案例描述?

用JavaRestClient实现创建、删除索引库,判断索引库是否存在

案例实现

1.1. 导入一个Demo数据库与工程项目

sql数据库

?项目结构

1.2. 分析数据结构

mapping要考虑的问题
字段名、数据类型、是否参与搜索、是否公词、如果分词,分词器是什么??

1.2.1?ES的copy to字段?

copy_to字段是ES中的一个特殊字段,它允许将一个或多个字段的内容复制到一个新的字段中。这个新的字段可以用于特定的搜索需求,而不需要改变原始字段的映射。copy_to字段的使用可以帮助我们更灵活地进行搜索和分析

  • 使用“copy content"字段来进行全文搜索时,不需要考虑原始字段的映射,这样,我们可以在
  • 不改变原始字段的情况下,可以根据实际需求定义不同的搜索规则。
  • copy to字段还可以用于实现数据的冗余存储
  • copy to字段还可以用于实现数据的多字段索引

?字段拷贝可以使用copy_to属性将当前字段拷贝到指定字段。示例:

?示例

# 酒店的mapping

PUT? ?/hotel

{

????????"mappings":{

????????????????"properties":{

????????????????????????"id":{

????????????????????????????????"type":"keyword"

????????????????????????},
????????????????????????"name":{
????????????????????????????????"type":"text",

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "analyzer":"ik_max_word",

????????????????????????????????"copy_to":"all"

????????????????????????},

????????????????????????"address":{

????????????????????????????????"type":"keyword",

????????????????????????????????"index": false

? ? ? ? ? ? ? ? ? ? ? ? },

? ? ? ? ? ? ? ? ? ? ? ? "price":{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "type":"integer"

????????????????????????},
? ? ? ? ? ? ? ? ? ? ? ? "score":{

????????????????????????????????"type":"integer"

? ? ? ? ? ? ? ? ? ? ? ? },
????????????????????????"brand":{

????????????????????????????????"type" :"keyword",

????????????????????????????????"all":"copy_to"

? ? ? ? ? ? ? ? ? ? ? ? },
????????????????????????"city":{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "type":"keyword"

????????????????????????},

? ? ? ? ? ? ? ? ? ? ? ? "starName":{

????????????????????????????????"type":"keyword"

? ? ? ? ? ? ? ? ? ? ? ? },

????????????????????????"business":{

????????????????????????????????"type":"keyword",

????????????????????????????????"copy_to":"all"

? ? ? ? ? ? ? ? ? ? ? ? },? ? ??
????????????????????????"location":{

????????????????????????????????"type":"geo_point"

? ? ? ? ? ? ? ? ? ? ? ? },
????????????????????????"pic":{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "Ieyword":"type",

????????????????????????????????"index": false

? ? ? ? ? ? ? ? ? ? ? ? }
????????????????????????all":{

????????????????????????????????"type":"text",

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "analyzer":"ik_max_word"

? ? ? ? ? ? ? ? ? ? ? ? }

? ? ? ? ? ? ? ? }

? ? ? ? }

}

1.3?

文章来源:https://blog.csdn.net/m0_60769905/article/details/135285565
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。