環境を最適化するための構成後の手順

パフォーマンスを向上させ、BizTalk 環境を維持し、EDI スキーマをインストールする場合に役立つ構成後の手順です。

SQL Server の共有メモリ プロトコルを無効にする

  1. くSQL Server 構成マネージャー>SQL SERVER MSSQLSERVER のネットワーク構成>プロトコルを展開します。
  2. [共有メモリ>の無効化] を右クリックします。
  3. [SQL Server サービス] を選択し、[SQL Server (MSSQLServer)>再起動] を右クリックします
  4. SQL Server 構成マネージャーを閉じます。

SQL エージェント ジョブを構成する

  1. SQL Server Management Studioを開き、データベース エンジンに接続します。

  2. [SQL Server エージェント] を展開し、[ジョブ] を展開します。 次のジョブを構成します。

    • バックアップ BizTalk Server: BizTalk Server データベースとログ ファイルをバックアップします。 このジョブを構成するときに、回数やファイルの場所などのパラメーターを指定します。

      以下のリンクで、SQL エージェント ジョブとそのパラメーターについて説明しています。

      この SQL エージェント ジョブでは、トランザクション ログの切り捨ても行います。これによりパフォーマンスが向上します。

      このジョブでは、古いファイルを含むバックアップ ファイルは削除または削除されません。 バックアップ ファイルを削除する方法については、「Microsoft BizTalk Server データベース サーバーでバックアップ ファイルが長期的に蓄積すると、"Backup BizTalk Server" ジョブが失敗する」を参照してください。

    • DTA 消去とアーカイブ: BizTalk Server追跡データベース (BizTalkDTADb) を切り捨ててアーカイブします。 このジョブを構成するときに、完了したインスタンスを保持する日数や全データを保持する日数などのパラメーターを指定します。

      以下のリンクで、SQL エージェント ジョブとそのパラメーターについて説明しています。

      この SQL エージェント ジョブは、追跡ホストを維持し、追跡イベントを消去することで、パフォーマンスに直接影響します。

バックアップ ファイルを維持する

BizTalk Server の場合、バックアップ ファイルを削除するジョブは含まれません。 したがって、バックアップ ファイルを維持する方法は自由です。 多くのユーザーは sp_DeleteBackupHistoryAndFiles ストアド プロシージャを作成し、BizTalk Server のバックアップ ジョブで直接このストアド プロシージャを呼び出します。 一部のユーザーはメンテナンス プランを作成します。 選ぶのはあなた自身です。 このトピックでは両方のオプションを示します。

