Condividi tramite


Confrontare opzioni per l'archiviazione di BLOB (SQL Server)

Vengono illustrate e confrontate le opzioni disponibili per l'archiviazione di file e documenti in SQL Server.

Archiviazione di file nel database: vantaggi e comportamenti previsti

Nella realtà un'ampia percentuale di dati aziendali non è strutturata e generalmente viene archiviata come file e documenti in file system. La maggior parte di questi dati viene prodotta, gestita e utilizzata da applicazioni che accedono ai file tramite API Windows. Solitamente le aziende mantengono questi dati nel file system, archiviando i metadati correlati per i file in un database relazionale.

L'integrazione dei dati non strutturati nel database relazionale offre vantaggi significativi. Tra i vantaggi offerti è incluso quanto segue:

  • Integrazione di archiviazione e funzionalità di gestione dei dati come ad esempio backup.

  • Servizi integrati quali ricerca full-text e ricerca semantica su dati e metadati.

  • Facilità di amministrazione e gestione dei criteri sui dati non strutturati.

Per la maggior parte, tuttavia, l'archiviazione dei dati non strutturati in un database relazionale non era utile. In precedenza non era possibile eseguire le applicazioni esistenti basate su Windows sulla base di sistemi relazionali. Non è pratico riscrivere applicazioni consolidate (come ad esempio Microsoft Word o Adobe Reader) al fine di eseguirle sulla base delle API del database relazionale. Tali applicazioni semplicemente prevedono l'accessibilità ai dati attraverso le API di Windows. In altri termini, i comportamenti previsti sono i seguenti:

  • Le transazioni di database non sono riconosciute né richieste dalle applicazioni di Windows.

  • Le applicazioni di Windows richiedono compatibilità con le API del file system per i dati di file e directory.

FILESTREAM

SQL Server ha già la funzionalità FILESTREAM, che offre archiviazione, gestione e streaming efficienti di dati non strutturati archiviati come file nel file system. Una soluzione FILESTREAM, tuttavia, richiede programmazione personalizzata e non soddisfa i requisiti per la piena compatibilità delle applicazioni Windows descritta sopra.

FileTable

La funzionalità FileTable si basa sulle funzionalità FILESTREAM esistenti per consentire ai clienti aziendali di archiviare dati e gerarchie di file non strutturati in un database SQL Server, risolvendo i requisiti per l'accesso non transazionale e la compatibilità delle applicazioni Windows per i dati basati su file.

Confronto tra FILESTREAM e tabelle FileTable

Funzionalità Soluzione file server e database Soluzione FILESTREAM Soluzione FileTable
Singola soluzione per le attività di gestione No
Singolo set di servizi: ricerca, creazione di report, esecuzione di query e così via No
Modello di sicurezza integrata No
Aggiornamenti sul posto di dati FILESTREAM No
Gerarchia di file e directory gestita nel database No No
Compatibilità delle applicazioni di Windows No
Accesso relazionale agli attributi dei file No No

Confronto tra FILESTREAM e Archivio BLOB remoti (Remote BLOB Store, RBS)

Per un confronto tra queste due caratteristiche, vedere il post di blog del team RBS: Confronto tra le funzionalità Archivio BLOB remoti e FILESTREAM di SQL Server.

Altre informazioni

FILESTREAM (SQL Server)
FileTable (SQL Server)
Archivio Blob remoto (RBS) (SQL Server)