このトピックでは、データ マイニング オブジェクトを処理する際に留意すべき技術的な考慮事項について説明します。 処理とは何か、およびデータ マイニングに適用される方法の一般的な説明については、「 データ マイニング オブジェクトの処理」を参照してください。
処理中のリレーショナル ストアに対するクエリ
データ マイニングには、ソース データのクエリ、生の統計の決定、モデル定義とアルゴリズムを使用してマイニング モデルをトレーニングする 3 つのフェーズがあります。
Analysis Services サーバーは、生データを提供するクエリをデータベースに発行します。 このデータベースは、SQL Server 2014 または SQL Server データベース エンジンの以前のバージョンのインスタンスである可能性があります。 データ マイニング構造を処理すると、ソース内のデータがマイニング構造に転送され、新しい圧縮形式でディスクに保存されます。 データ ソース内のすべての列が処理されるわけではありません。バインドで定義されているマイニング構造に含まれる列のみ。
Analysis Services は、このデータを使用して、すべてのデータと分離された列のインデックスを作成し、連続列用に個別のインデックスを作成します。 インデックスを作成するために、入れ子になったテーブルごとに 1 つのクエリが発行され、入れ子になったテーブルとケース テーブルの各ペア間のリレーションシップを処理するために、入れ子になったテーブルごとに追加のクエリが生成されます。 複数のクエリを作成する理由は、特殊な内部多次元データ ストアを処理するためです。 Analysis Services がリレーショナル ストアに送信するクエリの数を制限するには、サーバー プロパティ ( DatabaseConnectionPoolMax
) を設定します。 詳細については、「 OLAP プロパティ」を参照してください。
モデルを処理すると、モデルはデータ ソースからデータを再読み取りするのではなく、マイニング構造からデータの概要を取得します。 作成されたキューブを使用して、キャッシュされたインデックスとケース データがキャッシュされると、サーバーはモデルをトレーニングするための独立したスレッドを作成します。
並列モデル処理をサポートする SQL Server のエディションの詳細については、「 SQL Server 2012 の各エディションでサポートされる機能 (https://go.microsoft.com/fwlink/?linkid=232473)」を参照してください。
マイニング構造の処理
マイニング構造は、すべての依存モデルと共に処理することも、個別に処理することもできます。 マイニング構造をモデルとは別に処理すると、一部のモデルの処理に時間がかかることが予想され、その操作を延期したい場合に便利です。
詳細については、「 マイニング構造の処理」を参照してください。
ハード ディスク領域の節約が懸念される場合は、Analysis Services ではマイニング構造キャッシュがローカルに保持されることに注意してください。 つまり、すべてのトレーニング データがローカル ハード ディスクに書き込まれます。 データをキャッシュしない場合は、マイニング構造の MiningStructureCacheMode プロパティを ClearAfterProcessing
に設定することで、既定値を変更できます。 これにより、モデルの処理後にキャッシュが破棄されます。ただし、マイニング構造のドリルスルーも無効になります。 詳細については、「 ドリルスルー クエリ (データ マイニング)」を参照してください。
また、キャッシュをクリアすると、保留テスト セットを使用できなくなります。これを定義した場合、テスト セットパーティションの定義は失われます。 ホールドアウトテストセットについての詳細は、トレーニングとテストデータセットを参照してください。
マイニング モデルの処理
マイニング モデルは、関連付けられているマイニング構造とは別に処理することも、構造に基づくすべてのモデルを構造と共に処理することもできます。
詳細については、「 マイニング モデルの処理」を参照してください。
ただし、SQL Server Data Tools (SSDT) と SQL Server Management Studio では、構造で処理するマイニング モデルを複数選択することはできません。 処理するモデルを制御する必要がある場合は、それらを個別に選択するか、XMLA または DMX を使用してモデルを順次処理する必要があります。
再処理が必要な場合
Analysis Services モデルの操作を開始する前に、定義した Analysis Services モデルを処理する必要があります。 また、マイニング モデル構造の変更、トレーニング データの更新、既存のマイニング モデルの変更、または構造への新しいマイニング モデルの追加を行うたびに、マイニング モデルを再処理する必要があります。
マイニング モデルは、次のシナリオでも処理されます。
プロジェクトの配置: プロジェクト設定とプロジェクトの現在の状態に応じて、プロジェクトのマイニング モデルは通常、プロジェクトの配置時に完全に処理されます。
展開を開始すると、Analysis Services サーバーに以前に処理されたバージョンがあり、構造上の変更がない場合を除き、処理が自動的に開始されます。 プロジェクトを配置するには、ドロップダウン リストから [ ソリューションのデプロイ ] を選択するか、F5 キーを押します。 できます
マイニング モデルの配置方法を制御する Analysis Services 配置プロパティを設定する方法の詳細については、「 データ マイニング ソリューションの配置」を参照してください。
マイニング モデルの移動: EXPORT コマンドを使用してマイニング モデルを移動すると、モデルの定義のみがエクスポートされます。これには、モデルにデータを提供することが期待されるマイニング構造の名前が含まれます。
EXPORT コマンドと IMPORT コマンドを使用して、次のシナリオの要件を再処理します。
マイニング構造はターゲット インスタンスに存在し、マイニング構造は未処理の状態です。
構造体とモデルの両方を再処理する必要があります。
マイニング構造はターゲット インスタンスに存在し、マイニング構造は処理されています。 マイニング モデルのみがエクスポートされました。
モデルは処理なしで使用できます。
マイニング構造定義も WITH DEENDENCIES キーワードを使用してエクスポートされました。
構造体とモデルの両方を再処理する必要があります。
詳細については、「 データ マイニング オブジェクトのエクスポートとインポート」を参照してください。
こちらもご覧ください
マイニング構造 (Analysis Services - データ マイニング)
マイニング構造 (Analysis Services - データ マイニング)
多次元モデル オブジェクト処理