オプション 1: sp_DeleteBackupHistoryAndFiles ストアド プロシージャの作成

  1. SQL Server Management Studio で、BizTalk 管理データベース (BizTalkMgmtDb) を選択します。

  2. [新しいクエリ] を選択し、次の T-SQL スクリプトを実行して 、(BizTalk Server 2016) または sp_DeleteBackupHistoryAndFiles2013 (BizTalk Server 2013 R2 以前) ストアド プロシージャを作成sp_DeleteBackupHistoryAndFilesします。

    sp_DeleteBackupHistoryAndFiles (BizTalk Server 2016 以降)

    CREATE PROCEDURE [dbo].[sp_DeleteBackupHistoryAndFiles] @DaysToKeep smallint = null
    AS
    
    BEGIN
    set nocount on
    IF @DaysToKeep IS NULL OR @DaysToKeep <= 1
    RETURN
    /*
    Only delete full sets
    If a set spans a day in such a way that some items fall into the deleted group and the other does not, do not delete the set
    */
    
    /*
    First delete MarkName from all other databases
    */
    declare @BackupServer sysname ,@BackupDB sysname, @tsql nvarchar(1024), @MarkToBeDeleted nvarchar(128)
    DECLARE BackupDB_Cursor insensitive cursor for
    SELECT	ServerName, DatabaseName
    FROM	admv_BackupDatabases
    ORDER BY ServerName
    open BackupDB_Cursor
    
    SELECT @MarkToBeDeleted = MAX([MarkName])
    FROM [dbo].[adm_BackupHistory] [h1]
    WHERE [BackupType] = 'lg' AND datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND	[BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [h1].[BackupSetId] AND datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep AND [h2].[BackupType] = 'lg')
    AND EXISTS( SELECT TOP 1 1 FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] > [h1].[BackupSetId] AND [h2].[BackupType] = 'lg')
    fetch next from BackupDB_Cursor into @BackupServer, @BackupDB
    
    while @@fetch_status = 0
    	begin
    	set @tsql = '[' + @BackupServer + '].[' + @BackupDB + '].[dbo].[sp_CleanUpMarkLog]'
    	exec @tsql @MarkName=@MarkToBeDeleted
    	fetch next from BackupDB_Cursor into @BackupServer, @BackupDB
    	end
    
    close BackupDB_Cursor
    deallocate BackupDB_Cursor
    
    DECLARE DeleteBackupFiles CURSOR
    -- xp_delete_file variant
    FOR SELECT [BackupFileLocation] + '\' + [BackupFileName] FROM [adm_BackupHistory]
    -- xp_cmdshell variant
    -- FOR SELECT 'del "' + [BackupFileLocation] + '\' + [BackupFileName] + '"' FROM [adm_BackupHistory]
    WHERE  datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND [BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [BackupSetId] AND datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep )
    
    DECLARE @cmd varchar(400)
    OPEN DeleteBackupFiles
    FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    WHILE (@@fetch_status <> -1)
    BEGIN
        IF (@@fetch_status <> -2)
        BEGIN
    -- xp_delete_file variant
            EXECUTE master.dbo.xp_delete_file 0, @cmd
    -- xp_cmdshell variant
    --        EXEC master.dbo.xp_cmdshell @cmd, NO_OUTPUT
            delete from [adm_BackupHistory] WHERE CURRENT OF DeleteBackupFiles
            print @cmd
        END
        FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    END
    
    CLOSE DeleteBackupFiles
    DEALLOCATE DeleteBackupFiles
    END
    GO
    

    sp_DeleteBackupHistoryAndFiles2013 (BizTalk 2013 R2 以前)

    CREATE PROCEDURE [dbo].[sp_DeleteBackupHistoryAndFiles2013] @DaysToKeep smallint = null
    AS
    
    BEGIN
    set nocount on
    IF @DaysToKeep IS NULL OR @DaysToKeep <= 1
    RETURN
    /*
    Only delete full sets
    If a set spans a day in such a way that some items fall into the deleted group and the other does not, do not delete the set
    */
    
    DECLARE DeleteBackupFiles CURSOR
    FOR SELECT 'del "' + [BackupFileLocation] + '\' + [BackupFileName] + '"' FROM [adm_BackupHistory]
    WHERE  datediff( dd, [BackupDateTime], getdate() ) >= @DaysToKeep
    AND [BackupSetId] NOT IN ( SELECT [BackupSetId] FROM [dbo].[adm_BackupHistory] [h2] WHERE [h2].[BackupSetId] = [BackupSetId] AND  datediff( dd, [h2].[BackupDateTime], getdate() ) < @DaysToKeep )
    
    DECLARE @cmd varchar(400)
    OPEN DeleteBackupFiles
    FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    WHILE (@@fetch_status <> -1)
    BEGIN
        IF (@@fetch_status <> -2)
        BEGIN
            EXEC master.dbo.xp_cmdshell @cmd, NO_OUTPUT
            delete from [adm_BackupHistory] WHERE CURRENT OF DeleteBackupFiles
            print @cmd
        END
        FETCH NEXT FROM DeleteBackupFiles INTO @cmd
    END
    
    CLOSE DeleteBackupFiles
    DEALLOCATE DeleteBackupFiles
    END
    GO
    
  3. バックアップ BizTalk Server ジョブ>を開き、[ステップ] を選択します

  4. [バックアップ履歴のクリア] ステップを編集して、前のsp_DeleteBackupHistoryストアド プロシージャではなく、新しいsp_DeleteBackupHistoryAndFilesまたはストアド プロシージャsp_DeleteBackupHistoryAndFiles2013呼び出すようにします。

  5. [OK] を選択して変更を保存します。

