The primary factors that determine maximum sustainable throughput (MST) for DTA tracking are:
-
The desired message throughput (messages received per unit time) for the system.
-
How much data is tracked for each message.
-
How long the data is stored in the BizTalk Tracking database before it is purged (the data retention window).
-
Whether or not the BizTalkDTADb data is archived as well as purged. Archiving is optional but purging must be performed periodically.
All of these factors have the speed at which the DTA can accept and process (archive and purge) data in common.
How the BizTalkDTADb Insert and Processing Speed Affects Your System
To evaluate the affect of BizTalkDTADb insert and processing speed on the various components of the system, it is important to understand the tracking data pathway described in Measuring Maximum Sustainable Tracking Throughput.
Starting with the TrackingData and Spool tables, consider that, if the processes that move data from these tables to the BizTalk Tracking database are not able to insert data into the BizTalk Tracking database at least as fast as the runtime is inserting into the TrackingData and Spool tables, then the Spool and TrackingData tables will start to build a backlog. This is okay for a short while as long as you know the message throughput will be reduced to allow the backlog to drain. However, as long as the data is still sitting in the Spool or TrackingData tables, it will not be available in the BizTalk Tracking database for querying by HAT or any other tool, and thus, it will not be useful for problem resolution. Therefore any expected backlog periods must be short enough that the tracked information is available in a timely manner if a problem occurs that needs to be investigated using BizTalkDTADb data.
The processes that move tracking data to the BizTalk Tracking database (that is, TDDS and TrackedMessages_Copy_BizTalkMsgBoxDb) are not the determining factor if a backlog builds up. Instead, it is the speed of the BizTalk Tracking database in accepting the input. Typically, it is the data file of the BizTalk Tracking database that is I/O bound. That is, the speed of the drive that the BizTalk Tracking database data file resides on determines the speed of the DTA overall.
How the Amount of Data in BizTalkDTADb Affects I/O Speed
Another key factor related to the I/O speed is the amount of data in the BizTalk Tracking database: as the amount of tracked data in the BizTalk Tracking database increases, the input and processing speed of the BizTalk Tracking database decreases because there is more data to sort through as new data is inserted, and this affects the amount of I/O required for each insert.
The archiving and purging processes keep the BizTalk Tracking database from growing too large to keep up. The basic idea is to make sure that the BizTalk Tracking database size is kept below the level at which things begin to backup in the Spool and TrackingData tables. However, the purge and archive processes implemented in the DTA Purge and Archive (BizTalkDTADb) SQL Job also require resources (CPU, Memory, and especially I/O) from the BizTalk Tracking database server, which must be taken into account when measuring MST with tracking.
Concepts
Measuring Maximum Sustainable Tracking Throughput
Test Scenarios for Measuring MST of DTA Tracking
Best Practices for Finding MST of DTA Tracking
Guidelines for Sizing the Tracking Database