我刚刚发现了这个很有前途的存储引擎,即Xodus。
在哪些使用案例中,虚拟文件系统模式应优于传统文件系统?
我还看到了ExodusDirectory lucene的实现,它怎么能比参考FSDirectory更好呢?
最佳答案
Xodus VFS是在Xodus Environment API上实现的简单事务文件系统。传统文件系统不是事务性的,它不允许使用具有应用程序定义的一致性要求的snapshots数据。
Xodus VFS是直接实现的,用于存储JetBrains YouTrack中的文本搜索所使用的Lucene索引。 Xodus是YouTrack中的主要存储引擎。除了快照隔离之外,它还具有可配置的共享缓存,该缓存消耗恒定资源(RAM,文件句柄等),而不管单个JVM中打开的环境(数据库实例)的数量如何。在YouTrack中,Lucene配置为消耗尽可能少的资源,将所有缓存和性能调整委派给Xodus。 Xodus具有开箱即用的流加密功能,因此,如果使用XodusDirectory
,则可以轻松加密Lucene索引以满足GDPR或任何其他类似的规定。最后,由于系统的日志结构允许回滚到最近的有效快照,因此Xodus可能在系统/硬件故障后具有更多的恢复功能(与默认的Lucene后端相比),而没有索引损坏,也无需重建它。可能-因为没有足够的证据。