Vergleichen von Optionen zum Speichern von Blobs (SQL Server)

Erläutert und vergleicht die Optionen, die zum Speichern von Dateien und Dokumenten in SQL Server verfügbar sind.

In diesem Thema

  • Speichern von Dateien in der Datenbank – Vorteile und Erwartungen

  • FILESTREAM

  • FileTables

  • Vergleichen von FILESTREAM und FileTable

  • Vergleichen von FILESTREAM und Remote BLOB-Speicher (RBS)

  • Weitere Informationen

Speichern von Dateien in der Datenbank – Vorteile und Erwartungen

Ein großer Prozentsatz der Unternehmensdaten ist unstrukturiert und wird in der Regel als Dateien und Dokumente in Dateisystemen gespeichert. Der Großteil dieser Daten wird von Anwendungen generiert, verwaltet und benötigt, die über Windows-APIs auf die Dateien zugreifen. Unternehmen speichern diese Daten in der Regel im Dateisystem, wohingegen die verwandten Metadaten für die Dateien in einer relationalen Datenbank gespeichert werden.

Die Integration unstrukturierter Daten in die relationale Datenbank bietet bedeutende Vorteile. Dazu gehören folgende Vorteile:

  • Integrierte Speicher- und Datenverwaltungsfunktionen, z. B. Sicherungen.

  • Integrierte Dienste, z. B. Volltextsuche und semantische Suche über Daten und Metadaten.

  • Einfache Administration und Richtlinienverwaltung der unstrukturierten Daten.

Es war weitestgehend jedoch nicht zweckdienlich, solch unstrukturierte Daten in einer relationalen Datenbank zu speichern. Es war zuvor nicht möglich, vorhandene, auf Windows basierende Anwendungen auf relationalen Systemen auszuführen. Das erneute Schreiben etablierter Anwendungen (z. B. Microsoft Word oder Adobe Reader) zur Ausführung auf relationalen Datenbank-APIs ist nicht praktisch. Bei diesen Anwendungen wird einfach erwartet, dass über Windows-APIs auf die Daten zugegriffen werden kann. Anders ausgedrückt umfassen die Erwartungen Folgendes:

  • Für Windows-Anwendungen sind keine Datenbanktransaktionen erforderlich, und diese werden nicht berücksichtigt.

  • Windows-Anwendungen erfordern für Datei- und Verzeichnisdaten Kompatibilität mit Dateisystem-APIs.

[NACH OBEN]

FILESTREAM

SQL Server verfügt bereits über die FILESTREAM-Funktion, die ein effizientes Speichern, Verwalten und Streamen unstrukturierter Daten ermöglicht, die als Dateien im Dateisystem gespeichert sind. Bei einer FILESTREAM-Lösung ist jedoch die benutzerdefinierte Programmierung erforderlich. Sie wird der oben beschriebenen Anforderung im Hinblick auf vollständige Windows-Anwendungskompatibilität nicht gerecht.

[NACH OBEN]

FileTables

Die FileTable-Funktion beruht auf vorhandenen FILESTREAM-Funktionen, über die Unternehmenskunden, unstrukturierte Dateidaten und Verzeichnishierarchien in einer SQL Server-Datenbank speichern können, indem die Anforderungen für nicht transaktionalen Zugriff und Windows-Anwendungskompatibilität für dateibasierte Daten erfüllt werden.

[NACH OBEN]

Vergleichen von FILESTREAM und FileTable

Funktion

Dateiserver und Datenbanklösung

FILESTREAM-Lösung

FileTable-Lösung

Einzelne Story für Verwaltungstasks

Nein

Ja

Ja

Einzelner Satz von Diensten: Suche, Berichterstellung, Abfrage usw.

Nein

Ja

Ja

Integriertes Sicherheitsmodell

Nein

Ja

Ja

Direkte Updates der FILESTREAM-Daten

Ja

Nein

Ja

In der Datenbank beibehaltene Datei- und Verzeichnishierarchie

Nein

Nein

Ja

Windows-Anwendungskompatibilität

Ja

Nein

Ja

Relationaler Zugriff auf Dateiattribute

Nein

Nein

Ja

[NACH OBEN]

Vergleichen von FILESTREAM und Remote BLOB-Speicher (RBS)

Einen Vergleich dieser beiden Funktionen finden Sie in diesem Blogbeitrag vom RBS-Team: SQL Server Remote BLOB-Speicher und FILESTREAM-Funktion – Vergleich.

[NACH OBEN]

Weitere Informationen

[NACH OBEN]