Ich bin derzeit auf der Suche nach einer Möglichkeit, eine große Datenbank (500MB - 10GB oder mehr auf 10 Tabellen) mit vielen verschiedenen Feldern (nvarchars und bigints) zu durchsuchen. Viele der Felder, die durchsucht werden sollen, befinden sich nicht in der gleichen Tabelle.
Ein Beispiel: Eine Suche nach '5124 Peter' sollte alle Artikel zurückgeben, die ...
- haben eine ID mit der Nummer 5124,
- Peter" im Titel oder in der Beschreibung enthalten
- eine Artikelbezeichnung mit der Nummer 5124 haben
- erstellt von einem Benutzer namens 'peter' oder einem Benutzer, dessen ID 5124 enthält
- erstellt von einem Nutzer mit '5124' oder 'peter' in seiner Adresse.
Wie soll ich die Suche durchführen? Ich habe gelesen, dass die Volltextsuche von MS-Sql viel leistungsfähiger ist als eine Abfrage mit dem LIKE-Schlüsselwort, und ich denke, die Syntax ist klarer, aber ich denke, sie kann nicht nach bigint(id)-Werten suchen, und ich habe gelesen, dass sie Leistungsprobleme mit der Indizierung hat und daher Einfügungen in die DB verlangsamt. In meinem Projekt wird es mehr Einfügen als Lesen, so dass dies ein Thema sein könnte.
Vielen Dank im Voraus, Marks