一口氣看完es(上)

此系列博客分為上中下3篇:上篇是關于es的概念和對數據的增刪改操作,中篇是對數據的查詢、對搜索結果進行處理操作,下篇是介紹怎么在Java代碼中調用和操作es。

基本概念

1、es是什么?有什么作用?

es全名是elasticsearch,是一個搜索引擎,可以幫助我們從海量數據中找到想要的內容。比如:
(1)先將商品信息存到es里,然后當搜索名稱帶有“蘋果”的商品時,es就能將“紅富士蘋果”、“煙臺蘋果”等符合條件的商品篩選出來了。當然,mysql中使用like語句也能篩選出來,只是性能低。
(2)還可以用于搜集日志

es的官方文檔:
https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-match-all-query.html

2、es能干點啥?

1、關鍵字的搜索和分頁
2、添加過濾條件:品牌、城市、星級、價格等。

  • city(城市)、brand(品牌)、starName(星級)的精確匹配
  • price(價格)的范圍過濾

3、按距離排序
顯示具體的距離值

4、讓指定的酒店在搜索結果中排名置頂
我們給需要置頂的酒店文檔添加一個標記。然后利用function score給帶有標記的文檔增加權重。

5、關鍵詞高亮

3、es的原理?

倒排索引。對文檔內容分詞,對詞條創建索引,并記錄詞條所在文檔的信息。查詢時先根據詞條查詢到文檔id,而后獲取文檔。

4、es中的一些概念

文檔:一條條的JSON數據,對應數據庫中的行
字段:JSON數據中的字段,對應數據庫中的列
索引:相同類型的文檔的集合,對應數據庫中的表
映射:數據字段類型的約束等,對應數據庫的表結構
在這里插入圖片描述

索引庫操作

1、type常見的有哪些?

字符串:text、keyword
數字:long、integer、short、byte、double、float
布爾:boolean
日期:date
對象:object

2、創建索引庫和mapping

3、查看、刪除索引庫

get /student

//查看索引庫
get /student//刪除索引庫
delete /student

4、索引庫和mapping一旦創建無法修改,但是可以添加新的字段

//添加成績字段
put /student/_mapping
{"properties": {"score": {"type": "integer"}}
}
操作文檔

1、新增數據
在這里插入圖片描述

2、刪除數據

DELETE /索引庫名/_doc/文檔id

3、修改數據
在這里插入圖片描述

4、查詢數據
此部分在中篇

結尾:值得一提的是,用Java代碼也可以來操作es,但如果僅是對索引和文檔的修改,直接使用elk即可,方便快捷

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/17060.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/17060.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/17060.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

關于0成本部署個人博客

分享一個文章關于零成本搭建個人博客 參考:‘關于部署博客hexoshokagithub的流程以及問題’ - 關于博客部署 | XiaoYang Guo Welcome to Guo Xiaoyangs personal blog 歡迎來到郭曉陽的個人博客 (1330303.github.io) 這個博主講的流程很全,而且回答也…

智慧管廊巡檢運維解決方案

一、智慧管廊巡檢行業目前存在的挑戰和難題 智慧管廊巡檢行業面臨著運行環境的客觀影響,如地面施工、液體滲漏、通風不佳、內部空間受限等問題。而管廊巡檢機器人系統的出現卻具有重大意義。它能夠有力地保障管廊安全且可靠地運行,在面對火情、災情等緊…

springboot基礎篇(快速入門+要點總結)

目錄 一、SpringBoot簡介 二、創建SpringBoot(通過Idea腳手架搭建項目) 三、properties配置文件 properties 配置文件說明 ①. properties 基本語法 ②. 讀取配置?件 ③. properties 缺點 2. yml 配置?件說明 ①. yml 基本語法 ②. yml 使用進…

上海AI lab發布MathBench,GPT-4o的數學能力有多強?

大模型數學能力哪家強? 最近,上海AI lab構建了一個全面的多語言數學基準——MathBench。與現有的基準不同的是,MathBench涵蓋從小學、初中、高中、大學不同難度,從基礎算術題到高階微積分、統計學、概率論等豐富類別的數學題目&a…

React項目知識積累(五)

1.dispatch、dev派發 src/models/formStatus.js: const FromStatusModel {namespace: "fromStatus",state: {isDisable: false,},reducers: {saveIsDisable(state, { payload }) {return {...state,...payload,};},}, };export default FromStatusModel; 改變和提…

【Linux】升級make(版本4.4.1)、升級gdb(版本14.1)、升級autoconf(版本2.71)

centos7升級make(版本4.4.1): make:編譯和構建工具。Linux中很多軟件包需要make編譯構建。官網:Make - GNU Project - Free Software Foundation 本次升級前的make版本是3.82,準備安裝的版本是4.4.1。make…

【Delphi 開箱即用 4】動態切換主題皮膚(明亮 or 暗黑)

