locked
Filegroup, File and FileStream RRS feed

  • Question

  • Hello,

    I have a database with four tables and all of them have a FileStream field.

    I know I can create one or more Filegroups and inside each filegroup create one or more files.

    How should I distribute them?

    I mean, should I have one filegroup for the database and one file inside that filegroup for each table?

    And how to specify in each table which file to use?

    Thanks,

    Miguel

    Monday, September 13, 2010 3:13 PM

Answers

  • Check out the following script which creates 4 FILESTREAM FILEGROUPs and 2 sample tables. Let us know if works.

    USE [master]
    GO
    
    CREATE DATABASE [IRIDIUM] ON PRIMARY 
    ( NAME = N'IRIDIUM', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\IRIDIUM.mdf' , SIZE = 5120KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ), 
     FILEGROUP [Berlin] CONTAINS FILESTREAM 
    ( NAME = N'BerImage', FILENAME = N'K:\data\Berlin\BerImage' ), 
     FILEGROUP [Budapest] CONTAINS FILESTREAM 
    ( NAME = N'BudImage', FILENAME = N'K:\data\Budapest\BudImage' ), 
     FILEGROUP [London] CONTAINS FILESTREAM DEFAULT 
    ( NAME = N'LonImage', FILENAME = N'K:\data\London\LonImage' ), 
     FILEGROUP [NewYork] CONTAINS FILESTREAM 
    ( NAME = N'NewImage', FILENAME = N'K:\data\NewYork\NewImage' )
     LOG ON 
    ( NAME = N'IRIDIUM_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\IRIDIUM.ldf' , SIZE = 24576KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
    GO
    
    USE IRIDIUM;
    GO
    
    CREATE TABLE LonStream(
    	ID int NOT NULL PRIMARY KEY,
    	Doc varbinary(max) FILESTREAM NULL,
    	rowguid uniqueidentifier ROWGUIDCOL NOT NULL unique,
    	ModifiedDate datetime NULL,
    ) ON [PRIMARY] FILESTREAM_ON London
    GO
    CREATE TABLE BudStream(
    	ID int NOT NULL PRIMARY KEY,
    	Doc varbinary(max) FILESTREAM NULL,
    	rowguid uniqueidentifier ROWGUIDCOL NOT NULL unique,
    	ModifiedDate datetime NULL,
    ) ON [PRIMARY] FILESTREAM_ON Budapest
    GO
    
    

    Kalman Toth, SQL Server & Business Intelligence Training; SQL 2008 GRAND SLAM
    • Marked as answer by Ai-hua Qiu Monday, September 20, 2010 7:49 AM
    Monday, September 13, 2010 5:16 PM