ワークフロー・システム・データベースのサイズに関する制限事項
ワークフロー・システム・データベース・ソフトウェアにより、ワークフロー・フィールドに保管可能なデータ量が制限されます。この制限は、各フィールド固有のものであるとともに、レコード全体に対しても適用されます。
Microsoft SQL Server、Oracle、および DB2® の特定のバージョンで設定されている制限事項を次の表に示します。
データ型が文字列型のフィールドあたりの文字数* | データベースの行 (レコード) あたりのデータのバイト数 | データベース・テーブルあたりの列の最大数† | |
---|---|---|---|
Microsoft SQL Server 2012 | 4000 (データ型は nvarchar) | 8060 | 1024 |
Oracle 11g | 列あたり 4000* バイト | 定義されている制限なし | 1000 |
DB2 | 16,336 文字の vargraphic 型 2 バイト文字 行サイズを超えるバイト数を持つ DB2 テーブルを定義することはできません。 |
可変 行サイズは、定義されているテーブル領域のページ・サイズによって決まります。32 K のページ・サイズの場合、行サイズは 32,677 |
1012 |
* ワークフロー・システムは、文字ベースの文字列を使用します。AL32UTF8 などのマルチバイト文字セットを使用する場合、この表に記載されている最大バイト数は、必ずしも最大文字数に等しくなるとは限りません。文字列中のマルチバイト文字の最大数を大まかに把握するには、まず、1 文字あたりの平均バイト数を調べます。この値は、データベースで使用する言語によって異なります。次に、1 列あたりの最大バイト数 (4000) を、1 文字あたりの平均バイト数で除算します。例えば、1 文字あたりの平均バイト数が 3 バイトである場合は、4000/3、すなわち約 1333 文字となります。
† データベース表あたりの最大列数には、それぞれのワークフロー・ロスター、キュー、イベント・ログに必要なワークフロー・システム・フィールドが含まれます。
†† ワークフロー・システムでは、構成オブジェクトまたはワーク・アイテムの BLOB サイズが最大定義サイズの 95% を超えると、警告メッセージがシステム・イベント・ログに記録されます。
- 数多くのワークスペースが存在する。同じワークフロー定義の多数のバージョンが、1 つのアイソレート・リージョンでワークフロー・システムに転送されると、ワークスペースの数が多くなります。
- メイン・ワークフロー・マップ上に数多くのステップが置かれている。このような状態は、ワークフローをサブマップに分割することで回避できます。
- 数多くのデータ・フィールドが存在する。
- 非常に大型の文字列データ・フィールドが存在する。
BLOB 列のデータは、行自体には保管されません。 データベースの別の領域に保管されます。行には、データのアドレスのみが保管されます。このアドレスは、行に保管できる実データの最大量に対して、それほど大きな影響は与えません。したがって、非開示データ・フィールドのサイズ (および行の合計サイズ) は、制限事項で示したサイズよりも長くすることができます。