ページの先頭行へ戻る
Interstage Application Server V12.0.0 Java EE 7 設計・構築・運用ガイド
FUJITSU Software

4.20.1 データベースの環境設定

バッチジョブでは、ジョブリポジトリとしてデータベースを使用し、バッチジョブの実行情報をジョブリポジトリに格納します。以下のデータベースがジョブリポジトリとして利用可能です。

以下にジョブリポジトリとして使用するデータベースの環境設定について説明します。

データベースの生成

  1. データベースのテーブルを生成します。
    テーブル生成のDDLファイルが、以下に格納されています。DDLを参照し、テーブルを生成します。DDLファイルでは、テーブルを削除後、生成する処理を実施しています。そのため、初回の実行時には、テーブルの削除処理(DROP TABLE)に失敗しますが、処理として問題ありません。

    [Java EE 7インストールディレクトリ]\glassfish\lib\install\databases

    [Java EE 7インストールディレクトリ]/glassfish/lib/install/databases

    下記の各データベースに対応したDDLファイルを使用してください。

    • Oracle:jsr352-oracle.sql

    • SQL Server:jsr352-mssqlserver.sql

    • Symfoware Server (Postgres):jsr352-symfoware-postgres.sql

  2. 接続するユーザに対して、スキーマのテーブルにアクセスできる権限を設定します。対象となるテーブルについては「4.20.3 データベースの削除」を参照してください。

データベースの接続設定

  1. データベースに対するJDBC接続プールを作成します。
    JDBC接続プールの作成方法については、「10.1.14.1 create-jdbc-connection-poolサブコマンド」を参照してください。

  2. JDBC接続プールに対してJDBCリソースを作成します。
    JDBCリソースの作成方法については、「10.1.14.5 create-jdbc-resourceサブコマンド」を参照してください。

  3. JDBCリソースを設定します。
    JDBCリソースの設定方法については、「10.1.21.4 set-batch-runtime-configurationサブコマンド」を参照してください。

注意

バッチジョブにおけるチャンクステップ処理では、チェックポイント情報の更新処理などにJTAのトランザクション機能を利用しています。

このため、チャンクステップのトランザクション内で別のJDBCデータソースやJMSリソースにアクセスする場合には、グローバルトランザクションに対応するデータソース(XADataSource)を使用する必要があります。

一般的には、グローバルトランザクションにより性能のオーバーヘッドが発生するため、必要性に応じて使用してください。

管理実行サービスの設定

バッチジョブは管理実行サービスが提供するスレッドで動作します。管理実行サービスの情報の設定方法については、「10.1.21.4 set-batch-runtime-configurationサブコマンド」を参照してください。デフォルトでは管理実行サービスとして「concurrent/__defaultManagedExecutorService」を使用します。管理実行サービスについては「4.21.1 管理実行サービス」を参照してください。

注意

以下の条件の場合、バッチジョブが正しく実行されない場合があります。この場合、IJServerクラスタごとに異なるデータベース接続ユーザを使用するか、または、データベース接続ユーザが同一の場合には同じスキーマを使用するようにしてください。

  • ジョブリポジトリにSQL Serverを使用している。かつ、

  • 複数のIJServerクラスタでバッチジョブを使用している。かつ、

  • それぞれのIJServerクラスタにて同一ユーザーでデータベースに接続している。かつ、

  • それぞれのIJServerクラスタで異なるスキーマ名を使用している。