オプション 2: メンテナンス プランの作成

  1. SQL Server Management Studioで、[管理] を展開し、[メンテナンス プラン] を右クリックして、[メンテナンス プラン ウィザード] を選択します。
  2. プランに名前を付け (バックアップ ファイルの消去など)、[スケジュール] の横にある [変更] ボタンを選択します。
  3. バックアップ ファイルを削除する頻度を選択します。 これらの設定は完全にユーザーの自由です。 [OK] を選択し、 [次へ] を選択します。
  4. [ メンテナンス クリーンアップ タスク>の次へ] を選択します。
  5. [ クリーンアップ タスク ] ウィンドウで、 検索フォルダーに移動し、ファイルを削除します。..、バックアップ フォルダー (f:\BizTalkBackUps) を選択し、ファイル拡張子として 「.bak 」と入力します。 経過期間に基づいてファイルを削除することもできます。 たとえば、3 週間が経過したファイルを削除する場合は、3 と入力します。 [次へ] を選択します。
  6. ウィザードでの操作が完了したら、必要な追加情報を入力します。 [完了] を選択します。

EDI スキーマのインストールおよび EDI AS2 の追加構成

EANCOM、EDIFACT、HIPAA、X12 スキーマ ファイルは、MicrosoftEdiXSDTemplates.exe という名前の自己解凍実行可能ファイルに含まれています。 EDI ソリューションを作成するには、これらのファイルを抽出し、プロジェクトと共に配置します。 これらのファイルをインストールして抽出するには、次のようにします。

  1. BizTalk Serverインストールを実行し、Developer Tools と SDK コンポーネントをインストールします。 このコンポーネントは、MicrosoftEdiXSDTemplates.exe EDI スキーマ ファイルを \XSD_Schema\EDI フォルダーにダウンロードします。

    Note

    BizTalk Serverアップグレードする場合、インストール内の MicrosoftEdiXSDTemplates.exe ファイルは、アップグレードに関連付けられている新しい MicrosoftEdiXSDTemplates.exe ファイルに置き換えられます。 前のスキーマが必要な場合は、前の MicrosoftEdiXSDTemplates.exe ファイルをバックアップします。

    Note

    BizTalk Serverを後のビルドにアップグレードするときにメッセージ スキーマをアップグレードすると、更新されたスキーマの使用に関する問題が発生する可能性があります。または、追加の更新手順を実行する必要がある場合があります。 「アプリケーションの更新に関する重要な考慮事項」の「スキーマの更新に関する考慮事項」セクションを参照してください。

  2. \Program Files (x86)\Microsoft BizTalk Server <VERSION>\XSD_Schema\EDI に移動し、[MicrosoftEdiXSDTemplates.exe] をダブルクリックします。

  3. スキーマを \Program Files (x86)\Microsoft BizTalk Server <VERSION>\XSD_Schema\EDI に抽出します。 スキーマを抽出すると、EANCOM、EDIFACT、HIPAA、および X12 のフォルダーに格納されます。

BizTalk Server EDI アプリケーションへの参照を追加する

EDI スキーマ、パイプライン、オーケストレーションは 、BizTalk EDI アプリケーションにデプロイされます。 他のアプリケーションを EDI アプリケーションとして使用するには、 BizTalk EDI アプリケーションへの参照を追加します。 手順:

  1. BizTalk Server管理コンソールで、[アプリケーション] を展開します。 EDI に使用するアプリケーション ( BizTalk アプリケーション 1 など) を右クリックし、[ 追加] を選択し、[参照] を選択 します

  2. [ BizTalk EDI アプリケーション] を選択し、[ OK] を 選択して変更を保存します。

ヒント

他のアプリケーションへの参照を表示するには、任意のアプリケーションを右クリックし、[プロパティ] を選択 します[参照] を選択してください。 新しい参照を追加して、既存の参照を削除することもできます。

Note

BizTalk EDI アプリケーションにカスタム アイテムを追加しないでください。 このアプリケーションはそのままにしておくことをお勧めします。

バッチ オーケストレーションを開始する

