基础30 ElasticSearch 倒排索引核心

17人阅读 评论(0) 收藏 举报
分类:

基础30 ElasticSearch 倒排索引核心

概述

一、创建

doc1:I really liked my small dogs, and I think my mom also liked them.
doc2:He never liked any dogs, so I hope that my mom will not expect me to liked him.

分词,初步的倒排索引的建立

word		doc1			doc2

I		*			*
really		*
liked		*			*
my		*			*
small		*	
dogs		*
and		*
think		*
mom		*			*
also		*
them		*	
He					*
never					*
any					*
so					*
hope					*
that					*
will					*
not					*
expect					*
me					*
to					*
him					*

演示了一下倒排索引最简单的建立的一个过程

二、搜索

mother like little dog,不可能有任何结果

mother
like
little
dog

这个是不是我们想要的搜索结果?绝对不是,因为在我们看来

mother和mom有区别吗?同义词,都是妈妈的意思。
like和liked有区别吗?没有,都是喜欢的意思,只不过一个是现在时,一个是过去时。
little和small有区别吗?同义词,都是小小的。
dog和dogs有区别吗?狗,只不过一个是单数,一个是复数。

normalization,建立倒排索引的时候,会执行一个操作,也就是说对拆分出的各个单词进行相应的处理,以提升后面搜索的时候能够搜索到相关联的文档的概率

时态的转换,单复数的转换,同义词的转换,大小写的转换

mom ―> mother
liked ―> like
small ―> little
dogs ―> dog

重新建立倒排索引,加入normalization,再次用mother liked little dog搜索,就可以搜索到了

word		doc1			doc2

I		*			*
really		*
like		*			*			liked --> like
my		*			*
little		*						small --> little
dog		*			*			dogs --> dog						
and		*
think		*
mom		*			*
also		*
them		*	
He					*
never					*
any					*
so					*
hope					*
that					*
will					*
not					*
expect					*
me					*
to					*
him					*

mother like little dog,分词,normalization

mother	--> mom
like	--> like
little	--> little
dog	--> dog

doc1和doc2都会搜索出来

doc1:I really liked my small dogs, and I think my mom also liked them.
doc2:He never liked any dogs, so I hope that my mom will not expect me to liked him.
查看评论

微信开发核心基础

很多公司,企业甚至政府部分都开通了微信公众号,想要发挥微信的最大价值,就必须让微信跟自己的平台或者数据库联系起来。这套《微信开发核心基础》,用一个完整的案例,告诉你微信开发流程,错误调试,如何看开发文档,学习你就可以自己做些独立开发。这个教程使用PHP为开发工具,建议你先学习子恒老师的《微信公众号使用》。学习完后,可以跟我反馈,如果好的话,会推出《微信服务号开发》教程,QQ/微信:68183131
  • 2016年06月24日 16:16

elasticsearch学习笔记-倒排索引

一,倒排索引(Inverted Index) ElasticSearch引擎把文档数据写入到倒排索引(Inverted Index)的数据结构中,倒排索引建立的是分词(Term)和文档(Docu...
  • gongpulin
  • gongpulin
  • 2017-11-18 16:00:37
  • 740

[ElasticSearch]倒排索引

Elasticsearch使用一种叫做倒排索引(inverted index)的结构来做快速的全文搜索。倒排索引由在文档中出现的唯一的单词列表,以及对于每个单词在文档中的位置组成( An inver...
  • SunnyYoona
  • SunnyYoona
  • 2016-10-19 11:38:39
  • 2020

ElasticSearch所使用的倒排索引的思想和使用场景

ElasticSearch所使用的倒排索引的思想和使用场景
  • king866
  • king866
  • 2016-12-10 12:16:09
  • 4820

elasticsearch-倒排索引原理

倒排索引 Elasticsearch 使用一种称为 倒排索引 的结构,它适用于快速的全文搜索。一个倒排索引由文档中所有不重复词的列表构成,对于其中每个词,有一个包含它的文档列表。 例如...
  • chuan442616909
  • chuan442616909
  • 2017-02-14 16:10:06
  • 3130

ElasticSearch学习19_搜索引擎-倒排索引基础知识

搜索引擎的索引 1.单词——文档矩阵        单词-文档矩阵是表达两者之间所具有的一种包含关系的概念模型,图3-1展示了其含义。图3-1的每列代表一个文档,每行代...
  • wang_zhenwei
  • wang_zhenwei
  • 2016-10-16 18:27:39
  • 3384

【工作笔记】ElasticSearch从零开始学(二)—— 入门(搜索)

建立一个员工目录假设我们刚好在Megacorp工作,这时人力资源部门出于某种目的需要让我们创建一个员工目录,这个目录用于促进人文关怀和用于实时协同工作,所以它有以下不同的需求 数据能够包含多个值的标签...
  • qq_20597479
  • qq_20597479
  • 2017-03-09 10:36:36
  • 263

ElasticSearch核心基础之映射

一  mapping相关的概念 1.1 映射类型 映射类型也就是我们所谓的type,一个索引可以一个或者多个类型。每一个映射类型包括: # 元数据字段:用来定义如何处理文档的元数据。元数据字段包...
  • zhanglh046
  • zhanglh046
  • 2017-11-14 12:28:20
  • 738

ElasticSearch 倒排索引、分词

es使用称为倒排索引的结构达到快速全文搜索的目的。   一个倒排索引包含一系列不同的单词,这些单词出现在任何一个文档, 对于每个单词,对应着所有它出现的文档。   比如说...
  • wangyunpeng0319
  • wangyunpeng0319
  • 2017-10-15 22:43:42
  • 170

elasticsearch核心知识---52.倒排索引组成结构以及实现TF-IDF算法

首先实现了采用java 简易的实现TF-IDF算法package matrixOnto.Ja_9_10_va; import com.google.common.base.Preconditions...
  • mengxpFighting
  • mengxpFighting
  • 2018-04-03 15:00:49
  • 25
    我的微信
      我的微信号号,添加后更多福利
    个人资料
    持之以恒
    等级:
    访问量: 6万+
    积分: 4688
    排名: 7868
    文章存档
    最新评论