我在网上看到了几条关于NHibernate(或Hibernate)搜索“负责数据库/索引同步”的声明。
当我阅读这些陈述时,我不禁想知道是否隐含“……只要您使用 [N]Hibernate 进行任何和所有数据访问”。
我使用 NHibernate 作为只读数据访问层,针对完全由不同应用程序拥有的数据库 - 所以我的应用程序永远不会直接知道外部写入。
Hibernate/NHibernate Search 是否真的做任何事情来监控原始数据的变化,例如设置查询通知和/或对全部或部分索引使用生存时间或“到期”?
或者随着越来越多的行被外部应用程序更改,Lucene 索引是否会随着时间的推移而变得越来越陈旧?
如果这个工具没有进行那种同步,那么除了手动重新索引(这将很难正确计时)之外,我还能做些什么来保持 Lucene 索引与数据库同步,还是我更好只使用 SQL Server 中的全文功能,就像我到目前为止一直在做的那样?