国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔

這篇具有很好參考價值的文章主要介紹了微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

初識elasticsearch

什么是elasticsearch?

elasticsearch是一款非常強大的開源搜索引擎,可以幫助我們從海量數據中快速找到需要的內容。

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

elasticsearch結合kibana、Logstash、Beats,也就是elastic stack (ELK)。被廣泛應用在日志數據分析、實時監(jiān)控等領域

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

elasticsearch是elastic stack的核心,負責存儲、搜索、分析數據

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

elasticsearch的發(fā)展

Lucene是一個java語言的搜索引擎類庫,是Apache公司的頂級項目,由DougCutting于1999年研發(fā)官網地址: https://lucene.apache.org/

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

2004年shay Banon基于Lucene開發(fā)了Compass
2010年shay Banon 重寫了Compass,取名為Elasticsearch。
官網地址: https://www.elastic.co/cn/,它的優(yōu)點就是能夠被任何語言調用,發(fā)送http請求即可

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

正向索引和倒排索引

傳統(tǒng)數據庫(如MySQL)采用正向索引,例如給下表 (tb_goods)中的id創(chuàng)建索引

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

elasticsearch采用倒排索引:
文檔(document):每條數據就是一個文檔
詞條(term):文檔按照語義分成的詞語

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

什么是文檔和詞條?
每一條數據就是一個文檔
對文檔中的內容分詞,得到的詞語就是詞條
什么是正向索引?
基于文檔id創(chuàng)建索引。查詢詞條時必須先找到文檔,而后判斷是否包含詞條
什么是倒排索引?
對文檔內容分詞,對詞條創(chuàng)建索引,并記錄詞條所在文檔的信息。查詢時先根據詞條查詢到文檔id,而后獲取到文檔

文檔

elasticsearch是面向文檔存儲的,可以是數據庫中的一條商品數據,一個訂單信息。文檔數據會被序列化為json格式后存儲在elasticsearch中

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

索引(Index)

索引(index):相同類型的文檔的集合,相當于數據庫中的表

映射 (mapping):索引中文檔的字段約束信息,類似數據庫中表的結構約束

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

概念對比

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

架構

Mysql: 擅長事務類型操作,可以確保數據的安全和一致性

Elasticsearch: 擅長海量數據的搜索、分析、計算

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

部署單點es

1.創(chuàng)建網絡

因為我們還需要部署kibana容器,因此需要讓es和kibana容器互聯。這里先創(chuàng)建一個網絡

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

2.加載鏡像

這里我們采用elasticsearch的7.12.1版本的鏡像,這個鏡像體積非常大,接近1G。不建議大
家自己pull。課前資料提供了鏡像的tar包

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

大家將其上傳到虛擬機中,然后運行命令加載即可

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

同理還有kibana的tar包也需要這樣做

3.運行

運行docker命令,部署單點es

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

訪問本機ip+es的端口號,發(fā)現已經可以訪問,部署es容器成功

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

部署kibana

kibana可以給我們提供一個elasticsearch的可視化界面,便于我們學習

部署

運行docker命令,部署kibana

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

訪問本機ip+kibana端口

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

發(fā)現可以訪問kibana了,說明容器創(chuàng)建成功

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

可在控制臺編寫DSL語句訪問es

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

分詞器

es在創(chuàng)建倒排索引時需要對文檔分詞;在搜索時,需要對用戶輸入內容分詞。但默認的分詞規(guī)則對中文處理并不友好。我們在kibana的DevTools中測試

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

可以看到自帶的分詞器對中文的處理并不友好,都是一個字一個字的分

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

處理中文分詞,一般會使用IK分詞器。https://github.com/medcl/elasticsearch-analysis-ik

安裝IK分詞器,參考課前資料《安裝elasticsearch.md》

1.查看數據卷目錄

安裝插件需要知道elasticsearch的plugins目錄位置,而我們用了數據卷掛載,因此需要查看elasticsearch的數據卷目錄,通過下面命令查看

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

顯示結果,說明plugins目錄被掛載到了:/var/1ib/docker/volumes/es-plugins/_data這個目錄中

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

2.解壓縮分詞器安裝包

下面我們需要把課前資料中的ik分詞器解壓縮,重命名為ik

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

3.上傳到es容器的插件數據卷中

也就是/var/Tib/docker/voTumes/es-plugins/_data

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

4.重啟容器

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

5.測試

IK分詞器包含兩種模式,ik_smart:最少切分,ik_max_word:最細切分

