lucene和ElasticSearch基本概念
lucene基本概念
对应一个倒排表,一个检索的基本单位。在lucene中就对应一个目录。
一个索引可以包含多个段,段与段之间是独立的,添加新文档可以生成新的段,不同的段可以合并。段是索引数据存储的单元。
•文档是我们建索引的基本单位,不同的文档是保存在不同的段中的,一个段可以包含多篇文档。
•新添加的文档是单独保存在一个新生成的段中,随着段的合并,不同的文档合并到同一个段中。
•一篇文档包含不同类型的信息,可以分开索引,比如标题,时间,正文,作者等,都可以保存在不同的域里。
•不同域的索引方式可以不同。
词是索引的最小单位,是经过词法分析和语言处理后的字符串。
词相同,但域不同被认为是两个不同的词,也就是说词是词根和域名的一个组合。
词向量(Term Vector)
又称文档向量(document vector),由词文本和词频率组成。
语义树是构成搜索处理的一个中间结果,搜索时,会生成语义树,然后再进行搜索。
权重(Term Weight)
计算分值时使用的主要指标,指词(Term)在文档中的分值,脱离文档单独说某个词的权重是没有意义的。
Term Frequency (tf):即此Term 在此文档中出现了多少次。tf 越大说明越重要。
Document Frequency (df):即有多少文档包含次Term。df 越大说明越不重要 。
一般情况下,将一个词条所索引的文档(一般用文档编号表示)称之为 Posting,那么一个词条索引的多个文档就称之为 Posting-list。这个词我们在看Javaapi的时候会经常看到
即词条 (Term) 的元数据或称载荷, Lucene 支持用户在索引的过程中将词条的元数据添加的索引库中,同时也提供了在检索结果时读取 Payload 信息的功能。Payload 的诞生为用户提供了一种可灵活配置的高级索引技术,为支持更加丰富的搜索体验创造了条件。
倒排表(Inverted Indexing)
倒排表是Lucene索引采用的一套数据结构,这种结构以词为中心,能够快速找到包含该词根的文档。因为跟正常的便利文档检索采用的方法相反,因此叫倒排表。倒排表是一种数据结构,lucene的数据文件一起构成了一张大的倒排表,而不是具体的某文件存储的倒排结构。
文档编号(Document Number)
Lucene内部通过文档编号索引文档。这个编号在一个段内部唯一,一个段的第一个文档的编号为0,依次递增。不过这个编号仅用于lucene内部使用,而且这个编号在段合并的时候会发生改变。如果需要在段外部使用,必须对这个编号进行唯一性重新编排,确保一个文档在更大的范围也是唯一的。重新编排的一个实现方法是,基数+段内序号的方法。比如有两个段,每个段里面都有5个文档,则第一个段的文档编号=0+段内编号,第二个段的文档编号=5+段内编号。
ES基本概念
文档(Document)
### 参数映射(Mapping)
文档类型(Type)
节点(Node)
集群(Cluster)
分片索引(Shard)
索引副本(Replica)
时间之门(Gateway)
lucene和ElasticSearch基本概念的更多相关文章
- 干货 |《从Lucene到Elasticsearch全文检索实战》拆解实践
1.题记 2018年3月初,萌生了一个想法:对Elasticsearch相关的技术书籍做拆解阅读,该想法源自非计算机领域红火已久的[樊登读书会].得到的每天听本书.XX拆书帮等. 目前市面上Elast ...
- Elasticsearch入门教程(二):Elasticsearch核心概念
原文:Elasticsearch入门教程(二):Elasticsearch核心概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:ht ...
- 【ElasticSearch】概念
小史是一个非科班的程序员,虽然学的是电子专业,但是通过自己的努力成功通过了面试,现在要开始迎接新生活了. 对小史面试情况感兴趣的同学可以观看面试现场系列. 随着央视诗词大会的热播,小史开始对诗词感兴趣 ...
- Elasticsearch基本概念和使用
Elasticsearch基本概念和使用 1.操作索引 1.1.基本概念 Elasticsearch也是基于Lucene的全文检索库,本质也是存储数据,很多概念与MySQL类似的. 对比关系: 索引( ...
- 白日梦的ES笔记三:万字长文 Elasticsearch基础概念统一扫盲
目录 一.导读 二.彩蛋福利:账号借用 三.ES的Index.Shard及扩容机制 四.ES支持的核心数据类型 4.1.数字类型 4.2.日期类型 4.3.boolean类型 4.4.二进制类型 4. ...
- 开源搜索引擎评估:lucene sphinx elasticsearch
开源搜索引擎评估:lucene sphinx elasticsearch 开源搜索引擎程序有3大类 lucene系,java开发,包括solr和elasticsearch sphinx,c++开发,简 ...
- ElasticSearch 核心概念
ElasticSearch核心概念-Cluster ElasticSearch核心概念-shards ElasticSearch核心概念-replicas ElasticSearch核心概念-reco ...
- ElasticSearch 全文检索— ElasticSearch 核心概念
ElasticSearch核心概念-Cluster 1)代表一个集群,集群中有多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的.es的一个概念就是去中心化,字 ...
- ELK 学习笔记之 elasticsearch基本概念和CRUD
elasticsearch基本概念和CRUD: 基本概念: CRUD: 创建索引: curl -XPUT 'http://192.168.1.151:9200/library/' -d '{" ...
随机推荐
- Android Studio项目目录结构介绍
在Android Studio中,提供了以下几种项目结构类型 我们一般常用的有以下两种结构: Project 结构类型 app/build/ app模块build编译输出的目录 app/build.g ...
- MVC 访问IFrame页面Session过期后跳转到登录页面
Web端开发时,用户登录后往往会通过Session来保存用户信息,Session存放在服务器,当用户长时间不操作的时候,我们会希望服务器保存的Session过期,这个时候,因为Session中的用户信 ...
- AX 2012 两种lookup 的显示方式
第一种:只能单选的lookup: 代码: public void BusinessUnitLookup(FormStringControl _formstrcontroll) { //OMOperat ...
- ASPNET_MVC学习中的疑问
1.在mvc..net4.5.Entity Framewor都提供了多种验证规则. 请问,其中不需要提交到服务器验证的验证,是否是在客户端就完成的,还是说像之前的aspnet一样,都得提交到服务器验 ...
- Ubuntu16.04 apache2 wsgi 部署django
在Ubuntu16.04上部署django其实还算简单直观,最重要的问题就是路径设置正确,并且保证版本统一,这个测试是在 Apache/2.4.18 (Ubuntu) apt-get install ...
- Javascript函数调用的四种模式
一 前言 Javascript一共有四种调用模式:方法调用模式.函数调用模式.构造器调用模式以及apply调用模式.调用模式不同,对应的隐藏参数this值也会不同. 二 方法调用模式 函数作为对象的属 ...
- 《JavaScript高级程序设计》学习笔记(4)——引用类型
欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 本节内容对应<JavaScript高级程序设计>的第五章内容. 在ECMAScript中, ...
- 在win7下将CapsLock按键变成esc
我喜欢用vim来编辑,经常要按到esc,但是去按那个按键确实比较的远,而且CapsLock这个按键对我来说着实有些鸡肋,所以就想在win7上也能像ubuntu那样把capslock映射为esc,在网上 ...
- arguments转换为数组格式
var agArr = []; for(var i = 0; i < arguments.length; i++) { agArr.push(arguments[i]) }
- NHibernate系列文章二十四:NHibernate查询之Linq查询(附程序下载)
摘要 NHibernate从3.0开始支持Linq查询.写Linq to NHibernate查询就跟写.net linq代码一样,非常灵活,可以很容易实现复杂的查询.这篇文章使用Linq to NH ...