Я видел несколько заявлений онлайн о том, что NHibernate (или Hibernate) Search «заботится о синхронизации базы данных/индекса».Будет ли в NHibernate Search узнавать об изменениях в базовых данных?
Когда я читаю эти утверждения, я не могу не задаться вопросом, есть ли подразумеваемый «... пока вы используете [N] Hibernate для доступа всех и всех данных».
Я использую NHibernate, как только для чтения слоя доступа к данным с базой данных, которая полностью принадлежит другому приложению - так что мое приложение будет никогда быть непосредственно в курсе внешних записей.
Hibernate/NHibernate Search фактически выполняет что-либо, чтобы отслеживать изменения исходных данных, например, при настройке уведомления о запросе и/или использовании времени ожидания или «истечения» для всех или частичных индексов?
Или это показатель Lucene, который постепенно будет становиться более сталелитейным, поскольку все больше и больше строк изменяются внешними приложениями?
Если этот инструмент не сделать такую синхронизацию, а затем в стороне от ручной переиндексации (что было бы очень трудно времени должным образом), есть что-нибудь еще я могу сделать, чтобы сохранить индекс Lucene в синхронизации с базой данных, или мне лучше использовать возможности Fulltext в SQL Server, как я это делал до этого момента?
Я также хотел бы добавить, что, учитывая это ограничение, наряду с болезненным отсутствием возможности массового индексирования NH Search (в отличие от относительно полнофункциональной версии Java/Hibernate), я не думаю, что когда-либо использовал NH-поиск с наследие базы данных и будет думать долго и упорно, прежде чем использовать его в производственном приложении, которое может понадобиться для Interop. – Aaronaught
Bummer. Как и вы, я надеялся, что HS может автоматически обновить индекс ... –