可以看到使用ik_smart方式進行分詞后,中文詞語被成功切分,不再是一個一個字的被分開

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

使用ik_max_word方式分詞,則比如“程序員”被分開了,然而“程序”也是一個詞,就依然被弄成了一個詞條

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

比如說,網絡上流行的一些新的詞匯,比如“奧力給”我們也想將它弄成一個詞條,ik分詞器識別不出來怎么辦呢?用ik分詞器-拓展詞庫解決。

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

ik分詞器-拓展詞庫

要拓展ik分詞器的詞庫,只需要修改一個ik分詞器目錄中的config目錄中的IkAnalyzer.cfg.xml文件

在ext.dic文件中添加想要拓展的詞語即可,如果沒有該文件,則在該目錄下新建一個

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

ik分詞器-停用詞庫

要禁用某些敏感詞條,只需要修改一個ik分詞器目錄中的config目錄中的IkAnalyzer.cfg.xml文件

在stopword.dic文件中添加想要停用的詞語即可

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

重啟es容器

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

重新測試,我們可以看到我們添加的新的詞匯被ik分詞器識別,分成了獨立的詞條

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

分詞器的作用是什么?
創(chuàng)建倒排索引時對文檔分詞
用戶搜索時,對輸入的內容分詞
IK分詞器有幾種模式?
ik smart:智能切分,粗粒度
ik max word:最細切分,細粒度
IK分詞器如何拓展詞條?如何停用詞條?
利用config目錄的IkAnalyzer.cfg.xml文件添加拓展詞典和停用詞典
在詞典中添加拓展詞條或者停用詞條

操作索引庫

mapping屬性

mapping是對索引庫中文檔的約束,常見的mapping屬性包括
type:字段數據類型,常見的簡單類型有:
字符串:text (可分詞的文本)、keyword (精確值,例如:品牌、國家、ip地址)數值: long、integer、short、byte、double、float、布爾: boolean、日期: date、對象:object
index:是否創(chuàng)建索引,默認為true
analvzer:使用哪種分詞器
properties:該字段的子字段

創(chuàng)建索引庫

ES中通過Restful請求操作索引庫、文檔。請求內容用DSL語句來表示。創(chuàng)建索引庫和mapping的DSL語法如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

查看、刪除索引庫

查看索引庫語法

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

刪除索引庫的語法

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

修改索引庫

索引庫和mapping一旦創(chuàng)建無法修改,但是可以添加新的字段,語法如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

文檔操作

添加文檔

新增文檔的DSL語法如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

查看、刪除文檔

查看文檔語法

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

刪除文檔的語法

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

修改文檔

方式一:全量修改,會刪除舊文檔,添加新文檔

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

方式二:增量修改,修改指定字段值

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

RestClient操作索引庫

什么是RestClient?

ES官方提供了各種不同語言的客戶端,用來操作ES。這些客戶端的本質就是組裝DSL語句,通過http請求發(fā)送給ES。官方文檔地址: https://www.elastic.co/guide/en/elasticsearch/client/index.html

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

案例:利用JavaRestClient實現創(chuàng)建、刪除索引庫,判斷索引庫是否存在

根據課前資料提供的酒店數據創(chuàng)建索引庫,索引庫名為hotel,mapping屬性根據數據庫結構定義?;静襟E如下:
1,導入課前資料Demo
2.分析數據結構,定義mapping屬性
3.初始化avaRestClient
4.利用JavaRestClient創(chuàng)建索引庫
5.利用JavaRestClient刪除索引庫
6.利用JavaRestClient判斷索引庫是否存在

步驟1: 導入課前資料Demo

首先導入課前資料提供的數據庫數據

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

然后導入課前資料提供的項目

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

該項目已經提供好了對上述表的增刪改查等一些基本操作

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟2: 分析數據結構

mapping要考慮的問題:
字段名、數據類型、是否參與搜索、是否分詞、如果分詞,分詞器是什么

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

根據數據庫中該表的字段約束,編寫這個索引庫的mapping約束

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

在最后創(chuàng)建一個all,可以用來將所有分詞查詢的字段添加其中

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟3: 初始化JavaRestClient

1.引入es的RestHighLevelclient依賴

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

2.因為SpringBoot默認的ES版本是7.6.2,所以我們需要覆蓋默認的ES版本

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

3.初始化RestHighLevelClient

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

創(chuàng)建一個測試類,在啟動前初始化RestHighLevelClient,結束后,關閉該客戶端資源

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟4:創(chuàng)建索引庫

創(chuàng)建索引庫代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

