天天看點

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

一 序

   本文屬于Elasticsearch核心技術與實戰學習筆記系列。本節課主要講解Search API。

二 Search API

URL Search

在 URL 中使用查詢參數

Request Body Search

使用 Elasticsearch 提供的,基于 JSON 格式的格式更加完備的 Query Dpmain Specific Language (DSL)

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

2.1URL 查詢

  • 使用 “q” , 指定查詢字元串
  • “query string syntax” , KV 鍵值對
Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

傳回資料:

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

Request Body

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽
#REQUEST Body
POST kibana_sample_data_ecommerce/_search
{
	"profile": true,
	"query": {
		"match_all": {}
	}
}
           

執行結果:

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

 took:花費時間

total:命中結果數

hits: 命中結果集,預設前10個。

_index:索引名

_id: 文檔ID

_score: 相關度評分

_source:文檔原始資訊。

三 搜尋的相關性 Relevance

  • 搜尋是使用者和搜尋引擎的對話
  • 使用者關心的是搜尋結果的相關性
    • 是否找到所有相關的内容
    • 有多少不相關的内容被傳回了
    • 文檔的打分是否合理
    • 結合業務需求,平衡結果排名

這塊老師用了常見的蘋果手機舉例子介紹搜尋。

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

3.1WEB 搜尋

  • Page Rank 算法
    • 不僅僅是内容
    • 更重要的是内容的可信度

老師一Google的搜尋舉例子。這塊設計SEO等,展開也是很大一塊。

3.2電商搜尋

  • 搜尋引擎扮演 - 銷售的角色
    • 提高使用者購物體驗
    • 提升網站的銷售業績
    • 去庫存

常用電商你懂得。

3.3衡量相關性

Information Retrieval

Precision (查準率) - 盡可能傳回較少的無關文檔

Recall (查全率) - 盡量傳回較多的相關文檔

Ranking - 是否能夠按照相關度進行排序

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

Precision & Recall

Prcision - True Positive / 全部傳回的結果 (True and False Positives)

Recall - True Positive / 傳回應該傳回的結果 (True positives + false Negtives)

使用 Elasticsearch 的查詢和相關參數改善搜尋的 Precision 和 Recal

Elasticsearch核心技術與實戰學習筆記 第三章14 Search API概覽

小結:

 本節是概覽,了解下URL Search、Request Body Search(DSL)

 下一節會将URLsearch。日威查詢還是kibana中使用dev tool。

繼續閱讀