2009-06-16 4 views
1

Ich habe eine SQL Server 2008-Datenbank mit einer großen Menge varchar (max) -Daten, die derzeit mit der Volltextsuche indiziert wird. Leider unterstützt die Komprimierung auf Zeilenebene in SQL Server 2008 keine LOB-Daten.SQL Server-LOB-Datenkomprimierung und Volltextsuche

Ich spiele mit der Idee, SQLCLR zu verwenden, um die Daten zu komprimieren, und einen benutzerdefinierten iFilter, um die Daten mit der Volltextsuche indizieren zu können.

Ich bin daran interessiert, ein Feedback zu dieser Idee zu bekommen. Könnte es funktionieren? Wurde es schon einmal gemacht? Was sind die möglichen Fallstricke? Kannst du eine bessere Lösung empfehlen?

Antwort

1

Vor langer Zeit baute ich einen Mini-SharePoint, der eingehende Dateien mit Hilfe einer Zip-Bibliothek komprimieren und die Bytes in einer varbinary(max) Spalte speichern würde. Da die Spezifikation Metadaten anstelle von tatsächlichen Dateiinhalten verlangte, musste ich mich nicht um die Volltextsuche kümmern.

Sie könnten jetzt dasselbe mit CLR erreichen. Fallstricke wären die CPU-Last während der Dekomprimierung von Daten für die Indizierung während der Suche, aber CPUs sind jetzt schnell.

Option zwei? Kaufen Sie mehr Speicherplatz.