創(chuàng)建一個常量類,在里面定義靜態(tài)變量MAPPING_TEMPLATE,也就是創(chuàng)建索引庫的DSL語句

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟5: 刪除索引庫、判斷索引庫是否存在

刪除索引庫代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

判斷索引庫是否存在

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

RestClient操作文檔

案例:利用JavaRestClient實現文檔的CRUD

去數據庫查詢酒店數據,導入到hotel索引庫,實現酒店數據的CRUD基本步驟如下:
1.初始化JavaRestClient
2.利用JavaRestClient新增酒店數據
3.利用avaRestClient根據id查詢酒店數據
4.利用JavaRestClient刪除酒店數據
5.利用lavaRestClient修改酒店數據

步驟1:初始化JavaRestClient

創(chuàng)建一個測試類,在啟動前初始化RestHighLevelClient,結束后,關閉該客戶端資源

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟2: 添加酒店數據到索引庫

先查詢酒店數據,然后給這條數據創(chuàng)建倒排索引,即可完成添加

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

添加到es索引庫中的酒店數據,里面的坐標與數據庫中的不一致,我們需要構建一個構造器,來讓數據庫中的類轉換成要存入索引庫中的這個類

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

將數據庫中查詢到的酒店數據,添加到es索引庫中去的代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

運行后,我們去查詢該文檔,可以查詢出結果,說明添加到索引庫成功

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟3: 根據id查詢酒店數據

根據id查詢到的文檔數據是json,需要反序列化為java對象

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

根據id查詢到的文檔代碼如下微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

運行后,控制臺輸出結果

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟4: 根據id修改酒店數據

修改文檔數據有兩種方式:
方式一:全量更新。再次寫入id一樣的文檔,就會刪除舊文檔,添加新文檔
方式二:局部更新。只更新部分字段,我們演示方式二

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

修改文檔數據代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

再次調用根據id查詢酒店數據的方法,發(fā)現查詢出的數據的price和starName已經被修改

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

步驟5: 根據id刪除文檔數據

刪除文檔代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

demo中刪除文檔代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

再調用根據id查詢酒店數據的方法,發(fā)現該條文檔已經查詢不到,說明刪除成功

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

案例:利用JavaRestClient批量導入酒店數據到ES

需求:批量查詢酒店數據,然后批量導入索引庫中
思路:
1.利用mybatis-plus查詢酒店數據
2.將查詢到的酒店數據 (Hotel) 轉換為文檔類型數據 (HotelDoc)
3,利用JavaRestClient中的Bulk批處理,實現批量新增文檔,示例代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

demo中的具體代碼如下

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端

查詢hotel索引庫的全部內容,發(fā)現所有酒店數據信息已經被導入進來

微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔,微服務,微服務,學習,elasticsearch,java,后端文章來源地址http://www.zghlxwxcb.cn/news/detail-801649.html