パーティが EDI バッチを送受信できるようにするには、バッチ処理オーケストレーションを開始します。 これらのオーケストレーションは、インストール ウィザードや構成ウィザードでは開始されません。 手順:

  1. BizTalk Server管理コンソールで、[BizTalk EDI アプリケーション] を展開し、[オーケストレーション] を選択します

  2. 次の各オーケストレーションを右クリックし、[開始] を選択 します

    • Microsoft.BizTalk.Edi.BatchSuspendOrchestration.BatchElementSuspendService (アセンブリ: Microsoft.BizTalk.Edi.BatchingOrchestration.dll)

    • Microsoft.BizTalk.Edi.BatchingOrchestration.BatchingService (アセンブリ: Microsoft.BizTalk.Edi.BatchingOrchestration.dll)

    • Microsoft.BizTalk.Edi.RoutingOrchestration.BatchRoutingService (アセンブリ: Microsoft.BizTalk.Edi.RoutingOrchestration.dll)

Note

EDI バッチ処理オーケストレーションは、EDI バッチを送受信する場合にのみ開始する必要があります。 システムが EDI バッチの送受信を行わないときに開始すると、システム パフォーマンスに影響することがあります。

以前の BizTalk バージョンから EDI 成果物を移行する

BizTalk Serverでの取引先の管理方法は、BizTalk Server 2010 以降のバージョンで更新されました。 以前のBizTalk Serverバージョンでは、パーティは取引先に対してのみ作成され、BizTalk Serverをホストしているパートナーには作成されませんでした。 BizTalk Server 2010 以降では、パートナー ホスティング BizTalk Serverを含むすべての取引先に対してパーティを作成する必要があります。 以前のBizTalk Server バージョンでは、エンコード (X12 および EDIFACT) とトランスポート (AS2) プロトコル のプロパティがパーティ レベルで定義されています。 BizTalk Server 2010 以降のバージョンでは、これらのプロパティは契約によって定義されます。

以前のバージョンからパーティ データを移行するには、BizTalk Serverにはパーティ移行ツールが含まれています。 移行パスには以下のものがあります。

BizTalk Server バージョン 移行パス
BizTalk Server 2006 R2 BizTalk Server 2009 にアップグレードします。 次に、BizTalk Server 2013/2013 R2 に含まれているパーティ移行ツールを使用して、BizTalk Server 2013/2013 R2 に移行します。

または、BizTalk Server 2013/2013 R2 に付属のパーティ移行ツールを使用して、BizTalk Server 2010 に移行します。 次に、BizTalk Server 2013/2013 R2 にアップグレードします。
BizTalk Server 2009 BizTalk Server 2013/2013 R2 に付属のパーティ移行ツールを使用して、BizTalk Server 2013/2013 R2 に直接移行します。
BizTalk Server 2010 BizTalk Server 2013/2013 R2 にアップグレードします。

パーティ移行ツールは、\PartyMigrationTool フォルダーのBizTalk Server メディアで使用できます。

BizTalk Health Monitor (BHM) をインストールする

BizTalk Health Monitor では、メッセージ ボックス ビューアー レポートの作成と表示、カスタム クエリの作成、ターミネータ タスクの実行、複数の BizTalk 環境の監視などを行うダッシュボードが提供されます。 BizTalk 環境の担当者は、このツールをインストールし、BizTalk 環境の正常性を確認する場合や、維持する場合にも使用することをお勧めします。

主要リンク:

ダウンロード BHMインストール BHM BHM公式ブログ

ホストとホスト インスタンスを作成する

いくつかのキー タスクを個別のホストに分割することをお勧めします。 たとえば、常に追跡専用の個別のホストを作成します。 メッセージの受信専用に別のホスト/ホスト インスタンス、メッセージの送信用に別のホスト/ホスト インスタンス、オーケストレーション用に別のホスト/ホスト インスタンスを作成します。

このような場合、多くの推奨事項があります。 作業を開始する場合の推奨事項は以下のとおりです。

BizTalk ホストとホスト インスタンスの管理

BizTalk ホストの高可用性

ベスト プラクティス: BizTalk Server ホストとホスト インスタンスの作成および構成

同じコンピューターの複数のホストでのオーケストレーションの実行

BizTalk Server ホスト、ホスト インスタンス、ハンドラーを作成および構成するための PowerShell

TechNet Wiki の BizTalk Server リソース