ストリームの最適化オプションの設定

最適化設定を使用して、ストリームのパフォーマンスを最適化することができます。IBM® SPSS® Modeler Server が使用されている場合のパフォーマンスと最適化の設定は、クライアントの設定より優先されます。これらの設定がサーバーで無効になっている場合、クライアントが有効に設定することはできません。ただし、これらの設定がサーバーで有効になっている場合は、クライアントが無効に設定することは可能です。

注: DB モデリングおよび SQL 最適化では、IBM SPSS Modeler Server 接続が IBM SPSS Modeler コンピュータ上で有効になっている必要があります。この設定を有効にすると、データベース・アルゴリズムにアクセスし、IBM SPSS Modeler から SQL を直接プッシュ バック、IBM SPSS Modeler Server にアクセスできます。現在のライセンスステータスを確認するには、IBM SPSS Modeler メニューから次を選択します。

「ヘルプ」 > 「バージョン情報」 > 「その他の詳細」

接続が有効な場合、「ライセンス ステータス」タブにオプション 「サーバーの有効化」 が表示されます。

詳しくは、に接続中を参照してください。

注: SQL プッシュバックおよび最適化がサポートされているかどうかは、使用しているデータベースの種類によって異なります。IBM SPSS Modeler での使用がサポートおよびテストされているデータベースおよび ODBC ドライバーの最新情報については、当社サポート・サイト (http://www.ibm.com/support) を参照してください。

ストリームのリライトを有効にする : このオプションを選択すると、IBM SPSS Modeler のストリームのリライトが有効になります。リライトには 4 種類あり、それらの 1 つ以上を選択することができます。ストリームのリライトは、ストリーム内のノードをバックグラウンドで並べ替え、ストリームの意味論を変更することなくストリームをより効率的に操作できるようにする処理です。

  • SQL 生成の最適化 : このオプションを選択すると、より多くのストリーム操作がデータベースにプッシュ バックされて SQL 生成を使用して実行されるように、ストリーム内のノードが並べ替えられます。SQL へ変換できないノードが検出されると、SQL へ変換可能な下流にあるかどうか、またそれを、ストリームの意味論に影響を与えずに安全に問題のノードの前に移動できるかどうかを調べることができます。データベースの方が IBM SPSS Modeler より効率的に操作を実行できるだけでなく、このようなプッシュバックによって IBM SPSS Modeler で処理するために返されるデータ・セットのサイズも小さくすることができます。この結果、ネットワーク トラフィックを減らし、ストリーム操作を高速化することができます。SQL 最適化を有効にするには、「SQL 生成」 チェックボックスをオンにする必要があります。
  • CLEM 式の最適化 : このオプションを選択すると、最適化プログラムは、ストリームの実行前に事前処理できる CLEM 式を検索して処理速度を高めることができます。単純な例として、log(salary) という式が指定されると、最適化プログラムは、実際の salary 値を計算してそれを処理のために引き渡します。このようにすると、SQL プッシュバックと IBM SPSS Modeler Server の両方のパフォーマンスを向上させることができます。
  • シンタックスの実行を最適化 : この方法のストリームのリライトでは、IBM SPSS Statistics シンタックスを含む複数のノードを結合する操作を効率化します。各操作それぞれを実行する代わりに、シンタックス・コマンドを 1 つの操作に結合することによって最適化が行われます。
  • その他の実行を最適化 : この方法のストリームのリライトでは、データベースで処理できない操作を効率化します。最適化は、ストリームのデータ量をできるだけ早く減らすことによって実現されます。データの整合性を保ちながら、操作をデータ・ソースの近くに置いて、下流で結合などの時間のかかる操作に使用されるデータの量を減らすように、ストリームがリライトされます。

並行処理を有効にする : マルチ プロセッサーのコンピューターで実行する場合、このオプションでシステムがプロセッサー間の負荷のバランスがとれるようになり、より速いパフォーマンスとなります。 C5.0、レコード結合 (キーによる)、ソート、分割 (順位付け法分位法)、およびレコード集計 (1 つ以上のキー・フィールドを使用) の複数または個別のノードを使用すると、並行処理の恩恵を受けることができます。

SQL 生成 : SQL 生成を有効にするには、このオプションを選択します。実行プロセスを生成する SQL コードを使用することで、ストリーム操作をデータベースにプッシュバックできるようにし、それがパフォーマンスを向上させる可能性があります。さらにパフォーマンスを向上させるには、データベースにプッシュバックする操作の数を最大限にできるように、「SQL 生成の最適化」 も選択できます。ノードの操作がデータベースにプッシュ バックされると、そのノードはストリームの実行時に紫色で強調表示されます。

  • データベース・キャッシング: SQL を生成するストリームをデータベース内で実行するために、ファイル・システムでなくデータベース内の一時テーブルへ、データを中流でキャッシュできます。この機能を SQL 最適化と組み合わせると、パフォーマンスが著しく向上する可能性があります。例えば、データ・マイニング・ビューを作成するために複数のテーブルを併合するストリームからの出力をキャッシュし、必要に応じて再使用できます。データベースのキャッシングが有効化されると、任意の非ターミナル・ノードを右クリックするだけでその場所のデータがキャッシュされ、次にストリームが実行されると自動的に、データベース内にキャッシュが直接作成されます。これにより SQL が下流のノード用に生成されるようになり、パフォーマンスをさらに改善します。 代わりに、例えばポリシーまたは許可によってデータベースに書き込まれたデータが損なわれる場合、このオプションを必要に応じて無効にすることができます。 データベース・キャッシングまたは SQL 最適化が有効にされていないと、キャッシュは、代わりにファイル・システムへ書き出されます。詳しくは、ノードのキャッシュ・オプションのトピックを参照してください。
  • 緩和された変換を使用: 単一の形式で保存されている場合、文字列から数値、または数値から文字列へのデータの変換を可能にします。例えば、データが文字列としてデータベースに保存されているが、実際に意味のある数値が含まれている場合、プッシュバックが発生したときに使用するようにデータを変換することができます。
注: SQL 実装の些細な違いが原因で、データベース内で実行されるストリームは、IBM SPSS Modeler 内で実行されるときと若干異なる結果を返すことがあります。これらの違いは、似たような理由で、データベース・ベンダーによっても異なる可能性があります。

「デフォルトとして保存」。指定したオプションは、現在のストリームのみに適用されます。このボタンをクリックすると、これらのオプションをすべてのストリームのデフォルトとして設定します。