Ik heb een database met een tabel met ongeveer 2 miljoen records die een full text index heeft. Vanuit een importmodule worden hier records aan toegevoegd of gewijzigd. Na elke import moet de full text index rebuild worden zodat de wijzigingen en nieuwe records ook zichtbaar worden in een zoekscherm.
Het probleem dat ik heb is dat tijdens het rebuilden er geen gebruik kan worden gemaakt van het zoekscherm totdat het rebuilden klaar is. Dit is niet acceptabel.
Ik heb geprobeerd om het op te lossen via een incrementele update. Echter, deze duurt dusdanig lang en de performance wordt dusdanig slecht tijdens de incrementele update dat dit nog meer onacceptabel is.
Een ander idee was om 2 identieke full text indexen te maken. Na een import wordt de ene rebuild en schakelt de applicatie (C#, ASP.NET) over naar de andere. Wanneer het rebuilden klaar is, schakelen we terug. Dit doe ik middels DROP van de ene en CREATE op de andere, alleen na een DROP raakt de full text index leeg.
Kan ik dit op een of andere manier bewerkstelligen? Of zijn er andere opties?
Het probleem dat ik heb is dat tijdens het rebuilden er geen gebruik kan worden gemaakt van het zoekscherm totdat het rebuilden klaar is. Dit is niet acceptabel.
Ik heb geprobeerd om het op te lossen via een incrementele update. Echter, deze duurt dusdanig lang en de performance wordt dusdanig slecht tijdens de incrementele update dat dit nog meer onacceptabel is.
Een ander idee was om 2 identieke full text indexen te maken. Na een import wordt de ene rebuild en schakelt de applicatie (C#, ASP.NET) over naar de andere. Wanneer het rebuilden klaar is, schakelen we terug. Dit doe ik middels DROP van de ene en CREATE op de andere, alleen na een DROP raakt de full text index leeg.
Kan ik dit op een of andere manier bewerkstelligen? Of zijn er andere opties?