精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一文講透Elasticsearch倒排索引與分詞

開發 前端
本篇詳細講透Elasticsearch倒排索引與分詞。

 [[354990]]

1 倒排索引

1.1 書的目錄和索引

正排索引即目錄頁,根據頁碼去找內容


倒排索引即索引頁,根據關鍵詞去找對應頁碼


1.2 搜索引擎

  • 正排索引

          文檔Id =》文檔內容、單詞的關聯關系

  • 倒排索引

           單詞 =》 文檔Id的關聯關系

  • 左:正排索引 =》 右:倒排索引

倒排索引查詢流程

查詢包含"搜索引擎”的文檔

  1. 通過倒排索引獲得"搜索引擎”對應的文檔Id有1和3
  2. 通過正排索引查詢1和3的完整內容
  3. 返回最終結果

1.3 倒排索引的組成

1.3.1 單詞詞典( Term Dictionary )

倒排索引的重要組成

  • 記錄所有文檔的單詞 ,一般都比較大
  • 記錄單詞到倒排列表的關聯信息

單詞字典的實現一般是用B+ Tree ,示例如下


1.3.2 倒排列表( Posting List )

記錄了單詞對應的文檔集合,由倒排索引項( Posting )組成。

倒排索引項( Posting )主要包含如下信息:

  • 文檔Id ,用于獲取原始信息
  • 單詞頻率( TF, Term Frequency ),記錄該單詞在該文檔中的出現次數,用于后續相關性算分
  • 位置( Position)
  • 記錄單詞在文檔中的分詞位置(多個) , 用于做詞語搜索( Phrase Query )
  • 偏移( Offset )

記錄單詞在文檔的開始和結束位置,用于做高亮顯示

案例

以搜索引擎為例


單詞字典與倒排列表整合在一起的結構


ES存儲的是JSON格式文檔,其中包含多個字段,每個字段都有自己的倒排索引。

2 分詞

將文本轉換成一系列單詞的過程,也稱文本分析,在 ES 里稱為 Analysis。

比如文本【JavaEdge 是最硬核的公眾號】,分詞結果是【JavaEdge、硬核、公眾號】

2.1 Analyzer-分詞器

分詞器是 ES 專門處理分詞的組件,組成如下:

2.1.1 Character Filters

在Tokenizer之前對原始文本進行處理,比如增加、刪除或替換字符等。

針對原始文本進行處理,比如去除 html 特殊標記符,自帶的如下:

  • HTML Strip 去除 html 標簽和轉換 html 實體
  • Mapping 進行字符替換操作
  • Pattern Replace 進行正則匹配替換

會影響后續tokenizer解析的postion和offset信息


2.1.2 Tokenizer

將原始文本按照一定規則切分為單詞,內置:

  • standard 按單詞進行分割
  • letter 按非字符類進行分割
  • whitespace 按空格進行分割
  • UAX URL Email 按 standard 分割,但不會分割郵箱和 url
  • NGram 和 Edge NGram 連詞分割
  • Path Hierachy 按文件路徑進行分割

示例:

POST _analyze{ "tokenizer":"path_hierarchy", "text":"/one/two/three"}


2.1.3 Token Filters

針對 tokenizer 處理的單詞進行再加工,比如轉小寫、刪除或新增等處理,內置:

  • lowercase 將所有 term 轉換為小寫
  • stop 刪除 stop words
  • NGram 和 Edge NGram 連詞分割
  • Synonym 添加近義詞的 term

示例

  1. // filter 可以有多個 
  2. POST _analyze 
  3.     "text":"a Hello world!"
  4.     "tokenizer":"standard"
  5.     "filter":[ 
  6.     "stop", // 把 a 去掉了 
  7.     "lowercase",// 小寫 
  8.     { 
  9.         "type":"ngram"
  10.         "min_gram":"4"
  11.         "max_gram":"4" 
  12.     } 
  13.     ] 
  14. // 得到 hell、ello、worl、orld 

 

分詞器的調用順序


3 Analyze API

ES 提供了一個測試分詞的 API 接口,方便驗證分詞效果,endpoint 是 _analyze:

3.1 指定 analyzer

request

  1. POST _analyze 
  2.     "analyzer":"standard", # 分詞器 
  3.     "text":" JavaEdge 公眾號" # 測試文本 

response

  1.   "tokens" : [ 
  2.     { 
  3.       "token" : "java", # 分詞結果 
  4.       "start_offset" : 1, # 起始偏移 
  5.       "end_offset" : 5, # 結束偏移 
  6.       "type" : "<ALPHANUM>"
  7.       "position" : 0 # 分詞位置 
  8.     }, 
  9.     { 
  10.       "token" : "edge"
  11.       "start_offset" : 6, 
  12.       "end_offset" : 10, 
  13.       "type" : "<ALPHANUM>"
  14.       "position" : 1 
  15.     } 
  16.   ] 

 

