追跡データベースのボトルネックを特定する方法
BizTalk Tracking (BizTalkDTADb) データベースのボトルネックを特定するには、次の手順を実行します。
SQL エージェント サービスが実行されていることを確認します。
Archive/Purge ジョブが実行され、正常に完了することを確認します。
TrackedMessages_Copy_BizTalkMsgBoxDB ジョブが正常に実行され、完了していることを確認します。
DTADb アーカイブとデータベース サイズの増加に対応できるだけの十分な空きディスク領域があることを確認します。
負荷がかかっているときは、専用ホストを使用して追跡し、ホスト キューの長さのパフォーマンス カウンターを測定します。
スプール テーブル のサイズ パフォーマンス カウンターで、時間の経過に伴う増加傾向を確認します。
実行時間が長い場合は、アーカイブ/消去ジョブの実行時間を確認します。
BizTalk Tracking データベースをホストしているディスクのディスクの応答性 (読み取り/書き込みパフォーマンス カウンターあたりのディスク秒数) を確認します。
DTA 消去およびアーカイブ ジョブによって呼び出されるdtasp_BackupAndPurgeTrackingDatabaseまたはdtasp_PurgeTrackingDatabaseの次のパラメーターの値をチューニングすることを強くお勧めします。
@nLiveHours tinyint — (ライブ時間) + (ライブ日) より前の完了したインスタンスは、関連付けられているすべてのデータと共に削除されます。 既定値は 0 時間です。
@nLiveDays tinyint — (ライブ時間) + (ライブ日) より前の完了したインスタンスは、関連付けられているすべてのデータと共に削除されます。 既定の間隔は 1 日です。
@nHardDeleteDays tinyint — これより古い (不完全な場合でも) すべてのデータが削除されます。 HardDeleteDays に指定する間隔は、データの有効期間よりも大きい値にする必要があります。 データの有効期間は、BizTalk 追跡データベース (BizTalkDTADb) でデータを追跡する間隔になります。 この間隔より古いデータは、次のアーカイブ時にアーカイブしてから削除できます。 既定値は 30 日です。
これらのパラメーターは、運用環境のデータ保持ポリシーに従って設定する必要があります。一方、パフォーマンス ラボ テストでは、次のように値を使用することをお勧めします。
declare @dtLastBackup datetime set @dtLastBackup = GetUTCDate()
exec dtasp_PurgeTrackingDatabase 1、0、1、 @dtLastBackup