es里的document的"_id"和org.apache.lucene.search.ScoreDoc.doc是什么关系

Elastic 中文社区 · · 365 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

hapjin

赞同来自: liuliuliu

org.apache.lucene.search.ScoreDoc.doc 应该是:Apache Lucene - Index File Formats 提到的:Document Numbers
文档 index 到Lucene中时,会生成 segment。document nubmer从0开始,每索引一篇文档到segment里面,document nubmer加1.segment内document number是唯一的。


Internally, Lucene refers to documents by an integer document number. The first document added to an index is numbered zero, and each subsequent document added gets a number one greater than the previous.


 而es中的 _id 只是ES 用来:get/delete 文档时 使用的一个id,与Lucene中的Document Number没有关系:


Most search applications using Apache Lucene assign a unique id, or primary key, to each indexed document. While Lucene itself does not require this (it could care less!), the application usually needs it to later replace, delete or retrieve that one document by its external id


参考:choosing-fast-unique-identifier-uuid

本文来自:Elastic 中文社区

感谢作者:Elastic 中文社区

查看原文:es里的document的"_id"和org.apache.lucene.search.ScoreDoc.doc是什么关系

365 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传