Delphi的原始窗口界面看起來并不夠吸引人。嘗試下載并安裝第三方皮膚可能會導致應用程序尺寸急劇增加,并且可能會出現不穩定的情況。事實上,Delphi自帶了皮膚功能,完全可以滿足我們對窗口界面的美化需求,并且還支持動態切換皮膚。…

Hive的Sort by Order by Distribute by Cluster by

sort by是分區內排序,一個Reduce對一個Map的數據排序,效率高。 order by是全局排序,一個Reduce對所有Map內的數據排序,效率低。 distribute by 是對數據分區,根據字段哈希值取模來劃分到不容的MR內。注意哈希碰撞 哈…

Python I/O操作筆記

打開文件: 使用 open() 函數,其中文件路徑可以是相對路徑或絕對路徑。 模式除了常見的 r(只讀)、w(寫入,會覆蓋原有內容)、a(追加)外,還有一些其他組合模式&…

基于springboot實現旅游管理系統項目【項目源碼+論文說明】計算機畢業設計

基于springboot實現旅游管理系統演示 摘要 現代經濟快節奏發展以及不斷完善升級的信息化技術,讓傳統數據信息的管理升級為軟件存儲,歸納,集中處理數據信息的管理方式。本旅游管理系統就是在這樣的大環境下誕生,其可以幫助使用者在…

周報 | 24.5.20-24.5.26文章匯總

為了更好地整理文章和發表接下來的文章,以后每周都匯總一份周報。 OpenCV與AI深度學習 | YOLOv8自定義數據集訓練實現火焰和煙霧檢測(代碼數據集!)-CSDN博客 周報 | 24.5.13-24.5.19文章匯總-CSDN博客 DeepDriving | 目標檢測中…

來自Java的“菱形繼承“,你聽說過嗎?

一、菱形繼承的概念 菱形繼承又叫做鉆石繼承,指的是不同的類同時繼承自相同的父類,存在一個子類同時繼承這些不同的類,即我們常說的“多繼承”問題。 例如:B類和C類分別繼承A類,而D類同時繼承B類和C類。 如此圖所示 二…

Oladance、韶音、南卡開放式耳機選哪個?2024年主流產品硬核測評!

近期,不少朋友向我咨詢關于挑選開放式耳機的建議,希望找到既適合自己又具有高品質的選項。鑒于市場上開放式耳機品牌繁多,每款產品在音質、佩戴感受及整體性能上的表現各有千秋,正確選擇一款耳機成為了音樂愛好者們關注的焦點。錯…

R繪圖學習筆記

1、R語言繪制海岸線邊界 參考: Drawing beautiful maps programmatically with R, sf and ggplot2 — Part 1: Basics 使用R繪制世界地圖及緯度統計圖 Drawing maps with R. A basic tutorial:https://dr2blog.hcommons.org/2020/03/23/drawing-maps-wit…

【408精華知識】指令字長、存儲字長、機器字長大總結!

文章目錄 一、三種字長二、三種字長之間的關系三、三種字長與部件位數之間的關系 一、三種字長 機器字長:等于字長,CPU一次能夠處理的數據的位數。通常等于寄存器、ALU的位數。例子:windows 64位/32位,這里的64位和32位指的就是該…

Pycharm最新安裝教程(最新更新時間2024年5月27日)

ps:本教程Pycharm安裝,最新更新時間:2024年5月27日,公眾號持續更新關注公眾號防失聯哦 Pycharm 再次更新了一個小版本。又回到老話題,2023.3.2這個版本是否還能安裝,筆者也親測了一下。還是沿用本站之前的…

Livox-SDK2 用vs2017編譯

Livox-SDK2 Livox-SDK2代碼去上面下載,文章中給出的是用vs2019進行編譯的,生成項目時用的 > cmake .. -G "Visual Studio 16 2019" -A x64 但如果我想用vs2017進行編譯,那么只需要將上面語句改為如下: cmake .. -…

企業網絡中的網絡故障排除

目錄 什么是網絡故障排除? 企業網絡中常見的網絡問題 網絡故障排除的步驟 1. 確認問題 2. 數據收集 3. 分析和診斷 4. 實施解決方案 5. 驗證和監控 常用的網絡故障排除工具 如何預防網絡故障 結論 在當今高度互聯的企業環境中,網絡的可靠性和…

PostgreSQL的擴展(extensions)-常用的擴展之pg_store_plans

PostgreSQL的擴展(extensions)-常用的擴展之pg_store_plans pg_store_plans 是一個 PostgreSQL 擴展,用于捕獲查詢執行計劃(execution plans)并將其存儲在數據庫中。通過存儲和分析這些執行計劃,數據庫管理…

Spring IOC容器與Bean管理詳解

一.IOC與DI 1. 傳統的開發方式區別 對象直接引用導致對象硬性關聯,程序難以擴展維護 loC容器是Spring生態的地基,用于統─創建與管理對象依賴 2. Spring IOC 控制反轉 loC控制反轉,全稱Inverse of Control,是一種設計理念 由代理人來創建與管理對象,消費者通…