SQL Server
: . (Paul S. Randal) (SQLskills.com) : (Alexandru Chirica),
(Arkadi Brjazovski), (Prem Mehra), (Joanna Omel), (Mike Ruthruff),
(Robin Dhamankar)
: 2008 . : SQL Server 2008
. SQL Server 2008 FILESTREAM, SQL Server 2008 NTFS. , Windows
SQL Server , FILESTREAM , . , - , FILESTREAM. , Windows SQL Server
, . , . , , . , , . , , . , Transact-SQL. , , , , . XML Microsoft
SQL Server, , XQuery. (, ) ( ) , , . , . , , , . , BLOB. SQL Server
2008 FILESTREAM, SQL Server 2008 NTFS. FILESTREAM, , Windows SQL
Server , FILESTREAM , , . , . . . . , SQL Server , NTFS. ( ). SQL
Server, SQL Server ( ), . , , , SQL Server , SQL Server. . , , ,
SQL Server. , , (ACL). . , , 256 (, -) , 1 . 256 1 . (, varbinary
(max)) 2 . . , SQL Server, ODBC, , . . . , , , . , , , . , . . SQL
Server . , , (. . ). , SQL Server. . , , , . . . , , : To BLOB or
Not to BLOB: Large Object Storage in a Database or a Filesystem?
(Gray, Van Ingen, and Sears). , ,
.http://research.microsoft.com/research/pubs/view.aspx?msr_tr_id=MSR-TR-2006-45
, , . , FILESTREAM, SQL Server 2008.
SQL Server ( varbinary (max))FILESTREAM
NTFS2 1 NTFS
+
1. SQL Server 2008FILESTREAM , , , , . , . FILESTREAM FILESTREAM
. FILESTREAM FILESTREAM SQL Server 2008. , (. . ) NTFS. API Win32,
SQL Server.FILESTREAM , FILESTREAM . SQL Server . FILESTREAM , (
FILESTREAM). FILESTREAM FILESTREAM .FILESTREAM , varbinary (max).
FILESTREAM , varbinary (max). , , SQL Server. FILESTREAM varbinary
(max) , FILESTREAM. , varbinary (max) SQL Server 2008, 2 .
FILESTREAM varbinary (max) ( NTFS). FILESTREAM NTFS, . FILESTREAM
SQL Server , FILESTREAM Windows. FILESTREAM UNC. SQL Server
FILESTREAM, . , FILESTREAM . FILESTREAM ( , ). , (, FILESTREAM).
SQL Server FILESTREAM. FILESTREAM : Transact-SQL API Win32. DML, ,
, . FILESTREAM , , . FILESTREAM. FILESTREAM FILESTREAM. ,
FILESTREAM. FILESTREAM Transact-SQL Win32 API. . Transact-SQL
Transact-SQL FILESTREAM , . FILESTREAM ( , NULL). Win32 .
FILESTREAM . FILESTREAM NULL, , , . Transact-SQL, UPDATE.Write(),
FILESTREAM. , FILESTREAM, , FILESTREAM, . FILESTREAM , FILESTREAM.
Transact-SQL FILESTREAM . SQL Server 2008 FILESTREAM Transact-SQL
(http://msdn.microsoft.com/ru-ru/library/cc645962.aspx). Win32
FILESTREAM , GET_FILESTREAM_TRANSACTION_CONTEXT () , . , .
FILESTREAM . NULL, . FILESTREAM. FILESTREAM . PathName UNC- ,
FILESTREAM . Win32 Win32. NULL, FILESTREAM NULL. , FILESTREAM ,
Win32. , . Win32 SQL Server. , OpenSqlFilestream Win32 API Win32. ,
SqlFileStream API. Win32, ReadFile() WriteFile(), . , FILESTREAM .
. (.. ). FILESTREAM Transact-SQL, . . , AFTER, , UPDATE. API- Win32
FILESTREAM . SQL Server 2008 FILESTREAM Win32
(http://msdn.microsoft.com/ru-ru/library/cc645940.aspx).
, . , , , , . . . FILESTREAM , FILESTREAM . , FILESTREAM .
FILESTREAM FILESTREAM , . FILESTREAM FILESTREAM . . FILESTREAM
Win32 API, READ COMMITTED. Transact-SQL REPEATABLE READ . ,
Transact-SQL READ UNCOMMITTED NOLOCK, FILESTREAM. . , . API
ERROR_SHARING_VIOLATION, . , FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT
, . SqlFileStream API ReadWrite. , . - , -. FSCTL , , . .
FSCTL_SQL_FILESTREAM_FETCH_OLD_CONTENT SQL Server 2008
(http://technet.microsoft.com/ru-ru/library/cc627407.aspx).
FILESTREAM Server Message Block (SMB). , API. , API , API . API
CTP- SQL Server 2008. , , ( ), . , , . , ( -), FILESTREAM .
FILESTREAM , , . FILESTREAM FILESTREAM, . , , FILESTREAM. : . ,
FILESTREAM, ( ). . SQL Server FILESTREAM , SQL Server . NTFS (
FILESTREAM). , FILESTREAM ( 1 ). varbinary (max), FILESTREAM
Transact-SQL FILESTREAM NTFS. , Win32 FILESTREAM , Transact-SQL
varbinary (max) . , (/).
. 1. NTFS , , SQL Server, Win32 FILESTREAM. 4 SQL Server. , ,
Win32 API SQL Server. , FILESTREAM , API Win32. Windows FILESTREAM
, , FILESTREAM, Windows, SQL Server FILESTREAM. , NTFS FILESTREAM.
, FILESTREAM Windows. . , SQL Server, , - . , FILESTREAM Win32 API,
. . Physical Database Storage Design TechNet
(http://www.microsoft.com/technet/prodtechnol/sql/2005/physdbstor.mspx).
, -. . Predeployment I/O Best Practices TechNet SQL Server Best
Practices
(http://www.microsoft.com/technet/prodtechnol/sql/bestpractice/pdpliobp.mspx).
FILESTREAM, , SQL Server. , FILESTREAM , . , , , , . , . SQL
Server, FILESTREAM . FILESTREAM. RAID RAID , , , RAID, , . Physical
Database Storage Design RAID RAID. , . RAID , , . , RAID 5 , . ,
RAID 10 ( ), , 50% RAID . , RAID. RAID , , , . FILESTREAM,
FILESTREAM RAID, . . , RAID, , , , . , RAID FILESTREAM , , . , , .
, FILESTREAM , , SATA ( SATA), SCSI. , . SCSI IDE/SATA, , . SATA ,
SCSI, . SATA 10 000 /, 5400 7200 /. SCSI 10 000 15 000 /. , (, ) (
, ). , -. , SATA Native Command Queue (NCQ), SCSI Command Tag Queue
(CTQ), - . SCSI , , , . SQL Server , . - . TechNet SQL Server I/O
Basics
(http://www.microsoft.com/technet/prodtechnol/sql/2005/iobasics.mspx).
SCSI SATA , SATA. ( ) . , . , . FILESTREAM . FILESTREAM FILESTREAM
, ( ). , , , , FILESTREAM . SATA , , . NTFS. . SCSI , SATA , NTFS .
. NTFS (.. FILESTREAM, , ). NTFS, NTFS , SQL Server , FILESTREAM
(.. FILESTREAM). NTFS, NTFS , SQL Server , FILESTREAM (..
FILESTREAM ). , , , NTFS SATA, . FILESTREAM SATA , NTFS ,
FILESTREAM ( DBCC CHECKDB ). , FILESTREAM SATA , SATA . NTFS - , ,
( NTFS) . , , FILESTREAM. NTFS . NTFS Technical Reference
(http://technet.microsoft.com/ru-ru/library/cc758691.aspx) Working
with File Systems
(http://technet.microsoft.com/ru-ru/library/bb457112.aspx) TechNet.
NTFS NTFS (.. FILESTREAM). NTFS, FILESTREAM. , , FILESTREAM. 8.3 (
). , 16- . 8.3, 8.3 , . ( 300 000) . , , , , . , , .fsutil behavior
set disable8dot3 1. 8.3 NTFS . - 16- , . , , . , . . , , .fsutil
behavior set disablelastaccess 1 Windows , . , , ( , ). , . . . , ,
, , (. . ). , . . Windows Default Cluster Size for FAT and NTFS
(NTFS, FAT http://support.microsoft.com/kb/140365). FILESTREAM , 1
. , NTFS FILESTREAM 64 . , NTFS 2 (T) 4 . /A . , :format F:
/FS:NTFS /V:MyFILESTREAMContainer /A:64K , . , . , . , . , , , , ,
, .- , ( ) . , - . , . , , FILESTREAM, - , ., NTFS, . , , . , . , ,
, NTFS, . , , . , , NTFS 4096 . FILESTREAM, /C. :format F: /FS:NTFS
/V:MyFILESTREAMContainer /A:4096 /C , .1. , .2. , .3. , .4. , .
.
. 2. Windows
FILESTREAM NTFS, NTFS 1:1. , FILESTREAM SQL Server, NTFS. ,
FILESTREAM , . , FILESTREAM SQL Server. . FILESTREAM NTFS,
FILESTREAM, SQL Server, FILESTREAM . FILESTREAM , , SQL Server.,
NTFS, FILESTREAM, SQL Server 2008, FILESTREAM SQL Server 2008.
FILESTREAM. -, SQL Server . -, , SMB (445) . . . Service Overview
and Network Port Requirements for the Windows Server System
(http://support.microsoft.com/kb/832017). . FILESTREAM FILESTREAM (
). , , . ( ). , SQL Server . , . SQL Server DBCC CHECKDB , ,
Windows . FILESTREAM WindowsFILESTREAM , Windows SQL Server . , ,
SQL Server Windows. FILESTREAM Windows . Windows . Windows
FILESTREAM SQL Server 2008 SQL Server. .1. , Microsoft SQL Server
2008, SQL Server.2. SQL Server, .3. SQL Server SQL Server,
FILESTREAM.4. .5. SQL Server FILESTREAM.6. FILESTREAM
Transact-SQL.7. FILESTREAM Windows, FILESTREAM -. Windows
Windows.8. , FILESTREAM FILESTREAM.9. . FILESTREAM, .
. 3. FILESTREAM SQL Server SQL Server, FILESTREAM. , FILESTREAM
FILESTREAM , FILESTREAM SQL Server. , FILESTREAM Windows, SQL
Server. SQL Server FILESTREAM . .
. 4. FILESTREAM SQL Server SQL Server FILESTREAM SQL Server,
FILESTREAM, Windows, SQL Server. FILESTREAM FILESTREAM, ,
FILESTREAM. FILESTREAM SQL Server FILESTREAM, , FILESTREAM SQL
Server 2008. FILESTREAM (.. Windows). Win32 FILESTREAM, Windows SQL
Server. Transact-SQL FILESTREAM, Win32 , Windows, . Windows API -
Windows. SQL Server - Windows, . FILESTREAM , SQL Server
BUILTIN\Administrators . , , . FILESTREAM SQL Server ( FILESTREAM)
SQL Server 2008. , FILESTREAM Windows NTFS, FILESTREAM ( Windows
FILESTREAM). SQL Server FILESTREAM sp_configure,
filestream_access_level . : 0 FILESTREAM . 1 FILESTREAM
Transact-SQL. 2 FILESTREAM Transact-SQL Win32. , FILESTREAM
Transact-SQL Win32.
EXEC sp_configure filestream_access_level,
2;GORECONFIGURE;GO
RECONFIGURE , . , FILESTREAM Windows, SQL Server . .
EXEC sp_configure filestream_access_level;GO
FILESTREAM Windows, config_value sp_configure (. . 0) run_value
RECONFIGURE. FILESTREAM FILESTREAM Windows SQL Server, FILESTREAM.
FILESTREAM . 1:1 FILESTREAM FILESTREAM. FILESTREAM , ALTER
DATABASE. FILESTREAM .
ALTER DATABASE Production ADDFILEGROUP FileStreamGroup1 CONTAINS
FILESTREAM;GO
CONTAINS FILESTREAM , . FILESTREAM , .
5591, 16, 3, 1 FILESTREAM .
, FILESTREAM Windows SQL Server, . FILESTREAM . , . , .
FileStreamGroup1.
ALTER DATABASE Production ADD FILE (NAME = FSGroup1File,FILENAME
= 'F:\Production\FSDATA')TO FILEGROUP FileStreamGroup1;GO
FSDATA. , . filestream.hdr. FILESTREAM . $FSLOG. FILESTREAM . ,
FILESTREAM. , . FILESTREAM FILESTREAM, , FILESTREAM. , FILESTREAM
varbinary (max) FILESTREAM. FILESTREAM.
USE Production;GOCREATE TABLE DocumentStore (DocumentID INT
IDENTITY PRIMARY KEY,Document VARBINARY (MAX) FILESTREAM
NULL,DocGUID UNIQUEIDENTIFIER NOT NULL ROWGUIDCOLUNIQUE DEFAULT
NEWID ())FILESTREAM_ON FileStreamGroup1;GO
FILESTREAM, FILESTREAM. FILESTREAM_ON , FILESTREAM, . .
FILESTREAM , , FILESTREAM . . FILESTREAM , . , , FILESTREAM,
uniqueidentifier ROWGUIDCOL. NULL UNIQUE PRIMARY KEY. GUID ,
DEFAULT, NEWID () ( NEWSEQUENTIALID (), , ). . CREATE TABLE
(Transact-SQL) SQL Server 2008
http://msdn.microsoft.com/ru-ru/library/ms174979.aspx. FILESTREAM
FILESTREAM FILESTREAM . , FILESTREAM FILESTREAM. , . , FILESTREAM,
FILESTREAM ., , . , Windows SharePoint Services, . FILESTREAM (LSN)
. LSN FILESTREAM . , , FILESTREAM. . FULL BULK_LOGGED . . .
FILESTREAM , . . . CHECKPOINT SQL Server 2008
(http://msdn.microsoft.com/ru-ru/library/ms189573.aspx). ,
FILESTREAM , , , , . CHECKPOINT. , FILESTREAM, , FILESTREAM_ON ,
FILESTREAM, . , , FILESTREAM. ( CREATE TABLE CREATE CLUSTERED INDEX
WITH DROP_EXISTING) . FILESTREAM , , , . () .
CREATE PARTITION FUNCTION DocPartFunction (INT)AS RANGE RIGHT
FOR VALUES (100000, 200000);GO
CREATE PARTITION SCHEME DocPartScheme ASPARTITION
DocPartFunction TO (Data_FG1, Data_FG2, Data_FG3);GO
CREATE PARTITION SCHEME DocFSPartScheme ASPARTITION
DocPartFunction TO (FS_FG1, FS_FG2, FS_FG3);GO
CREATE TABLE DocumentStore (DocumentID INT IDENTITY PRIMARY
KEY,Document VARBINARY (MAX) FILESTREAM NULL,DocGUID
UNIQUEIDENTIFIER NOT NULL ROWGUIDCOLUNIQUE DEFAULT NEWID () ON
Data_FG1)ON DocPartScheme (DocumentID)FILESTREAM_ON
DocFSPartScheme;GO
, DocumentID , UNIQUE DocGUID, , DocumentID . , , UNIQUE , , . ,
, .
CREATE TABLE NonPartitionedDocumentStore (DocumentID INT
IDENTITY PRIMARY KEY,Document VARBINARY (MAX) FILESTREAM
NULL,DocGUID UNIQUEIDENTIFIER NOT NULL ROWGUIDCOLUNIQUE DEFAULT
NEWID ());GO
ALTER TABLE DocumentStore SWITCH PARTITION 2 TO
NonPartitionedDocumentStore;GO
. 7733, 16, 4, 1ALTER TABLE SWITCH .
FileStreamTestDB.dbo.DocumentStore , UQ_Document_8CC1617F60ED59 .
.
ALTER INDEX [UQ__Document__8CC331617F60ED59] ON DocumentStore
DISABLE;GO
ALTER TABLE FileStreamTest3 SWITCH PARTITION 2 TO
NonPartitionedFileStreamTest3;GO
. 4947, 16, 1, 1ALTER TABLE SWITCH .
FileStreamTestDB.dbo.DocumentStore UQ_NonParti_8CC3316103317E3D
FileStreamTestDB.dbo.NonPartitionedDocumentStore. , , , .
ALTER INDEX [UQ__NonParti__8CC3316103317E3D] ON
NonPartitionedDocumentStore DISABLE;GO
ALTER TABLE DocumentStore SWITCH PARTITION 2 TO
NonPartitionedDocumentStore;GO
ALTER INDEX [UQ__NonParti__8CC3316103317E3D]
ONNonPartitionedDocumentStore REBUILD WITH (ONLINE = ON);ALTER
INDEX [UQ__Document__8CC331617F60ED59]
ONNonPartitionedDocumentStore REBUILD WITH (ONLINE = ON);GO
FILESTREAM SQL Server 2008. FILESTREAM , FILESTREAM . , - .
uniqueidentifier, , , FILESTREAM 16 .
USE master;GO
-- CREATE DATABASE Production ON PRIMARY(NAME = 'Production',
FILENAME = 'E:\Production\Production.mdf'),FILEGROUP
DataFilegroup1(NAME = 'Data_FG1', FILENAME =
'F:\Production\Data_FG1.ndf'),FILEGROUP DataFilegroup2(NAME =
'Data_FG2', FILENAME = 'G:\Production\Data_FG2.ndf'),FILEGROUP
FSFilegroup0 CONTAINS FILESTREAM(NAME = 'FS_FG0', FILENAME =
'H:\Production\FS_FG0'),FILEGROUP FSFilegroup1 CONTAINS
FILESTREAM(NAME = 'FS_FG1', FILENAME =
'I:\Production\FS_FG1'),FILEGROUP FSFilegroup2 CONTAINS
FILESTREAM(NAME = 'FS_FG2', FILENAME =
'J:\Production\FS_FG2'),FILEGROUP FSFilegroup3 CONTAINS
FILESTREAM(NAME = 'FS_FG3', FILENAME =
'K:\Production\FS_FG3'),FILEGROUP FSFilegroup4 CONTAINS
FILESTREAM(NAME = 'FS_FG4', FILENAME =
'L:\Production\FS_FG4'),FILEGROUP FSFilegroup5 CONTAINS
FILESTREAM(NAME = 'FS_FG5', FILENAME =
'M:\Production\FS_FG5'),FILEGROUP FSFilegroup6 CONTAINS
FILESTREAM(NAME = 'FS_FG6', FILENAME =
'N:\Production\FS_FG6'),FILEGROUP FSFilegroup7 CONTAINS
FILESTREAM(NAME = 'FS_FG7', FILENAME =
'O:\Production\FS_FG7'),FILEGROUP FSFilegroup8 CONTAINS
FILESTREAM(NAME = 'FS_FG8', FILENAME =
'P:\Production\FS_FG8'),FILEGROUP FSFilegroup9 CONTAINS
FILESTREAM(NAME = 'FS_FG9', FILENAME =
'Q:\Production\FS_FG9'),FILEGROUP FSFilegroupA CONTAINS
FILESTREAM(NAME = 'FS_FGA', FILENAME =
'R:\Production\FS_FGA'),FILEGROUP FSFilegroupB CONTAINS
FILESTREAM(NAME = 'FS_FGB', FILENAME =
'S:\Production\FS_FGB'),FILEGROUP FSFilegroupC CONTAINS
FILESTREAM(NAME = 'FS_FGC', FILENAME =
'T:\Production\FS_FGC'),FILEGROUP FSFilegroupD CONTAINS
FILESTREAM(NAME = 'FS_FGD', FILENAME =
'U:\Production\FS_FGD'),FILEGROUP FSFilegroupE CONTAINS
FILESTREAM(NAME = 'FS_FGE', FILENAME =
'V:\Production\FS_FGE'),FILEGROUP FSFilegroupF CONTAINS
FILESTREAM(NAME = 'FS_FGF', FILENAME =
'W:\Production\FS_FGF');GO
USE Production;GO
-- 6 GUIDCREATE PARTITION FUNCTION LoadBalance_PF
(UNIQUEIDENTIFIER)AS RANGE LEFT FOR VALUES ( CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-100000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-200000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-300000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-400000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-500000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-600000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-700000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-800000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-900000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-a00000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-b00000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-c00000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-d00000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-e00000000000'), CONVERT
(uniqueidentifier, '00000000-0000-0000-0000-f00000000000'));GO
-- FILESTREAM, 16 FILESTREAMCREATE PARTITION SCHEME
LoadBalance_FS_PSAS PARTITION LoadBalance_PF TO (FSFileGroup0,
FSFileGroup1, FSFileGroup2, FSFileGroup3,FSFileGroup4,
FSFileGroup5, FSFileGroup6, FSFileGroup7,FSFileGroup8,
FSFileGroup9, FSFileGroupA, FSFileGroupB,FSFileGroupC,
FSFileGroupD, FSFileGroupE, FSFileGroupF);GO
-- CREATE PARTITION SCHEME LoadBalance_Data_PSAS PARTITION
LoadBalance_PF TO (DataFileGroup1, DataFileGroup2, DataFileGroup1,
DataFileGroup2,DataFileGroup1, DataFileGroup2, DataFileGroup1,
DataFileGroup2,DataFileGroup1, DataFileGroup2, DataFileGroup1,
DataFileGroup2,DataFileGroup1, DataFileGroup2, DataFileGroup1,
DataFileGroup2);GO
-- CREATE TABLE DocumentStore (DocumentID INT IDENTITY,Document
VARBINARY (MAX) FILESTREAM NULL,DocGUID UNIQUEIDENTIFIER NOT NULL
ROWGUIDCOLDEFAULT NEWID (),CONSTRAINT DocStorePK PRIMARY KEY
CLUSTERED (DocGUID),CONSTRAINT DocStoreU UNIQUE (DocGUID))ON
LoadBalance_Data_PS (DocGUID)FILESTREAM_ON LoadBalance_FS_PS;GO
.
SET NOCOUNT ON;GO
-- 10 000 DECLARE @count INT = 0;WHILE (@count <
10000)BEGININSERT INTO DocumentStore DEFAULT VALUES;SET @count =
@count + 1;END;GO
-- SELECT COUNT ($PARTITION.LoadBalance_PF (DocGUID))FROM
DocumentStoreGROUP BY $PARTITION.LoadBalance_PF (DocGUID);GO
631, 641, 661, 640, 649, 637, 618, 618, 576, 608, 595, 645, 640,
616, 602 623 FILESTREAM FS_FG0 FS_FGF. FILESTREAM , FILESTREAM SQL
Server. , . . FILESTREAM SQL Server SQL Server 2008
(http://msdn.microsoft.com/ru-ru/library/bb895334.aspx). ,
FILESTREAM, , : SQL Server, , . , FILESTREAM, . varbinary (max),
FILESTREAM, 2 . , FILESTREAM uniqueidentifier. , GUID (..
NEWSEQUENTIALID() NEWID()). FILESTREAM. FILESTREAM . , FILESTREAM,
. FILESTREAM SQL Server. , FILESTREAM . FILESTREAM . FILESTREAM
Windows, FILESTREAM , . . SQL Server 2008: FILESTREAM
(http://msdn.microsoft.com/ru-ru/library/cc645886.aspx). FILESTREAM
, varbinary (max). , , FILESTREAM. SQL Server FILESTREAM.
FILESTREAM CREATE DATABASE ON, . FILESTREAM, - . FILESTREAM . ,
FILESTREAM. . , FILESTREAM, FILESTREAM , ., , , FILESTREAM INCLUDE
. , FILESTREAM, . FILESTREAM. PRIMARY KEY, FOREIGN KEY UNIQUE
FILESTREAM. FILESTREAM, . INSTEAD OF , FILESTREAM. FILESTREAM Win32
API, READ COMMITTED. Transact-SQL REPEATABLE READ . , Transact-SQL
READ UNCOMMITTED NOLOCK, FILESTREAM. FILESTREAM (, ). ,
CONTINUE_AFTER_ERROR BACKUP RESTORE, FILESTREAM ( ,
CONTINUE_AFTER_ERROR). FILESTREAM, SQL Server Win32. FILESTREAM. -,
- SQL Server 2008 , FILESTREAM Windows.SQL Server ExpressSQL Server
Express FILESTREAM. 4 FILESTREAM. FILESTREAM SQL Server Express
Service Broker, , Service Broker FILESTREAM . , - 4 . , Service
Broker FILESTREAM. FILESTREAM FILESTREAM FILESTREAM SQL Server
Express. FILESTREAM . , FILESTREAM . , 8.3 NTFS. , NTFS. ,
FILESTREAM . , FILESTREAM. , FILESTREAM , . , SMB FILESTREAM.
Windows Server 2003 ; 60 . . , FILESTREAM ( FILESTREAM). , RAID . ,
. , FILESTREAM API . SQL Server 2008 FILESTREAM. , . FILESTREAM ,
FILESTREAM. , FILESTREAM . . , SQL Server , FILESTREAM Windows SQL
Server. , FILESTREAM . FILESTREAM. , FILESTREAM. , , . FILESTREAM.
FILESTREAM , FILESTREAM . , , , . ( ): FILESTREAM, FILESTREAM.
FILESTREAM. , varbinary (max), FILESTREAM. , , AllocationSize API
OpenSqlFilestream SqlFilestream. , , NTFS, . FILESTREAM ,
Transact-SQL, . tempdb, , . FILESTREAM . , . , Win32. ,
SetFilePointer. FILE_SEQUENTIAL_ONLY. , 60 ( ). FILESTREAM ,
FILESTREAM. , . FILESTREAM SQL Server 2008, SQL Server 2008 NTFS. .
FILESTREAM . FILESTREAM , 1 , Transact-SQL, FILESTREAM. ,
FILESTREAM . , , FILESTREAM . , . , SQL Server 2008 RTM FILESTREAM,
. , (, ). , , , SQL Server, , , , ., FILESTREAM Windows SQL Server,
, , . , , .
.http://www.microsoft.com/sqlserver/: - SQL
Serverhttp://technet.microsoft.com/ru-ru/sqlserver/: SQL Server
http://msdn.microsoft.com/ru-ru/sqlserver/: SQL Server
? , . 1 () 5 () . : - , , - ? - , ? . 35