Elasticsearch核心技术与实战学习笔记 第三章14 Search API概览

一 序

   本文属于Elasticsearch核心技术与实战学习笔记系列。本节课主要讲解Search API。

二 Search API

URL Search
在 URL 中使用查询参数
Request Body Search
使用 Elasticsearch 提供的,基于 JSON 格式的格式更加完备的 Query Dpmain Specific Language (DSL)

2.1URL 查询

  • 使用 “q” , 指定查询字符串
  • “query string syntax” , KV 键值对

返回数据:

Request Body

#REQUEST Body
POST kibana_sample_data_ecommerce/_search
{
	"profile": true,
	"query": {
		"match_all": {}
	}
}

执行结果:

 took:花费时间

total:命中结果数

hits: 命中结果集,默认前10个。

_index:索引名

_id: 文档ID

_score: 相关度评分

_source:文档原始信息。

三 搜索的相关性 Relevance

  • 搜索是用户和搜索引擎的对话
  • 用户关心的是搜索结果的相关性
    • 是否找到所有相关的内容
    • 有多少不相关的内容被返回了
    • 文档的打分是否合理
    • 结合业务需求,平衡结果排名

这块老师用了常见的苹果手机举例子介绍搜索。

3.1WEB 搜索

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

老师一Google的搜索举例子。这块设计SEO等,展开也是很大一块。

3.2电商搜索

  • 搜索引擎扮演 - 销售的角色
    • 提高用户购物体验
    • 提升网站的销售业绩
    • 去库存

常用电商你懂得。

3.3衡量相关性

Information Retrieval
Precision (查准率) - 尽可能返回较少的无关文档
Recall (查全率) - 尽量返回较多的相关文档
Ranking - 是否能够按照相关度进行排序

Precision & Recall


Prcision - True Positive / 全部返回的结果 (True and False Positives)
Recall - True Positive / 返回应该返回的结果 (True positives + false Negtives)
使用 Elasticsearch 的查询和相关参数改善搜索的 Precision 和 Recal

小结:

 本节是概览,了解下URL Search、Request Body Search(DSL)

 下一节会将URLsearch。日威查询还是kibana中使用dev tool。

猜你喜欢

转载自blog.csdn.net/bohu83/article/details/106131268