c# - 将 Lucene 索引文件存储到远程位置

标签 c# .net lucene lucene.net

你好
有没有一种方法可以将 lucene 索引文件存储到远程位置,例如我在 PC(A) 上,想索引我的文档,但将结果存储到远程位置,就像 PC(B) 上的某个目录一样,它是否在内部受支持,或者我应该编写自定义代码来支持它?

非常感谢准确的回复

最佳答案

有几个选项可用,具体取决于您的网络设置。

您可以直接针对作为网络共享发布的远程文件系统使用 FSDirectory.Open(@"\\server\index"),但正如已经指出的那样,网络延迟和速度会影响你的索引。

您也可以在本地索引它,使用 FSDirectoryRAMDirectory,然后调用 Directory.Copy(src, dest, closeDirSrc) 通过网络共享将其传输到您的远程位置。这将比直接针对远程目录工作更快,因为在编制索引期间没有网络开销。

如果速度不是问题,或者您喜欢冒险,请尝试构建自定义目录实现(继承自 Directory),它使用您需要的任何传输技术(ftp、电子邮件、信鸽、等)。

关于c# - 将 Lucene 索引文件存储到远程位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4644457/

相关文章:

c# - 如何判断IPv6地址是否私有(private)?

c# - 在 C# 中实现可序列化类的首选方法是什么

c# - A* 搜索尖峰时刻游戏?

c# - Parallel.ForEach 会按照 MaxDegreeOfParallelism=1 的顺序进行处理吗?

.net - C# 7 : Why is tuple deconstruction not implemented through an interface?

java - Hibernate搜索模糊超过2

c# - 使用 FakeItEasy 断言没有使用任何通用参数进行调用

.net - 映射共享上的应用程序出现SEHException

solr - 在 Solr 查询时忽略 tf/idf

solr - solr 是否使用余弦相似度?