到了這里,關于微服務學習|初識elasticsearch、操作索引庫、文檔操作、RestClient操作索引庫、RestClient操作文檔的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • ElasticSearch之RestClient操作索引庫和文檔

    ElasticSearch之RestClient操作索引庫和文檔

    前言:上文介紹了使用DSL語言操作索引庫和文檔,本篇文章將介紹使用Java中的RestClient來對索引庫和文檔進行操作。 希望能夠加深自己的印象以及幫助到其他的小伙伴兒們????。 如果文章有什么需要改進的地方還請大佬不吝賜教????。 小威在此先感謝各位大佬啦~~????

    2024年02月06日
    瀏覽(21)
  • ElasticSearch基礎1——索引和文檔。Kibana,RestClient操作索引和文檔+黑馬旅游ES庫導入

    ElasticSearch基礎1——索引和文檔。Kibana,RestClient操作索引和文檔+黑馬旅游ES庫導入

    導航: 【黑馬Java筆記+踩坑匯總】JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外賣+SpringCloud/SpringCloudAlibaba+黑馬旅游+谷粒商城 黑馬旅游源碼:? https://wwmg.lanzouk.com/ikjTE135ybje 目錄 1.初識彈性搜索elasticsearch 1.1.了解ES 1.1.1.elasticsearch的作用 1.1.2.ELK彈性棧 1.1.3.elasticsearch和lucene 1.1.4.搜索引擎技術

    2024年02月01日
    瀏覽(50)
  • 微服務——操作索引庫+文檔操作+RestClient操作索引庫和文檔(java程序)

    微服務——操作索引庫+文檔操作+RestClient操作索引庫和文檔(java程序)

    mapping是對文檔的約束,常見約束屬性包括: 創(chuàng)建索引庫 ?如下所示,成功創(chuàng)建一個索引庫 ?在es中不允許修改索引庫,但可以添加新的字段 然后重新獲取就有新的字段出現了 在索引庫插入一個規(guī)定格式的數據就像在一個數據庫表里面插入一條數據。? ? 有兩種修改方式——全

    2024年02月13日
    瀏覽(43)
  • 【ElasticSearch】基于 Java 客戶端 RestClient 實現對 ElasticSearch 索引庫、文檔的增刪改查操作,以及文檔的批量導入

    【ElasticSearch】基于 Java 客戶端 RestClient 實現對 ElasticSearch 索引庫、文檔的增刪改查操作,以及文檔的批量導入

    ElasticSearch 官方提供了各種不同語言的客戶端,用來操作 ES。這些客戶端的本質就是組裝 DSL 語句,通過 HTTP 請求發(fā)送給 ES 服務器。 官方文檔地址:https://www.elastic.co/guide/en/elasticsearch/client/index.html。 在本文中,我們將著重介紹 ElasticSearch Java 客戶端中的 RestClient,并演示如何

    2024年02月08日
    瀏覽(29)
  • 【Elasticsearch篇】詳解使用RestClient操作索引庫的相關操作

    【Elasticsearch篇】詳解使用RestClient操作索引庫的相關操作

    Elasticsearch是一個開源的分布式搜索和分析引擎, 用于實時搜索、分析和存儲大規(guī)模數據 。它基于Apache Lucene庫構建,提供了一個簡單而強大的分布式搜索解決方案。 Elasticsearch具有以下特點: 分布式架構:Elasticsearch可以在多個節(jié)點上分布數據,并自動處理數據的復制、故障

    2024年01月24日
    瀏覽(25)
  • Elasticsearch --- RestAPI、RestClient操作文檔

    Elasticsearch --- RestAPI、RestClient操作文檔

    ES官方提供了各種不同語言的客戶端,用來操作ES。這些客戶端的本質就是組裝DSL語句,通過http請求發(fā)送給ES。官方文檔地址:Elasticsearch Clients | Elastic 其中的Java Rest Client又包括兩種: ? 創(chuàng)建數據庫 創(chuàng)建項目 mapping映射分析 創(chuàng)建索引庫,最關鍵的是mapping映射,而mapping映射要

    2024年02月07日
    瀏覽(35)
  • ElasticSearch學習2--索引和文檔的基礎操作

    ElasticSearch學習2--索引和文檔的基礎操作

    1、創(chuàng)建索引 ??????? 對ES的操作其實就是發(fā)送一個restful請求,kibana中在DevTools中進行ES操作 ??????? 創(chuàng)建索引時需要注意ES的版本,不同版本的ES創(chuàng)建索引的語句略有差別,會導致失敗 如下創(chuàng)建一個名為people的索引,settings,一些設置,mappings字段映射 我的版本是7.0之前

    2024年02月10日
    瀏覽(18)
  • Elasticsearch初識之索引的批量操作

    批量查詢和批量增刪改 批量查詢 批量寫入: 注意: bulk api對json的語法有嚴格的要求,除了delete外,每一個操作都要兩個json串(metadata和business data),且每個json串內不能換行,非同一個json串必須換行,否則會報錯; bulk操作中,任意一個操作失敗,是不會影響其他的操作的

    2024年02月02日
    瀏覽(14)
  • 微服務分布式搜索引擎 Elastic Search RestClient 操作文檔

    微服務分布式搜索引擎 Elastic Search RestClient 操作文檔

    本文參考黑馬 分布式Elastic search Elasticsearch是一款非常強大的開源搜索引擎,具備非常多強大功能,可以幫助我們從海量數據中快速找到需要的內容 初始化RestHighLevelClient 為了與索引庫操作分離,我們再次參加一個測試類,做兩件事情: 初始化RestHighLevelClient 我們的酒店數據

    2024年01月24日
    瀏覽(25)
  • Elasticsearch學習3-使用RestClient操作es

    JavaREST客戶端有兩種模式: Java Low Level REST Client:ES官方的低級客戶端。低級別的客戶端通過http與Elasticearch集群通信。 Java High Level REST Client:ES官方的高級客戶端。基于上面的低級客戶端,也是通過HTTP與ES集群進行通信。它提供了更多的接口。 此外Spring也對RestClient進行了封裝

    2024年02月11日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包