Single Instance Store Behavior in Exchange 2007

by Chris Crandall 6. September 2011 16:55

In visiting with customers, a common misconception that I have encountered is with the understanding of how Single Instance Store (SIS) works in Exchange 2007. Unlike Exchange 2003, SIS is only used to reduce the size of the database when an attachment is sent to two or more users that share the same database. To illustrate this, I have setup my lab to send large attachments to several users, exported the attachments to a PST file, and then imported the attachments back into the database.

Note: As you may already be aware, single instance storage has been removed from Exchange 2010 all together because of how the database has been designed.

Lab Environment

1 – All Roles Exchange 2007 SP2

1 – 2008 domain controller

15 files ranging from File1.txt – file15.txt

clip_image002

Each file is 7.52MB

clip_image003

Test users – asmith, bmith, and mboring

There is no mail content in the user’s mailbox before the test.

The sender mboring is on a different mailbox server than asmith and bsmith.

The database only contains the test user accounts and the size of the database before any mail is sent is:

clip_image004

Database Settings

clip_image005

clip_image006

Test

- Sent files 1 – 5 to both asmith and bsmith

clip_image007

- Sent files 6 – 10 just to asmtih

clip_image008

- Sent files 11-15 just to bsmith

clip_image009

- Current size of the database

clip_image010

clip_image012

- Export all the mailbox out of both asmtih and bsmith

clip_image013

clip_image014

- Size of PST file on disk

clip_image015

- Let Online maintenance run

clip_image016

clip_image017

- Current database size

clip_image018

- Ran eseutil /d against the database

clip_image019

- Current database size

clip_image020

- Imported the content from the PST files for both asmith and bsmith back into the database

clip_image021

clip_image022

- The database size is now

clip_image023

As you can tell the database was a 124MB before exporting and importing the data from the PST files. Once the data was imported back in, the size of the database grew to 163 MB. This is because the pointers in the database were broken when the data was exported. When an attachment is sent to two or more mailboxes in the same database, only one copy of the file is stored within the database. A pointer is used to link the mailboxes to the file thus reducing the overall size of the database. Once the data is exported the link is broken and when the data is imported back into the database a new reference is created for the attachment.

clip_image025

As this illustration shows, the two mailboxes share the same file on disk, thus reducing the overall size of the database.

On the link is broken the size of the database will double because each mailbox will store an instance of the same file.

clip_image027

Tags: , ,

Exchange | chris

Powered by BlogEngine.NET 1.5.0.7 | Log in

Calendar

<<  February 2012  >>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

View posts in large calendar