为什么 Lucene 不支持对现有文档进行任何类型的更新

2023-11-23

我的用例涉及索引 Lucene 文档,然后在将来的多个场合添加指向此现有文档的术语,而无需为每个新术语删除并重新添加整个文档(因为性能,并且不保留原始术语)。

我确实知道文档无法真正更新。我的问题是why?

或者更准确地说,为什么不支持所有形式的更新(术语、存储字段)?
为什么无法添加另一个术语来指向现有文档 - 从技术上讲:所需要做的不仅仅是将现有文档 ID 放置在该术语的发布列表中。为什么这么难?是否存在一些不可改变的统计数据?

是否有任何解决方法可以支持我向现有文档添加术语(索引字段)的用例?


我确实知道文档无法真正更新。我的问题是为什么?

Gili,编辑文档将导致相关术语发布的更改,由于术语发布列表结构,这是有问题的。倒排列表被排序并按顺序存储在内存中。因此,要将文档添加到术语的发布列表中,您必须为其指定更高的级别doc id这是通过删除整个文档并重新索引来完成的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Lucene 不支持对现有文档进行任何类型的更新 的相关文章

  • 如何在 Java 中访问嵌套的 HashMap?

    我有一个 Java 中的 HashMap 其中的内容 你们可能都知道 可以通过以下方式访问 HashMap get keyname 如果一个 HashMap 位于另一个 HashMap 中 即嵌套的 HashMap 我将如何访问内容 我可以
  • 如何在log4j的配置文件中为文件附加器提供环境变量路径

    我有一个log4j xml配置文件 和一个RollingFileAppender我需要提供用于存储日志的文件路径 问题是我的代码将作为可运行的 jar 部署在 Unix 机器上 所以如果我传递这样的参数 value logs message
  • 如何配置 Spring-WS 以使用 JAXB Marshaller?

    感谢您到目前为止对此的帮助 我正在更新问题 因为我没有显示我需要的所有内容 并显示了建议的更改 肥皂输出仍然不是我想要的 servlet xml
  • JavaFX 2.0 FXML 子窗口

    经过多次搜索我发现了这个问题如何创建 javafx 2 0 应用程序 MDI https stackoverflow com questions 10915388 how to create a javafx 2 0 application
  • 迁移到Java 9或更高版本时是否需要切换到模块?

    我们目前正在从 Java 8 迁移到 Java 11 但是 升级我们的服务并没有我们预期的那么痛苦 我们基本上只需要更改我们的版本号build gradle文件和服务都顺利启动并运行 我们升级了库以及使用这些库的 微 服务 到目前为止没有问
  • 尝试获取屏幕上绘制的每个随机圆圈的 x、y 坐标

    您好 我正在制作一款游戏 该游戏将在屏幕上创建随机圆圈 随机创建的圆圈的值为红色或绿色 我的问题是 我希望不仅能够确定用户何时单击其中一个圆圈 而且还能够确定他们最终单击的圆圈 红色或绿色 下面是我的代码 我的主要问题是试图找到将要绘制的圆
  • JTextField 和 JTextArea

    JTextField 和 JTextArea 有什么不同 是否可以在一个班级中使用这两个班级 总之 JTextField 是单行文本字段 而 JTextArea 可以跨越多行 文档中清楚地解释了这些差异 文本区 http docs orac
  • 具有 CRUD 功能的基于 Spring Web 的管理工具

    在 PHP Symfony 世界里有一个工具叫 Sonata Adminhttps sonata project org https sonata project org 基于 AdminLTE 模板 这是一款一体化管理工具 具有登录 菜单
  • Java - JPanel 内有边距和 JTextArea

    我想创建这样的东西 主面板有其边距 x 并且 TextArea 位于该面板的中心 几乎填满了面板 底部是另一个具有自定义尺寸 高度 y 的面板 可以使用某些快捷方式将其切换为可见和不可见 底部面板有 FlowLayout 和几个元素 问题是
  • 从 HttpClient 3 转换为 4

    我已经成功地对所有内容进行了更改 但以下内容除外 HttpClient client HttpPost method client new DefaultHttpClient method new HttpPost url InputStr
  • 查找数组中的组合

    我在java中有一个像这样的二维数组 transmission communication tv television approach memorycode methodact 我需要获得所有组合 例如 transmission appr
  • 如何在 Bean Validation 1.0 中构造 ConstraintViolationException?

    我对 javax validation API 感到困惑 我正在编写一个简单的测试来理解它 Sample sample new Sample Set
  • 将默认搜索文本添加到搜索框 html

    我正在努力将 搜索 文本添加到搜索框 我正在努力实现 onfocus 消失文本 And onblur 重新出现文本 到目前为止 我已经实现了这一点 但我必须将其硬编码为 html eg
  • Java和手动执行finalize

    如果我打电话finalize 在我的程序代码中的一个对象上 JVM当垃圾收集器处理这个对象时仍然再次运行该方法吗 这是一个大概的例子 MyObject m new MyObject m finalize m null System gc 是
  • Java String ReplaceAll 方法给出非法重复错误?

    我有一个字符串 当我尝试运行时replaceAll方法 我收到这个奇怪的错误 String str something op str str replaceAll o n it works fine str str replaceAll n
  • 传递 Android DialogFragment 参数时,onCreateDialog 捆绑参数意外为 null

    我正在尝试使用 DialogFragment 在 Android 中显示一个基本对话框 并使用对话框消息的参数 如中所述StackOverflow线程 https stackoverflow com questions 15459209 p
  • 如何将库添加到 LIBGDX 项目的依赖项 gradle

    一切都在问题中 我已经尝试了在 SO 和其他网站中找到的所有答案 但没有运气 这就是我迄今为止尝试过的 adding compile fileTree dir lib include jar 到我的 build gradle adding
  • Jackson 反序列化相当于 @JsonUnwrapped 吗?

    假设我有以下课程 public class Parent public int age JsonUnwrapped public Name name 生成 JSON age 18 first Joey last Sixpack 我如何将其反
  • 如何使用注释处理 Hibernate 和 Spring 中的连接查询?

    我正在使用 Spring 和 Hibernate 以及 MySQL 开发应用程序 我是 Hibernate 新手 完成了基本任务 现在我需要在选择查询中应用联接以使用注释从多个表中获取数据 我已经搜索过但仍然没有任何想法 这是我的数据库表和
  • @Embeddable 中的 @GenerateValue

    我已将实体的 id 分离到一个单独的 Embeddable 类中 该实体如下 Entity Table name users public class Users EmbeddedId private Users pk id private

