基于词项和基于全文的搜索、结构化搜索

基于词项和基于全文的搜索

基于Term的查询

  • Term的重要性
    • Term是表达语意的最小单位。搜索和利用统计语言模型进行自然语言处理都需要处理Term。
  • 特点
    • Term Level Query:Term Query / Range Query / Exists Query / Prefix Query / Wildcard Query
    • 在ES中,Term 查询,对输入不做分词。会将输入作为一个整体,在倒排索引中查找准确的词项,并且使用相关度算分公式为每个包含该词项的文档进行相关度算分
    • 可以通过Constant Score 将查询转换成一个Filtering,避免算分,并利用缓存,提高性能

结构化搜索

  • 结构化搜索是指对结构化数据的搜索
    • 日期、布尔类型和数字都是结构化的
  • 文本也可以是结构化
  • 结构化的文本可以做精确匹配或者部分匹配
    • Term查询 / Prefix 前缀查询
  • 结构化结果只有"是"或"否"两个值
上一篇:记一次团队重现赛


下一篇:优秀的开发者每天都在做什么?