3.2 指定索引中的字段

  1. POST  測試的索引/_analyze   
  2.     "field":"username", # 測試字段 
  3.     "text":"hello world" # 測試文本 

  

3.3 自定義分詞器

  1. POST _analyze 
  2.     "tokenizer":"standard"
  3.     "filter":["lowercase"], # 自定義 
  4.     "text":"hello world" 

之前的默認分詞器大寫

 

自定義小寫分詞器


4 內置分詞器

Standard Analyzer

默認分詞器,按詞切分,支持多語言,小寫處理

Simple Analyzer

按照非字母切分,小寫處理


Whitespace Analyzer

按空格切分


Stop Analyzer

Stop Word 指語氣助詞等修飾性詞語,比如 the、an、的、這等等,特性是相比 Simple Analyzer 多 Stop Word 處理

  

keyword Analyzer

不分詞,直接將輸入作為一個單詞輸出

 

Pattern Analyzer

通過正則表達式自定義分隔符,默認 \W+,即非字詞的符號為分隔符


 Language Analyzer

提供了 30+ 常見語言的分詞器

5 中文分詞

將一個漢字序列切分成一個個單獨的詞。在英文中,單詞之間是以空格作為自然分界符,漢語中詞沒有一個形式上的分界符。而且中文博大精深,上下文不同,分詞結果也大不相同。

比如:

  • 乒乓球拍/賣/完了
  • 乒乓球/拍賣/完了

以下是 ES 中常見的分詞系統:

IK

實現中英文單詞的切分,可自定義詞庫,支持熱更新分詞詞典

jieba

python 中最流行餓分詞系統,支持分詞和詞性標注,支持繁體分詞,自定義詞典,并行分詞

以下是基于自然語言處理的分詞系統:

Hanlp

由一系列模型與算法組成的 java 工具包,支持索引分詞、繁體分詞、簡單匹配分詞(極速模式)、基于 CRF 模型的分詞、N- 最短路徑分詞等,實現了不少經典分詞方法。目標是普及自然語言處理在生產環境中的應用。

https://github.com/hankcs/HanLP

THULAC

  • THU Lexical Analyzer for Chinese ,由清華大學自然語言處理與社會人文計算

           實驗室研制推出的一套中文詞法分析工具包,具有中文分詞和詞性標注功能

            https://github.com/microbun/elasticsearch-thulac-plugin

6 自定義分詞器

當自帶的分詞無法滿足需求時,可以自定義分詞器,通過定義 Character Filters、Tokenizer、Token Filter 實現。自定義的分詞需要在索引的配置中設定,示例如下所示:

