JP1/AJSの設計や構築に携わると必ず直面するのが「データベース(DB)」の選定です。ジョブの定義数や1日の実行本数が増えるにつれ、DBの性能がシステム全体の安定性を左右するようになります。
「組み込みDBってAJS2とAJS3で何が変わったの?」
「標準の組み込みDBと、別途購入する製品版HiRDBは何が違うの?」
そんな疑問を解消すべく、それぞれの違いと性能差について徹底比較します!
1. JP1/AJS2 と AJS3 での「組み込みDB」の決定的な違い
JP1のバージョン2(AJS2)からバージョン3(AJS3)への進化に伴い、データベースのアーキテクチャは根本から刷新されました。
以前のAJS2:標準は「ISAM」ファイル(組み込みDBはオプション)
AJS2時代の標準構成は、リレーショナルデータベース(RDB)ではなく、「ISAM(アイサム)」と呼ばれるファイル管理方式(独自形式のファイルベース)でした。
大量のジョブを高速処理したり、クラスター構成で信頼性を高めたりするためには、オプションとして別売りの「組み込みDB(HiRDBベース)」を別途導入・構築する必要があり、設計の手間やコストがかかっていました。
現代のAJS3:HiRDBアーキテクチャを「標準搭載」
AJS3からは、このISAM方式が完全に廃止(一部互換用を除き)され、日立の国産高信頼RDB「HiRDB」の技術をベースにした「組み込みDB」が標準で同梱・自動インストールされる構成になりました。
これにより、AJS3を普通にインストールするだけで、追加コストなしで最初から堅牢かつ高速なリレーショナルデータベースをバックエンドとして利用できるようになり、信頼性が大幅に向上しました。
2. 「組み込みDB」と「製品版HiRDB」の性能・機能差
AJS3に標準でついてくる「組み込みDB」も中身はHiRDBですが、別途ライセンスを購入して導入する「製品版HiRDB(正式名称:HiRDB Server)」とは、いくつかの明確な性能・機能の差(制限)が設けられています。
主な違いを以下の表にまとめました。
| 比較項目 | AJS3標準:組み込みDB | 別途用意:製品版HiRDB |
| 位置づけ | AJS3の付属品(追加ライセンス不要) | 単体のデータベース製品(個別ライセンス要) |
| 配置の柔軟性 | AJSマネージャーと同居必須 | 別サーバーへ分離して配置可能 |
| チューニング | JP1が自動調整(自由な変更は不可) | システムに合わせて高度な最適化が可能 |
| 規模・性能限界 | 中〜大規模(数万ジョブ/日)まで対応 | 超大規模(数十万〜数百万ジョブ/日)に対応 |
| バックアップ | JP1のコマンド(ajsbackup等)と連動 | DB単体での高度なオンラインバックアップが可能 |
📈 具体的な「性能差」が出るポイント
中身が同じHiRDBベースであるため、数万件程度のジョブ運用であれば、処理速度そのものに劇的な差は体感できません。しかし、「超大規模環境」や「高負荷環境」になると、以下のような理由で明確な性能差(キャパシティ差)が生まれます。
① サーバーリソースの奪い合い(同居 vs 分離)
組み込みDBは、JP1/AJSマネージャーと同じサーバー内にしか構築できません。そのため、ジョブの実行処理(CPU/メモリ)と、DBのデータ読み書き(ディスクI/O・メモリ)が同じサーバー内で競合し、ボトルネックになりやすいです。
一方、製品版HiRDBであれば「DB専用サーバー」として完全に分離できるため、サーバーマシンのリソースを100%データベース処理に割り当てることができ、圧倒的なスループット性能を誇ります。
② メモリ割り当てとパラレル処理の制限
組み込みDBは、JP1側があらかじめ決めた安全なバッファサイズ(メモリ量)で自動管理されます。
これに対して製品版HiRDBは、サーバーが持つ潤沢なメモリをキャッシュとしてフルに割り当てたり、検索・更新処理を内部で高度に並列化(パラレル処理)したりするチューニングが可能です。これにより、大量のジョブ情報の検索や一括更新の速度が桁違いに速くなります。
💡 まとめ:どちらを採用するべきかの選定基準
実務における設計では、以下の基準で選定するのがベストプラクティスです。
-
「標準の組み込みDB」で十分なケース:
1日の総ジョブ実行本数が数万本程度までの一般的なシステム。サーバー台数を抑えてシンプルに構築したい場合や、コストを最適化したい場合。現代の組み込みDBは十分に優秀なので、ほとんどのシステムはこれで事足ります。
-
「製品版HiRDB」を採用すべきケース:
1日のジョブ実行本数が数十万本〜数百万本に達するようなメガシステム。または、金融系システムなどで、データベース単体のオンラインバックアップ運用や、厳格な個別メンテナンス(インデックス再構成など)をJP1の稼働とは独立して制御したい場合。
AJS2からAJS3への移行でDBまわりの安定性は格段に向上しました。まずは標準の組み込みDBのキャパシティを前提に設計し、システムの規模や運用の要件に応じて製品版の分離構成を検討してみてください!
【参考】

