Contents
Overview 1
Introduction to Storage Groups and Stores 2
ESE Features in Exchange 2000 7
Creating and Managing Storage Groups
and Stores 23
Database Considerations 30
Introduction to Indexing 36
Lab A: Creating Storage Groups and
Multiple Exchange 2000 Databases 46
Lab B: Building a Full-Text Index 54
Review 60
Module 4: Creating and
Managing Storage
Groups and Stores
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Information in this document is subject to change without notice. The names of companies,
products, people, characters, and/or data mentioned herein are fictitious and are in no way intended
to represent any real individual, company, product, or event, unless otherwise noted. Complying
with all applicable copyright laws is the responsibility of the user. No part of this document may
be reproduced or transmitted in any form or by any means, electronic or mechanical, for any
purpose, without the express written permission of Microsoft Corporation. If, however, your only
means of access is electronic, permission to print one copy is hereby granted.
Courseware Testing: Robertson Lee (Volt)
Creative Director, Media/Sim Services: David Mahlmann
Web Development Lead: Lisa Pease
CD Build Specialist: Julie Challenger
Localization Manager: Rick Terek
Operations Coordinator: John Williams
Manufacturing Support: Laura King; Kathy Hershey
Lead Product Manager, Release Management: Bo Galford
Lead Product Manager, Messaging: Dave Phillips
Group Manager, Courseware Infrastructure: David Bramble
Group Product Manager, Content Development: Dean Murray
General Manager: Robert Stewart
Module 4: Creating and Managing Storage Groups and Stores iii
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Instructor Notes
This module provides students with an overview of the storage capability in
Microsoft
®
Exchange 2000 through the use of storage groups and stores.
Students will learn how to create and manage storage groups and stores, as well
as the various file types involved, and how data is written to databases.
After completing this module, students will be able to:
!
Explain the benefits of using multiple storage groups and stores, and
demonstrate how to mount and dismount stores.
!
Describe the Extensible Storage Engine (ESE) features in Exchange 2000
Practice the demonstrations.
Presentation:
120 Minutes
Lab:
60 Minutes
iv Module 4: Creating and Managing Storage Groups and Stores
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Module Strategy
Use the following strategy to present this module:
!
Introduction to Storage Groups and Stores
In this section, you will help the students gain an understanding of the
purpose of storage groups and stores. Showing students how to mount and
dismount a store will help them to learn this process.
!
ESE Features in Exchange 2000
In this section, you will help students to understand where files are stored
and the various file extensions that ESE uses. Make sure students
understand how to use log files and circular logging.
!
Creating and Managing Storage Groups and Stores
The focus of this section is to present a more in-depth discussion of what
storage groups and stores are and how best to manage them. Your
explanation of how storage groups and stores can be configured to match
the requirements of the users accessing them, as well as the need for
security, will help students to determine how best to manage their own
end of the Classroom Setup Guide for course 1572A, Implementing and
Managing Microsoft Exchange 2000.
Lab Setup
The following list describes the setup requirements for the labs in this module.
Setup Requirement 1
The labs in this module require Exchange 2000 and a custom MMC. To prepare
student computers to meet this requirement, perform one of the following
actions:
!
Complete the labs for Module 2, “Installing Microsoft Exchange 2000,” in
course 1572A, Implementing and Managing Microsoft Exchange 2000.
!
Install Exchange 2000 at D:\Program Files\Exchsrvr on each server into an
organization named Northwind Traders. Components installed are Microsoft
Exchange Messaging and Collaboration Services, Microsoft Exchange
System Management Tools, and Microsoft Exchange Instant Messaging
Service. Have the students create a custom MMC in the C:\Documents and
Settings\All Users\Desktop that is saved as your_firstname Console. The
MMC contains the Active Directory Users and Computers snap-in and the
Exchange System snap-in.
Setup Requirement 2
The labs in this module require a custom OU, a user account for each student, a
mailbox for each student, an Outlook profile, an account named
Jonyour_servername, and for the Domain Admins group to be delegated full
control of the organization. To prepare student computers to meet this
requirement, perform one of the following actions::
!
Complete the labs for Module 3, “Administering Microsoft Exchange
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Overview
!
Introduction to Storage Groups and Stores
!
ESE Features in Exchange 2000
!
Creating and Managing Storage Groups and Stores
!
Database Considerations
!
Introduction to IndexingStorage groups and stores in Microsoft
®
Exchange 2000 provide the containers
in which you store data. You have great flexibility in configuring these
containers to fit your environment and to efficiently handle data.
At the end of this module, you will be able to:
!
Explain the benefits of having multiple storage groups and stores, and
demonstrate how to mount and dismount stores.
!
Describe the Extensible Storage Engine (ESE) features in Exchange 2000
that allow you to manipulate data.
!
Create and configure storage groups and stores to fit your various business
Overview of Storage GroupsExchange 2000 supports multiple message databases on each server. Creating
multiple databases enables greater scalability, efficient management, increased
reliability and a reduction of backup and restore times.
Topic Objective
To provide an introduction to
the concepts of storage
groups and stores.
Lead-in
A message database is
used to store messages on
a server.
Module 4: Creating and Managing Storage Groups and Stores 3
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Overview of Stores
Exchange 2000
.stm .edb
StoreA store is a database that houses data. Exchange 2000 can support multiple
stores on each server. Stores have no programmed size limit, so you can use
multiple stores to enhance the flexibility of backup and restore tasks.
There are two types of stores in Exchange 2000, mailbox stores and public
information stores. A mailbox store contains user data and a public store
contains public folder (or shared) data. Each store is a logical database that has
Increased system reliability because a failure in one database does not affect
users in another database.
!
Faster and more flexible backup scheduling is possible because databases
are typically smaller.
!
Decreased recovery time in the event of hardware failure because each
database can be restored individually. Exchange 2000 Enterprise Server supports multiple mailbox and public
information stores per server while Exchange 2000 Server supports only one
mailbox store per server, but multiple public information stores. The mailbox
store on Exchange 2000 Server is limited to 16 gigabytes (GB) in size.
Mounting and Dismounting Stores
When the information store service is running, stores can be individually
mounted and dismounted.
You can choose the Mount Store or Dismount Store commands to bring the
store online or take it offline. This is a toggle option that only displays the
available action. For example, if the selected store is currently mounted, the
Dismount Store command appears. The store must be mounted before the
client can access it. You must also dismount a store before moving its
transaction log files and database files, or before restoring it from backup.
Users are not automatically warned that the server is dismounting a
store. You will see a warning stating that dismounting the database will
disconnect all users when you select this option. Use the mailbox subcontainer
in the Exchange System Manager to see what users have mailboxes in the store.
sets of transaction log files. You can manage these stores as a group or
independently.
Benefits of Storage Groups
Storage groups enable you to:
!
Support more users on each server because multiple smaller stores can be
created and managed more easily.
!
Perform backup and restore activities on a single store while other stores in
the storage group remain in operation.
!
Host multiple businesses on a single server. Each company can have its own
store or storage group. You can configure and maintain each storage group
according to the requirements of the associated company.
!
Provide individual support for critical mailboxes. For example, you may
have one or more critical mailboxes that must be recovered individually as
quickly as possible in the event of an emergency or disaster. You can
configure each mailbox in its own dedicated store, enabling you to perform
individual backup and recovery. The more stores and storage groups you
create, the more Exchange 2000 resources are required. For this reason, it is
important to weigh the impact on resources against the business need for
creating additional stores and storage groups.
!
Use circular logging for a specific storage group. Circular logging enables
Exchange 2000 to use and reuse a small set of transaction log files. For
example, you may have a store that generates a volume of transactions that
do not need to be recovered, such as a public information store that receives
a newsfeed. If you place this store in its own storage group it can use
circular logging. You should disable circular logging for the other storage
reflect all the transactions that have taken place up to the point of a system
failure. ESE even saves those transactions that have not yet been written to the
database file. To increase performance and reliability, place the log files on
separate hard disk spindles for each storage group. Make sure that these log
files are on separate hard disk spindles from the database files for the stores in
the storage group.
Each storage group contains one current transaction log file. This file is always
named Exx.log. The First Storage Group files are located in the C:\Program
Files\Exchsrvr\Mdbdata folder. The second storage group files are located in
the C:|\Program Files\Exchsrvr\Second_storage_group_name folder.
For Your Information
The administrator has
control over the location of
the transaction log and ESE
database files through
Exchange System Manager.
Module 4: Creating and Managing Storage Groups and Stores 7
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
#
##
# ESE Features in Exchange 2000
!
ACID Transactions
!
Storing Data
!
File Generation
!
2000.
Lead-in
The Extensible Storage
Engine (ESE) is the
technology behind
Exchange 2000 storage and
Active Directory.
8 Module 4: Creating and Managing Storage Groups and Stores
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
ACID Transactions
!
Atomic
!
Consistent
!
Isolated
!
DurableESE supports full Atomic, Consistent, Isolated, and Durable (ACID)
transactions. The acronym ACID is defined as follows:
!
Atomic. Operations performed in a transaction are either all completed or
none of them are completed.
!
Consistent. A transaction takes a database from one consistent state to
another.
operation is not recorded until all operations have been carried out.
If the system fails, ESE will reverse operations that were not part of a
committed transaction. This means, using the previous example, that if the mail
message is deleted first, then the system fails and the operation is rolled back
(reversed) when the database restarts. The consequence of this action is that a
mail message would never be lost while moving it, nor would Exchange 2000
end up with two copies of a mail message that was moved.
10 Module 4: Creating and Managing Storage Groups and Stores
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Storing Data
DatabaseCurrent Transaction Log
.edb .stm
.log
MemoryThe data in an ESE database is stored in three different locations: database,
memory, and transaction log files.
Database
Stores consist of two database files: .stm and .edb files. The .stm file is the
streaming database file. This holds all data in native MIME, audio, video, and
so on The .edb file is the rich text database file. This holds all the data in
Messaging Application Programming Interface (MAPI) format. These files are
used in pairs to make Exchange 2000 more efficient.
Memory
When a modification is made to the database, the page to be changed is copied
into memory. Changes are made in memory, which increases the performance
of ESE. However, this also means that current pages of the database are now
Ask students to describe
system exposure when
changes are made to
information in the database
using Exchange 2000.
Module 4: Creating and Managing Storage Groups and Stores 11
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Log Sequence Numbers (dbTime)
Each database page has a Log Sequence Number, called dbTime, which gives
the relative time the page was last changed. This is not a time stamp, but a
counter that increases by one every time a change is made. By performing this
operation, ESE can track if the page in memory is more current than the page in
the database file.
Dynamic Buffer Allocation
With dynamic buffer allocation, ESE can use as much memory as the server has
available, and therefore requests can be processed quickly.
ESE dynamically grows or shrinks the buffer cache depending on how much
memory is available and whether there are memory requirements from other
non-ESE services, such as Internet Information Services (IIS), running on the
same computer. If memory is not being used by other services on the server,
then ESE takes as much memory as it needs. When other services need memory
ESE will give up some memory by copying pages to the database file and
shrinking the size of its buffer.
For Your Information
Allocating buffers was
manually performed by
using the Performance
Wizard in Exchange Server
Database (.edb)
The rich text store contains MAPI formatted content. A
common MAPI client is Microsoft Outlook
®
2000. This
allows a rich message property set, such as text
formatting and color. There are mailbox stores and
public stores.
Current transaction log file
(Exx.log, for example
E00.log)
The current transaction log file secures transactions
before they are written from memory to an ESE database
file. There is only one current transaction log per storage
group recording transactions for multiple databases.
Previous transaction log
files (Exxnnnnn.log, for
example E0000001.log)
The previous transaction log files maintain older
transactions. These transactions may or may not have
been written from memory to the database file.
Checkpoint file (Exx.chk,
for example E00.chk)
The checkpoint file contains a pointer that specifies
which transaction log file contains the last transaction
that was committed to the database file. A recovery
should begin with this file. Transactions older than the
checkpoint file pointer are guaranteed to be in the
database, while transactions newer than the checkpoint
may or may not have been committed to the database.
14 Module 4: Creating and Managing Storage Groups and Stores
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Previous Log Files
Previous Logs
Previous Logs
Current Log
Current Log
E0000001.LOG
E0000002.LOG
.
.
.
Current Logs Are Renamed After 5 MB of Data Is Accepted
E0000003.LOG
Renamed
Renamed
Renamed
3 MB5 MB
New
E00.log
(5 MB)In Exchange 2000, each transaction log file can contain up to 5 MB of data.
When the current transaction log file becomes filled (after every 5 MB of
transactions are written), it is renamed to indicate that it is a previous log file,
and a new log file is created with the Exx.log file name. The Exx.log file and
created and the current log
file becomes a previous log
file.
Delivery Tip
The animation starts with a
partially full Exx.log file. The
animation shows the Exx.log
file filling up, being renamed
to E000003.log, and then a
new Exx.log file being
created.
Important
For Your Information
Active Directory ESE log
files in Microsoft Windows
®
2000 are 10 MB in size.
Files include:
edb.log
edb0000x.log
res1.log
res2.log
Module 4: Creating and Managing Storage Groups and Stores 15
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Log File Signature
If you were to shut down the server and delete all the transaction log files, ESE
would create a new series of transaction log files starting with a generation
E00.chk. The second storage group would have a check file of E01.chk.
If you are using circular logging, you do not want to get rid of the
checkpoint file. The checkpoint allows for implementing circular logging.
Circular logging deletes log files older than the checkpoint; these are log files
that are not needed for recovery to complete.
The following process describes the steps the system follows to recover data
with the checkpoint file:
1. ESE reads the Exx.chk file when Exchange 2000 starts up.
2. ESE opens the transaction log file referenced by the checkpoint.
3. All committed transactions are written to the database file.
4. Transactions not ending in a commit operation in the transaction log file
(which would occur in the case of a system failure) are discarded.
5. In a normal shutdown, the current transaction log file is Exx.log, and all
transactions are written to the database file.
Topic Objective
To explain the function of
the checkpoint file.
Lead-in
The checkpoint file tracks
the location of the last
committed transaction that
has been fully copied to the
database file.
Delivery Tip
Use the illustration to point
out that some transactions
past the checkpoint have
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
Reserved Log Files
1
1
1
3
3
3
Event Log
Writes
Writes
Writes
4
4
4
Microsoft Exchange
Services
Microsoft Exchange
Services
Shut Down
Shut Down
Shut Down
res2.log
5 MB
res1.log
5 MB
Memory
Writes
Writes
uncommitted transactions in the transaction log file before the system can shut
down the database safely. When transactions in memory have been committed,
ESE will rename the file last used, either Res1.log or Res2.log, to Exx.log.
The amount of information contained in the reserved log files can be up to 5
MB each. If there is more than 10 MB of information to be written to the
reserved log files, including rollback operations and new operations, ESE will
terminate and an error will result.
Topic Objective
To explain the function of
reserved log files.
Lead-in
There are two transaction
log files that are created at
the initialization of an ESE
database to provide
resources in low disk space
situations.
For Your Information
Point out that the system
warning for out of disk
space occurs long before
the actual available storage
space reaches zero.
Note
Module 4: Creating and Managing Storage Groups and Stores 19
BETA MATERIALS FOR MICROSOFT CERTIFIED TRAINER PREPARATION PURPOSES ONLY
File Location
System Partition and
You receive the benefits of enhanced system performance and data
recoverability by storing log files on a separate disk from the database files.
Choosing a Separate Disk
The speed of the Exchange 2000 database depends greatly on how quickly
operations are copied from memory to the transaction log.
Log files are written sequentially and are optimised for disk writes and
minimum disk head movement. For this reason, you should configure the
transaction logs to be on a separate, high performance disk that does not have
other input/output (I/O) operations occurring. For example, you should not store
the checkpoint file on the same disk as the transaction log files. Likewise, you
should not store a swap file on this disk either. During normal operation, ESE
does not read from log files, so the faster ESE can write to the transaction log
file disk the better the server performance. The best performance is normally
obtained with a hardware mirror array.
Topic Objective
To describe the file location
options for Exchange 2000
transaction log and
database files.
Lead-in
Transaction log files should
be stored separately from
the database files and
should be stored on high
performance disks.
Delivery Tip
Ask students to:
1. Describe the importance
of storing transaction logs
on a separate disk.