随机推荐

  • 使用 rpart.plot 功能绘制 ctree

    一直在尝试使用rpart plot包来绘制ctree来自partykit图书馆 原因是当树很深时 默认的绘图方法很糟糕 就我而言 我的max depth 5 我真的很喜欢rpart plot的输出 因为它允许更深的树在视觉上更好地显示 输出
  • 使用正则表达式 LtKit 在地图视图上绘制路线时出错

    在我的 iPhone 项目之一中 我使用 RegexLiteKit 在地图视图中绘制路线 编译时显示以下失败 Undefined symbols for architecture i386 uregex start referenced f
  • 在 OS X Mavericks 上安装 Calabash-Android 会导致错误

    我需要一些帮助来尝试安装 Calabash Android 安装 rvm home brew 后 当我安装 Calabash 时 出现一个奇怪的错误 sudo gem install calabash android Building na
  • 如何清除要垃圾收集的对象(HashMap) - Java

    所以我这里有一个java程序 它操作大量数据并将其存储到对象中 主要是哈希映射 在运行时的某个时刻 数据变得无用 我需要丢弃 以便释放一些内存 我的问题是丢弃这些要进行垃圾收集的数据的最佳行为是什么 我已经尝试过map clear 但这不足
  • 如何在 Meteor 中使用 jQuery UI?

    在 Meteor 应用程序中安装 jQuery UI 的正确方法是什么 由于它还不是一个包 我将下载中的 jquery ui min js 和 jquery 1 8 3 js 添加到lib我的流星项目中的文件夹 这导致了以下致命错误 You
  • 配置在 linux-64 上为 linux-64 构建 MinGW-64 的选项(最终针对 windows-64)

    我想在其中构建 MinGW w64 A 我想在Linux 64位 上编译MinGW本身 B 我希望 MinGW 工具 编译器等 在 Linux 64 位 上运行 C 我希望 MinGW 工具 编译器等 生成在 Windows 64 位 Wi
  • Rails 4.1 无法通过 capistrano 3 部署

    使用 capistrano 部署 Rails 应用程序时 我遇到了非常奇怪的错误 有时部署 有时不部署 例如 我向 css 添加一些内容 仅一个字符串 例如 my some class width 10px 之后部署失败 在我添加这个之前
  • VLCKit 与 SwiftUI

    我想用VLCKit with SwiftUI 为什么不是AVPlayer 因为某些视频格式不受支持 这是我的代码 import SwiftUI import UIKit struct ContentView View var body so
  • 为什么地理定位在移动浏览器上不起作用?

    我正在尝试使用 HTML5 获取用户的位置geolocation 在桌面上它运行良好 但在我的所有移动设备 三星 Note 三星 Galaxy S4 和 Iphone 6 上它无法运行并且不显示error object 这是我的代码 fun
  • 如何在 C# 中打印 DataGridView 中的数据?

    我正在开发一个程序 我需要打印 DataGridView 控件中显示的账单数据 我想知道如何打印DataGridView中的数据的代码 我正在使用 Visual Studio 2008 和 C 3 5 没有内置任何打印支持DataGridV
  • Ruby 中可用的网页抓取 gem/工具 [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在尝试在我正在处理的 Ruby 脚本中抓取网页 该项目的目的是展示哪些 ETF 和股票共同基金最符合价值投资理念 我想要抓取的页面的一些示例是 http finance yahoo c
  • 无法在 jupyter 中导入 matplotlib.pyplot(但不是 ipython)

    Update ipykeynel 4 4 18月9日上午修复了这个问题 我进行了全新安装 并且一直在尝试启动并运行我的 python 依赖项 即 jupyter notebook 和 matplotlib 我已经 pip 安装了所有东西 并
  • 如何将 ItemsSource 绑定到私有属性

    如何绑定WPFItemsSource到私人财产
  • 如何匹配字符串的开头?

    我想在start字符串切片的 我目前的做法是 fn main let m true other stuff if m starts with true else if m starts with false 但这比我喜欢的更冗长 另一种方法
  • PyCharm 中的部分存根

    我想在我的项目中引入部分类型注释 例如用于超载 我发现 pep561 引入了部分存根文件支持 我用 PyCharm 开发我的项目并添加相应的 pyi文件 并获得了预期的信息 但 PyCharm 报告在 pyi 文件中找不到参考 当 pyi
  • “纱线应用程序-列表”不显示任何结果

    我在 YARN 集群上运行了一些 Spark 应用程序 该应用程序显示在 YARN UI 的 所有应用程序 页面中http 主机 8088 集群但是yarn application list命令没有给出任何结果 这可能是什么原因造成的 当您
  • 无法从表中删除 UNIQUE 索引

    当我运行这个查询时 ALTER TABLE dbo ROOM DROP INDEX UNIQUE 我收到这条消息 错误 1018 INDEX 附近的语法不正确 如果这是作为表提示的一部分 则现在需要WITH 关键字和括号 有关正确语法 请参
  • SVG 图像无法在 Chrome 上加载(有时)

    您好 我已经开始将网站上的许多旧图像转换为 SVG 格式 但无法让它们显示在页面中 如果我单独打开图像 然后在打开后查看页面 则图像会加载 SVG 位于正确的文件路径我正在引用但没有出现任何内容 尽管在某些刷新中它确实出现了 img cla
  • 使用 CRON 作业运行curl 命令

    我想运行这个语句 curl http localhost 8983 solr dataimport command full import 每 10 分钟使用 CRON 作业一次 我该如何实现这一目标 就像是 crontab lt lt E
  • 为什么 Lucene 不支持对现有文档进行任何类型的更新

    我的用例涉及索引 Lucene 文档 然后在将来的多个场合添加指向此现有文档的术语 而无需为每个新术语删除并重新添加整个文档 因为性能 并且不保留原始术语 我确实知道文档无法真正更新 我的问题是why 或者更准确地说 为什么不支持所有形式的