自定義如下分詞器


  1. // 自定義分詞器 
  2. PUT test_index_name 
  3.   "settings":{  
  4.     "analysis":{ 
  5.       "analyzer":{ 
  6.         "my_customer_analyzer":{ 
  7.           "type":"custome"
  8.           "tokenizer":"standard"
  9.           "char_filter":["html_strip"], 
  10.           "filter":["lowercase""asciifolding"
  11.         } 
  12.       } 
  13.     } 
  14.   } 
  15.  
  16. // 測試自定義分詞器效果: 
  17. POST test_index/_analyze 
  18.   "tokenizer":"keyword"
  19.   "char_filter":["html_strip"], 
  20.   "text":"Is this <b>a box</b>?" 
  21.  
  22. // 得到 is、this、a、box 

7 分詞使用說明

分詞會在如下兩個時機使用:

創建或者更新文檔時(Index Time)

會對相應的文檔進行分詞處理

索引時分詞是通過配置Index Mapping中每個字段的analyzer屬性實現的。不指定分詞時,使用默認standard。

查詢時(Search Time)

會對查詢語句進行分詞。查詢時分詞的指定方式:

  • 查詢的時候通過analyzer指定分詞器
  • 通過index mapping設置 search_analyzer 實現

分詞的最佳實踐

  • 明確字段是否需要分詞,不需要分詞的字段就將 type 設置為 keyword,可以節省空間和提高寫性能。
  • 善用 _analyze API,查看文檔的具體分詞結果
  • 多動手測試

參考

  • https://blog.csdn.net/weixin_38118016/article/details/90416391
  • https://mp.weixin.qq.com/s?__biz=MzU1NDA4NjU2MA==&mid=2247486148&idx=1&sn=817027a204650763c1bea3e837d695ea&source=41#wechat_redirect

 【編輯推薦】

 

責任編輯:姜華 來源: JavaEdge
相關推薦

2020-03-26 09:18:54

高薪本質因素

2025-01-13 12:00:00

反射Java開發

2024-08-13 17:09:00

架構分庫分表開發

2020-08-04 10:56:09

進程線程協程

2020-07-16 09:02:45

aPaaS云計算aPaaS平臺

2021-01-18 13:05:52

Serverless Serverfull FaaS

2023-11-09 08:41:25

DevOpsAIOps軟件

2023-05-04 08:24:52

ChatGPT產品經理工業革命

2024-05-31 13:23:19

OceanBase單機版架構

2024-08-07 10:54:59

正則表達式Java RegexJava

2025-10-10 07:55:23

檢索搜索架構

2020-05-20 09:55:42

Git底層數據

2025-10-30 00:55:00

AIAgent分布式

2024-11-07 22:57:30

2024-07-10 12:00:42

2025-08-28 02:15:00

CAPMySQL架構

2025-07-09 03:10:00

倒排索引檢索

2021-06-29 12:10:00

CRC校驗碼C語言

2025-10-27 05:00:00

2021-12-13 01:40:29

ElasticSear倒排索引
點贊
收藏

51CTO技術棧公眾號

高清av免费一区中文字幕| 国产亚洲成精品久久| 日b视频免费观看| 欧美视频xxx| 久久只有精品| 久久成人精品视频| 亚洲第九十七页| 欧美成人高清视频在线观看| 亚洲一区二区在线视频| 欧洲精品一区色| 国产美女自慰在线观看| 国产精品久久久久9999高清| 色av中文字幕一区| 中文字幕免费高清视频| 69堂免费精品视频在线播放| 亚洲国产精品天堂| 视频一区视频二区视频| 亚洲乱色熟女一区二区三区| 丝瓜av网站精品一区二区| 欧美高清在线视频观看不卡| 国产亚洲精品精品精品| 懂色av一区二区| 国产一区二区三区不卡视频网站| 伊人久久成人| 在线日韩av观看| 色综合久久五月| **国产精品| 色综合色综合色综合| 国产a级黄色大片| 欧美激情二区| 国产欧美精品一区二区色综合| 97视频资源在线观看| 中文字幕在线播出| 亚洲欧美成人综合| 国内精品400部情侣激情| 亚洲天堂黄色片| 不卡在线一区二区| 亚洲视频欧洲视频| 好吊日免费视频| 国产主播性色av福利精品一区| 欧美一区二区三区在| www.激情小说.com| 91tv亚洲精品香蕉国产一区| 五月婷婷久久丁香| 久久人人爽人人爽人人av| 午夜激情视频在线| 欧美国产日本视频| 日韩一区不卡| 国产福利小视频在线观看| 2023国产精品自拍| 久久伦理网站| 视频午夜在线| 91视频一区二区三区| 国内视频一区| 色一情一乱一区二区三区| 夫妻av一区二区| 国产精品青青草| 国产 欧美 自拍| 成人小视频在线| 国产尤物99| 天堂在线中文字幕| 久久这里只有精品6| 明星裸体视频一区二区| 色综合成人av| 国产清纯白嫩初高生在线观看91| 女同一区二区| 第九色区av在线| 日本一区二区三区免费乱视频| 日韩av电影免费在线观看| 国产人成在线观看| 国产精品网站在线播放| 中文字幕一区二区三区四区五区| 黄色在线免费看| 一区二区三区在线看| 亚洲国产精品无码观看久久| 黄频免费在线观看| 色婷婷综合五月| 亚洲va综合va国产va中文| 精品视频成人| 欧美精品一区二区在线观看| 国产精品无码电影| 国产精品一区二区av交换| 最近2019中文字幕第三页视频| 四虎地址8848| 国产在线日韩| 欧洲美女免费图片一区| 高清乱码免费看污| 黑人巨大精品欧美一区| 国产精品国模大尺度私拍| 色视频在线观看福利| 国产精品私人影院| 日本高清视频免费在线观看| 理论片午夜视频在线观看| 色婷婷综合久久久中文一区二区| av免费一区二区| 岛国精品一区| 中国人与牲禽动交精品| 精品爆乳一区二区三区无码av| 国产精品久久久免费| 国产精品视频久| 蜜桃视频久久一区免费观看入口 | 97人人爽人人喊人人模波多 | 污污视频在线| 色欧美88888久久久久久影院| 一二三av在线| 竹菊久久久久久久| 久久69精品久久久久久久电影好 | 欧美一区二区三区四区在线观看地址 | 高清不卡在线观看| 亚洲人成网站在线观看播放| av丝袜在线| 欧美精品在线观看一区二区| 五月开心播播网| 正在播放日韩欧美一页| 国产99视频精品免视看7| 丰满人妻一区二区三区免费| 中文在线资源观看网站视频免费不卡| 国产精品国三级国产av| 91精品国产经典在线观看| 国内精品久久久久久久影视简单| 亚洲成人福利片| 色综合五月婷婷| 女厕嘘嘘一区二区在线播放| 久久91亚洲精品中文字幕| 国产偷人爽久久久久久老妇app| 成人av在线播放网站| a级黄色片网站| 免费污视频在线一区| 日韩精品亚洲元码| 国产精品9191| 国产激情一区二区三区桃花岛亚洲| 日本一区二区三区免费观看| 精精国产xxxx视频在线野外| 欧美一级久久久久久久大片| 欧美性猛交xxxx乱大交少妇| 午夜亚洲精品| 蜜桃传媒视频第一区入口在线看| 美洲精品一卡2卡三卡4卡四卡| 欧美日韩在线播| 欧美福利第一页| 久久亚洲美女| 日本一区二区免费看| 亚洲天堂电影| 亚洲视频第一页| 永久免费无码av网站在线观看| 99久久精品国产导航| 日韩视频免费播放| 加勒比色老久久爱综合网| 久久久免费观看视频| 丰满肉嫩西川结衣av| 亚洲中国最大av网站| 国产人妖在线观看| 亚洲影视一区| 99国产超薄肉色丝袜交足的后果| www.久久久久.com| 日韩精品一区二区三区在线播放 | 欧美日韩一区二区区别是什么| 天天射天天综合网| 91久久在线观看| 最新国产在线拍揄自揄视频| 日韩免费高清视频| 豆国产97在线 | 亚洲| www.亚洲色图.com| 97在线播放视频| 精品日本12videosex| 国产精品一区电影| 黄色免费在线看| 欧美va在线播放| 亚欧视频在线观看| 国产欧美日韩卡一| 日韩av影视大全| 欧美私人啪啪vps| 久久久影院一区二区三区| 日韩国产网站| www.久久撸.com| 成人午夜免费在线观看| 精品久久久久久久久久久| 精品人妻互换一区二区三区| 精品中文字幕一区二区小辣椒| 青青在线视频免费观看| 欧美激情极品| 国产精品美女久久久免费| 91在线中文| 日韩精品在线观看一区二区| 亚洲自拍偷拍另类| 亚洲国产精品影院| 国产黄色大片免费看| 国产精品亚洲成人| 日日碰狠狠躁久久躁婷婷| 99欧美视频| 精品一区久久久| 亚洲免费资源| 韩国三级日本三级少妇99| 成a人片在线观看www视频| 欧美videos中文字幕| 国产情侣小视频| 一级女性全黄久久生活片免费| 国产麻豆天美果冻无码视频 | 亚洲综合最新在线| 欧美日韩国产观看视频| 久久国产视频网站| 免费观看成年在线视频网站| 欧美一级黄色录像| 亚洲男人天堂网址| 婷婷成人激情在线网| 精品国产国产综合精品| 26uuu另类欧美| 免费看的av网站| 蜜臀精品久久久久久蜜臀| 97视频久久久| 午夜影院欧美| 日本不卡一区| 秋霞影视一区二区三区| 国产成人在线看| 日本一区美女| 精品三级av在线导航| 成人免费激情视频| 亚洲综合在线电影| 91超碰caoporn97人人| 亚洲第一图区| 日韩在线视频导航| 国产在线视频你懂得| 精品调教chinesegay| 成人午夜免费福利| 日韩欧美久久一区| 一区二区三区免费在线视频| 91久久精品一区二区三区| 日韩精品成人一区| 亚洲在线成人精品| 一级黄色录像视频| 亚洲欧美一区二区三区极速播放| 亚洲av毛片基地| 中文字幕乱码日本亚洲一区二区| 蜜桃传媒一区二区亚洲av | 成人av片网址| 欧美午夜在线播放| 91精品久久久久久久久| 国产91欧美| 国产欧美中文字幕| 99久久99九九99九九九| 91亚洲va在线va天堂va国| 亚洲国产天堂| 成人激情视频在线| 欧美精品影院| av在线亚洲男人的天堂| 91精品尤物| 国产一区国产精品| 伊人久久大香线蕉无限次| 欧美精品一区二区三区在线四季 | aaa亚洲精品一二三区| 日b视频在线观看| 91丨porny丨首页| 国产熟妇久久777777| 久久久久99精品一区| 波多野结衣办公室33分钟| 91蜜桃在线观看| 国产精品20p| 国产女人aaa级久久久级 | 欧美精品亚州精品| 91最新在线视频| 欧美国产日韩视频| www.综合| 欧美最顶级的aⅴ艳星| 性欧美又大又长又硬| 国产成人黄色av| 精品视频一区二区三区四区五区| 国产精品久久电影观看| 四虎精品在线观看| 亚洲综合日韩在线| 97成人在线| 蜜桃麻豆www久久国产精品| 色婷婷av一区二区三区丝袜美腿 | 久久一区二区中文字幕| 亚洲资源在线网| 亚洲经典一区| 国产极品粉嫩福利姬萌白酱| 免费永久网站黄欧美| 自拍偷拍 国产| 国产寡妇亲子伦一区二区| 性欧美18—19sex性高清| 99re这里只有精品视频首页| 亚洲av无码一区二区三区人| 国产精品网站一区| 欧美精品成人久久| 国产三级av在线播放| 狠狠色2019综合网| 欧美激情 亚洲| 99re热这里只有精品视频| 五月天婷婷在线观看视频| 成人视屏免费看| 中文字幕在线1| 日本一区二区免费在线观看视频| 麻豆精品一区二区三区视频| 午夜一区二区三区视频| 国产精品第二十页| 欧美婷婷六月丁香综合色| 不卡的日韩av| 尤物yw午夜国产精品视频| 18视频在线观看| 热久久这里只有精品| 午夜免费欧美电影| 欧美午夜精品久久久久久蜜| 第一sis亚洲原创| 18禁免费观看网站| 蜜臀va亚洲va欧美va天堂| 成人欧美精品一区二区| 国产精品美女久久久久久2018| 国产一区二区播放| 欧美性生交大片免费| 亚洲老妇色熟女老太| 一区二区三区四区精品| 青草在线视频| 亚洲综合在线中文字幕| 亚洲区小说区图片区qvod| 欧美精品成人一区二区在线观看| 欧美极品一区二区三区| av丝袜天堂网| 99热国产精品| 麻豆视频在线免费看| 一本到高清视频免费精品| 日本精品久久久久久| 精品国产一区二区三区久久| 神马午夜在线视频| 国产精品国产亚洲精品看不卡15| 久久久影院免费| 欧美久久在线观看| 国产精品资源在线看| 青青青视频在线播放| 欧美性生交大片免网| 国产综合无码一区二区色蜜蜜| 中文字幕久久久av一区| 性欧美videohd高精| 国产一区自拍视频| 欧美另类综合| 免费啪视频在线观看| 亚洲日本丝袜连裤袜办公室| 中文字幕第31页| 国产一区二区日韩| 性国裸体高清亚洲| 久久免费看av| 亚洲影院在线| 精品国产免费久久久久久婷婷| 亚洲欧美日韩久久精品| 中文字幕乱码一区二区| 视频一区视频二区国产精品| 中文av在线全新| 精品欧美一区二区在线观看视频 | 奇米精品一区二区三区四区| 成都免费高清电影| 色综合天天狠狠| 水中色av综合| 国产精品久久激情| 教室别恋欧美无删减版| 91看片在线免费观看| 国产欧美一区二区三区在线看蜜臀 | 免费涩涩18网站入口| 欧美国产日韩精品免费观看| 91麻豆精品在线| 久久精品免费播放| crdy在线观看欧美| 国产精品av免费观看| 国产精品影视天天线| 欧美日韩免费一区二区| 亚洲福利在线观看| free性护士videos欧美| 51国产成人精品午夜福中文下载| 亚洲国产激情| 国产又粗又长又爽| 日本韩国欧美三级| 1pondo在线播放免费| 成人综合网网址| 亚洲黄色视屏| av小说在线观看| 欧美精品乱人伦久久久久久| 黄色网在线免费看| 97伦理在线四区| 三级欧美在线一区| 免费成人深夜天涯网站| 日韩视频在线一区二区| h视频在线免费观看| 国产传媒一区| 日韩高清一区二区| 亚洲欧美卡通动漫| 亚洲成人动漫在线播放| 日韩伦理三区| 一区二区三区av| www.色综合.com| 日本妇乱大交xxxxx| 欧美风情在线观看| 天堂资源在线亚洲| 国产精欧美一区二区三区白种人| 亚洲一卡二卡三卡四卡无卡久久| 午夜影院免费体验区| 成人黄色av网站| 999亚洲国产精| 色老板免费视频| 日韩乱码在线视频| 国产激情综合| 国产区二区三区| 亚洲第一久久影院|