Kürzlich hat unser Team FILESTREAM angeschaut, um die Möglichkeiten unserer proprietären Anwendung zu erweitern. Der Hauptzweck dieser App ist die Verwaltung der verschiedenen PDFs, Bilder und Dokumente für alle Teile, die wir herstellen. Unsere ASP-Anwendung verwendet einige Tools von Drittanbietern, um die Anzeige dieser Dateien zu ermöglichen. Wir haben derzeit 980 GB Daten auf dem Fileserver. Wir haben etwa 200 GB Binärdaten in SQL Server, die wir extrahieren möchten, da sie nicht gut funktionieren. Daher scheint FILESTREAM ein guter Kompromiss zu den beiden Hauptproblemen bei der Datenspeicherung/-zugriffe zu sein.FILESTREAM/FILETABLE Erläuterungen zur Implementierung
Ein paar Dinge sind nicht ganz klar zu uns:
FILESTREAM oder nicht seine Daten auf einem Laufwerk speichern können, die nicht lokal gebunden ist. Wir haben bereits einen Dateiserver mit einem RAID 10 (1,5 TB Laufwerke). Dieser Server speichert jetzt alle Dokumente, müssten wir diese Laufwerke auf den SQL Server für FILESTREAM verschieben? Das wäre eine harte Nuss, denn der Server verdoppelt sich auch als Application Server (zwei VMs auf einem physischen Server).
FILETABLE speichert die allgemeinen Metadaten über die Dateien, aber wo ist der Volltext-Teil davon gespeichert, um die Suche nach Dateien wie doc/docx zu ermöglichen? Ist das getrennt? Können Sie Kriterien zum Suchen frei hinzufügen? Wenn ja, werden Links zur Klärung geschätzt.
Kann FILETABLE in einer anderen Tabelle mit einem Fremdschlüssel referenziert werden?
Vielen Dank im Voraus
EDIT: Für dieses Web-Video alles und in Bezug auf mehr aus dem Jahr 2008 zu erklären Filestream bis 2012 und die cavets bei den in diesen Fragen berücksichtigen zu müssen (ich ihn ernst rep wäre, wenn Ich könnte): http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2270
Zusammenfassend werden wir FILESTREAM nicht verwenden, da es zu einem enormen Anstieg für Investitionen zu investieren wäre.
EDIT 2:
Update # 1 - Nach sorgfältigem Filetable neben FILESTREAM Beurteilung bekamen wir eine Gewinnkombination. Wir mussten die Dateien auf den neuen Server verschieben (war nicht zu schmerzhaft, da sie auf der gleichen VM waren). Es dauerte ehrlich gesagt mehr Zeit, um ein Extraktionswerkzeug zu schreiben, um die Binärdaten innerhalb von SQL in das Dateisystem zu schreiben.
Update # 2 - Das seperate war aber wieder Bob hatte eine ausgezeichnete Webinar erläutern dies: http://channel9.msdn.com/Events/TechEd/Europe/2012/DBI411
Update # 3 - Verwenden von TFT Vererbungs wir den Text & Tabellen Tabelle recycelt wir (minus die riesigen Binärblob) hatte die In unseren Legacy-Apps waren nur wenige Änderungen erforderlich. Das war ein riesiges Ergebnis für das Entwicklerteam.
Spot auf. Wir haben einen kleinen Schluckauf erlebt, seit wir das Entity-Framework verwenden. Wir verwendeten einen Softkey (wie in keiner FK-Bedingung) für die Stream-ID. Der EF-Designer ignoriert die FileTables vollständig. Wir haben gerade ein kleines ADO.Net-Projekt in unserem Hauptprojekt gemacht, um das Hochladen/Herunterladen von Dokumenten zu ermöglichen. – jjhayter