BizTalk Databases: Survival Guide
Introduction
Microsoft BizTalk Server databases and the health of the databases are very important for a sustainable BizTalk Server messaging environment. The BizTalk database jobs play an important role in keeping the BizTalk databases healthy. Besides jobs, there are many other factors you have to consider like disaster recovery, tracking, and availability (e.g. clustering). There are some best practices when it comes to maintenance (see table below).
Action |
Description |
Monitor the size of databases and tables |
Performance degrades on High Size of BizTalk databases. BizTalk Server takes a longer time than normal to process even a simple message flow scenario. |
Enable tracking on BizTalk Server Host |
By default, tracking is enabled on the default Host. BizTalk requires the Allow Host Tracking option be checked on a single Host. When tracking is enabled, the Tracking Data Decode Service (TDDS) moves the tracking event data from the BizTalk Server MessageBox database to the BizTalk Server tracking database. If no BizTalk Server Hosts are configured with the option to Allow Host Tracking or if the Tracking Host is stopped, then TDDS will not run and the TrackingData_x_x tables in the BizTalk Server Messagebox database will grow unchecked. Therefore, a dedicated BizTalk Server Host should be configured with the option to Allow Host Tracking. |
Use the correct BizTalk SQL Server Agent jobs |
Execution of the BizTalk Server SQL Agent jobs are crucial for managing the BizTalk Server databases and for maintaining optimal performance. |
Monitor and terminate suspended instances |
Service instances can be suspended (resumable) or suspended (not resumable). These service instances may be Messaging, Orchestration, or Port. BizTalk Server 2009 accommodates termination and removal of these instances by using the Group Hub page in the BizTalk Server Administration Console or through the use of the Terminate.vbs script. |
Monitor the performance counters of the PhysicalDisk performance object |
BizTalk Server makes a large number of short, very quick transactions to SQL Server within one minute. If the SQL Server cannot sustain this activity, you may experience BizTalk Server performance issues. Monitor the Avg. Disk sec/Read, Avg. Disk sec/Transfer, and Avg. Disk sec/Write performance monitor counters in the PhysicalDisk performance object. The optimal value is less than 10 ms (milliseconds). A value of 20 ms or larger is considered poor performance. |
Ensure all required BizTalk SQL Server Agent jobs are enabled and running |
All the BizTalk SQL Server Agent jobs except the MessageBox_Message_Cleanup_BizTalkMsgBoxDb job should be enabled and running successfully. Do not disable any other job. The MessageBox_Message_Cleanup_BizTalkMsgBoxDb is called by the MessageBox_Message_ManageRefCountLog_BizTalkMsgBoxDb job. |
Delete all unwanted data |
If the databases have grown to become too large and if the data contained in the databases will not be required any longer, the preferred method is to delete the data |
Resources
The following list of resources (most targeted for BizTalk 2010) can be beneficial for you in having a healthy and sustainable BizTalk environment.
General
- How to maintain and troubleshoot BizTalk Server databases
- Databases in BizTalk Server
- BizTalk Server 2010 Database Infrastructure Poster
- BizTalk Administrator's Checklist Compiled by Microsoft BizTalk Support
- Maintaining a Healthy, Responsive and Available BizTalk Environment
- BizTalk Server Database Optimization
- Improving BizTalk Server Throughput and Identifying Bottlenecks
Upgrading
Database Jobs
- Database Structure and Jobs
- BizTalk Maintenance Jobs in SQL Server
- Monitor BizTalk Server Job in BizTalk 2010
- Configuring BizTalk Server Database Jobs
- Fix:Database Backup Job does not delete backup files
- BizTalk Server 2010: SQL Agent jobs
- Cleanup the MarkLog table with Terminator
Disaster Recovery
- Disaster Recovery
- BizTalk Disaster Recovery Planning
- BizTalk DR: Configuring BizTalk Backup for Disaster Recovery – Part 1
- BizTalk DR: Configuring BizTalk Backup for Disaster Recovery – Part 2
- Aspects of backup BizTalk Server
- Backing Up and Restoring BizTalk Server
- Accessing Archived (& Purged) Tracking Data
Tracking
- Archiving and Purging the BizTalk Tracking Database
- Best Practices for Message and Instance Data Tracking
High Availability
Other languages
This article is also available in other languages
See Also
Read suggested related topics:
- How to maintain and troubleshoot BizTalk Server databases
- BizTalk Server 2010: SQL Agent jobs
- BizTalk Server 2010: Database BizTalkDTADb
- Wiki: List of Technologies and Related Topics
- Wiki: Survival Guides Portal
Another important place to find a huge amount of BizTalk related articles is the TechNet Wiki itself. The best entry point is BizTalk Server Resources on the TechNet Wiki