sql >> Databáze >  >> RDS >> Sqlserver

Použití serveru SQL jako úložiště obrázků

10 Gb není tak velké množství dat, takže pravděpodobně můžete použít databázi k jejich uložení a nebudete mít žádné velké problémy, ale samozřejmě je nejlepší z hlediska výkonu použít souborový systém a z hlediska správy bezpečnosti je lepší použít DB. (zálohy a konzistence).

Naštěstí vám Sql Server 2008 umožňuje mít svůj dort a sníst ho také s:

Atribut FILESTREAM

V SQL Server 2008 můžete použít atribut FILESTREAM na sloupec varbinary a SQL Server pak uloží data pro tento sloupec v místním systému souborů NTFS. Ukládání dat do systému souborů přináší dvě klíčové výhody:

  • Výkon odpovídá výkonu streamování systému souborů.
  • Velikost objektu BLOB je omezena pouze velikostí svazku systému souborů.

Sloupec však lze spravovat stejně jako jakýkoli jiný sloupec BLOB na serveru SQL Server, takže správci mohou využívat možnosti správy a zabezpečení serveru SQL Server k integraci správy dat BLOB se zbytkem dat v relační databázi – aniž by museli spravovat data systému souborů samostatně.

Definování dat jako sloupce FILESTREAM v SQL Server také zajišťuje konzistenci na úrovni dat mezi relačními daty v databázi a nestrukturovanými daty, která jsou fyzicky uložena v systému souborů. Sloupec FILESTREAM se chová úplně stejně jako sloupec BLOB, což znamená plnou integraci operací údržby, jako je zálohování a obnovení, úplnou integraci s modelem zabezpečení serveru SQL Server a plnou podporu transakcí.

Vývojáři aplikací mohou pracovat s daty FILESTREAM prostřednictvím jednoho ze dvou programovacích modelů; mohou používat Transact-SQL pro přístup a manipulaci s daty stejně jako standardní sloupce BLOB, nebo mohou používat rozhraní API pro streamování Win32 s transakční sémantikou Transact-SQL k zajištění konzistence, což znamená, že mohou používat standardní volání Win32 pro čtení/zápis do FILESTREAM BLOBy jako při interakci se soubory v systému souborů.

V SQL Server 2008 mohou sloupce FILESTREAM ukládat data pouze na svazky místního disku a některé funkce, jako je transparentní šifrování a parametry s hodnotou tabulky, nejsou pro sloupce FILESTREAM podporovány. Navíc nemůžete používat tabulky, které obsahují sloupce FILESTREAM ve snímcích databáze nebo relacích zrcadlení databáze, ačkoli je podporováno odesílání protokolů.



  1. Problém s proměnnými vazby Oracle, které správně nepoužívají index

  2. Use string obsahuje funkci v dotazu Oracle SQL

  3. Spojení různých zdrojů dat ve vrstvení

  4. Seznam všech indexů a indexových sloupců v SQL Server DB