モデルを実行したときに、モデルの各プロセスで出力データが作成されます。この出力データの一部は、最終出力を作成する別のプロセスに接続するための中間ステップとしてのみ作成されます。これらの中間ステップから生成されたデータは中間データと呼ばれ、多くの場合、モデルの実行が完了した後は不要になります。中間データは、モデルの実行後に削除すべき一時的なデータと考えることができます。ただし、モデルを [ModelBuilder] ウィンドウから実行した場合、中間データは削除されず、ユーザによる削除が必要となります。
既存のデータ変数および最終出力変数を除いて、すべてのデータ変数はモデル内で自動的に中間データとして設定されます。モデル内のデータ変数が中間データであるかどうかを確認する場合、または中間データに設定されている変数の状態を変更する場合は、変数を右クリックして [中間] をクリックし、変数名の横のチェック マークをオンまたはオフにします。
中間データの書き込み場所の制御
新しい出力データセットを作成するジオプロセシング ツールは、「現在のワークスペースおよびテンポラリ ワークスペース環境の使用」で説明するように、出力データセットの名前を自動生成します。この自動生成された名前には、データセットを含むワークスペースまたはフォルダのパスが含まれています。ModelBuilder は、この自動生成された出力名を使用して中間データを書き込みます。この出力データセット名は、出力データセットの別の名前と場所を入力することで常に上書きできます。また、自動生成される出力名の構築に使用するワークスペースを指定できる方法もあります。
ModelBuilder で作業しているときに、特に中間データについては、自動生成された出力名を無視するのは簡単です。ただし、中間データの書き込み場所を制御する方が有効な状況もあります。中間データは、次の場所に書き込むことができます。
- ワークスペース(ジオデータベース、ジオデータベースのフィーチャ データセット、またはフォルダ)。中間データ変数を右クリックして、書き込む場所を変更します。中間データの数が多い場合は、中間データを管理データにすることができます。「中間データを管理データに設定する方法」をご参照ください。
- テンポラリ GDB(テンポラリ ジオデータベース)またはテンポラリ フォルダ。これら 2 つの読み取り専用環境は、ArcGIS 10.1 で導入されました。以下の図は、中間データのフラグが付いた Centroids Intersect データ変数を示しています。出力場所は、テンポラリ ジオデータベース(%scratchGDB%)になっています。パーセント記号(%)は、変数置換を示しています。scratchGDB の値はモデル ツールの実行時に展開され、poly_Intersect というフィーチャクラスがテンポラリ ジオデータベースに書き込まれます。同様に、%scratchFolder% を使用して、*.lyr や *.txt ファイルなどのファイルベースのデータを書き込むことができます。
- インメモリ ワークスペース。
- テンポラリ ワークスペース。%scratchworkspace% を使用します。この環境は、ユーザ自身(または同じツールを使用する他のユーザ)が任意の場所(フォルダ、ジオデータベース、またはジオデータベース内のフィーチャ データセット)に設定できます。テンポラリ ワークスペース環境を共有するツールで使用することはお勧めしません。ツールのユーザがテンポラリ ワークスペースをフォルダ、ジオデータベース、フィーチャ データセットに設定できるからです。たとえば、レイヤ ファイルを出力できるように、テンポラリ ワークスペースをフォルダに設定したいにもかかわらず、同じツールを使用するユーザがテンポラリ ワークスペースをジオデータベースに設定してしまうような場合です。この場合、ツールを実行しても、レイヤ ファイルをフォルダに書き込めないため実行できません。これが、10.1 でテンポラリ ジオデータベースとテンポラリ フォルダ環境が導入され、データを書き込む既知のジオデータベースと既知のフォルダが提供されるようになった主な理由です。
モデル内で中間データを書き込むときの推奨事項を以下に示します。
- 中間データは ArcSDE ジオデータベースに書き込まないでください。この場合、テンポラリ データをローカル エリア ネットワーク上のエンタープライズ データベースに書き込んでいるため、パフォーマンスの問題が発生します。常に、テンポラリ ワークスペースで(パーソナル ジオデータベースまたはシェープファイル ワークスペースではなく)ファイル ジオデータベースを使用することを推奨します。
- 作業中のジオデータベースが中間データで煩雑になるのを避けることができます。代わりに、中間データを書き込む別のワークスペース(ファイル ジオデータベースを推奨)を指定します。
- 中間フィーチャクラスを書き込む場合、シェープファイルをテンポラリ フォルダに書き込みたくなるかもしれません。しかし、シェープファイルにはツールの移植性に影響を与える厳しい制限がいくつかあるため、この方法は使わず、フィーチャ データはテンポラリ ジオデータベースに書き込んでください。シェープファイルとその制限の詳細については、「ジオプロセシングでのシェープファイル出力の注意事項」をご参照ください。