Microsoft SQL Server Analysis Services でオブジェクトを処理する場合は、処理オプションを選択して、オブジェクトごとに発生する処理の種類を制御できます。 処理の種類は、オブジェクト間で異なり、最後に処理されてからオブジェクトに対して発生した変更によって異なります。 Analysis Services で処理メソッドを自動的に選択できるようにする場合、最短時間でオブジェクトを完全に処理された状態に戻すメソッドが使用されます。
処理設定を使用すると、処理されるオブジェクトと、それらのオブジェクトの処理に使用されるメソッドを制御できます。 一部の処理設定は、主にバッチ処理ジョブに使用されます。 バッチ処理の詳細については、 バッチ処理 (Analysis Services) を参照してください。
注
このトピックは、多次元およびデータ マイニング ソリューションに適用されます。 表形式ソリューションの詳細については、「 データベース、テーブル、またはパーティションの処理」を参照してください。
処理オプション
次の表では、Analysis Services で使用できる処理メソッドについて説明し、各メソッドがサポートされているオブジェクトを示します。
| モード | 対象 | 説明 |
|---|---|---|
| プロセスの既定値 | キューブ、データベース、ディメンション、メジャー グループ、マイニング モデル、マイニング構造、パーティション。 | データベース オブジェクトのプロセス状態を検出し、処理されていないオブジェクトまたは部分的に処理されたオブジェクトを完全に処理された状態に配信するために必要な処理を実行します。 データ バインディングを変更すると、Process Default が影響を受けるオブジェクトに対して Process Full を実行します。 |
| プロセスがいっぱい | キューブ、データベース、ディメンション、メジャー グループ、マイニング モデル、マイニング構造、パーティション。 | Analysis Services オブジェクトとそのオブジェクトに含まれるすべてのオブジェクトを処理します。 既に処理されているオブジェクトに対してプロセスフルが実行されると、Analysis Services はオブジェクト内のすべてのデータを削除してから、オブジェクトを処理します。 この種の処理は、たとえば属性階層が追加、削除、または名前変更されたときに、オブジェクトに構造変更が行われた場合に必要です。 |
| 処理完了 | キューブ、データベース、ディメンション、メジャー グループ、マイニング モデル、マイニング構造、パーティション。 | 指定されたオブジェクトおよび下位レベルの構成オブジェクトのデータを削除します。 データが削除された後は、再読み込みされません。 |
| データの処理 | ディメンション、キューブ、メジャー グループ、パーティション。 | 集計やインデックスを作成せずにデータのみを処理します。 パーティションにデータがある場合は、ソース データをパーティションに再入力する前に削除されます。 |
| プロセスの追加 | ディメンション、メジャー グループ、パーティション 注: 追加の処理は、Management Studio でのディメンション処理には使用できませんが、このアクションを実行する XMLA スクリプトを記述できます。 |
ディメンションの場合は、新しいメンバーを追加し、ディメンション属性のキャプションと説明を更新します。 メジャー グループとパーティションの場合は、新しく使用可能なファクト データを追加し、関連するパーティションにのみ処理します。 |
| プロセス更新 | 次元 | データの再読み取りとディメンション属性の更新を強制します。 関連するパーティションの柔軟な集計とインデックスは削除されます。 |
| プロセス インデックス | キューブ、ディメンション、メジャー グループ、パーティション | 処理されたすべてのパーティションのインデックスと集計を作成または再構築します。 未処理のオブジェクトの場合、このオプションはエラーを生成します。 遅延処理をオフにした場合は、このオプションを使用した処理が必要です。 |
| プロセス構造 | キューブとマイニング構造 | キューブが未処理の場合、Analysis Services は必要に応じてすべてのキューブのディメンションを処理します。 その後、Analysis Services はキューブ定義のみを作成します。 このオプションをマイニング構造に適用すると、マイニング構造にソース データが設定されます。 このオプションと [完全処理] オプションの違いは、このオプションがマイニング モデル自体に処理を繰り返さない点です。 |
| プロセスの明確な構造 | マイニング構造 | マイニング構造からすべてのトレーニング データを削除します。 |
処理設定
次の表では、プロセス操作の作成時に使用できる処理設定について説明します。
| 処理オプション | 説明 |
|---|---|
| 並列 の | バッチ処理に使用されます。 この設定により、Analysis Services は処理タスクをフォークオフし、1 つのトランザクション内で並列に実行します。 エラーが発生した場合、結果はすべての変更のロールバックになります。 並列タスクの最大数を明示的に設定することも、サーバーが最適な分散を決定できるようにすることもできます。 [並列] オプションは、処理の高速化に役立ちます。 |
| シーケンシャル (トランザクション モード) | 処理ジョブの実行動作を制御します。
1 つのトランザクションを使用して処理すると、処理ジョブが成功した後にすべての変更がコミットされます。 つまり、特定の処理ジョブの影響を受ける Analysis Services オブジェクトはすべて、コミット プロセスまでクエリで使用できます。 これにより、オブジェクトは一時的に使用できなくなります。
個別トランザクションを使用すると、処理ジョブのプロセスの影響を受けるすべてのオブジェクトは、そのプロセスが成功するとすぐにクエリに対して使用できなくなります。 次の 2 つのオプションを使用できます。 1 つのトランザクション。 処理ジョブはトランザクションとして実行されます。 処理ジョブ内のすべてのプロセスが成功した場合、処理ジョブによるすべての変更がコミットされます。 1 つのプロセスが失敗した場合、処理ジョブによるすべての変更がロールバックされます。 1 つのトランザクション が既定値です。 個別のトランザクション。 処理ジョブ内の各プロセスは、スタンドアロン ジョブとして実行されます。 1 つのプロセスが失敗した場合、そのプロセスのみがロールバックされ、処理ジョブが続行されます。 各ジョブは、ジョブの終了時にすべてのプロセス変更をコミットします。 |
| 書き戻しテーブル オプション | 処理中に書き戻しテーブルを処理する方法を制御します。 このオプションは、キューブ内の書き戻しパーティションに適用され、次のオプションを使用します。 既存のものを使用します。 既存の書き戻しテーブルを使用します。 これは既定値です。 作成。 新しい書き戻しテーブルを作成し、既に存在する場合はプロセスが失敗します。 Always を作成します。 書き戻しテーブルが既に存在する場合でも、新しい書き戻しテーブルを作成します。 既存のテーブルが削除され、置き換えられます。 |
| 影響を受けるオブジェクトの処理 | 処理ジョブのオブジェクト スコープを制御します。 影響を受けるオブジェクトは、オブジェクトの依存関係によって定義されます。 たとえば、パーティションは集計を決定するディメンションに依存しますが、ディメンションはパーティションに依存しません。 次のオプションを使用できます。 False。 ジョブは、ジョブ内で明示的に指定されたオブジェクトとすべての依存オブジェクトを処理します。 たとえば、処理ジョブにディメンションのみが含まれている場合、Analysis Services はジョブ内で明示的に識別されたオブジェクトのみを処理します。 処理ジョブにパーティションが含まれている場合、パーティション処理は影響を受けるディメンションの処理を自動的に呼び出します。 False が既定の設定です。 True。 ジョブは、ジョブで明示的に指定されたオブジェクト、すべての依存オブジェクト、および影響を受けるオブジェクトの状態を変更せずに、処理中のオブジェクトの影響を受けるすべてのオブジェクトを処理します。 たとえば、処理ジョブにディメンションのみが含まれている場合、Analysis Services は、現在処理済み状態にあるパーティションのディメンション処理の影響を受けるすべてのパーティションも処理します。 現在未処理の状態にある影響を受けるパーティションは処理されません。 ただし、パーティションはディメンションに依存するため、処理ジョブにパーティションのみが含まれている場合、パーティション処理は、ディメンションが現在未処理の状態であっても、影響を受けるディメンションの処理を自動的に呼び出します。 |
| ディメンション キーエラー | 処理中にエラーが発生したときに Analysis Services によって実行されるアクションを決定します。 [既定のエラー構成を使用する] を選択すると、Analysis Services では、処理中の各オブジェクトに対して設定されたエラー構成が使用されます。 オブジェクトが既定の構成設定を使用するように設定されている場合、Analysis Services は各オプションに一覧表示されている既定の設定を使用します。 [ カスタム エラー構成の使用] を選択すると、次のアクションの値を選択して、エラー処理の動作を制御できます。 キー エラー アクション。 レコードにキー値がまだ存在しない場合は、次のいずれかのアクションが実行するように選択されます。 不明に変換します。 キーは不明なメンバーとして解釈されます。 これは既定の設定です。 レコードを破棄します。 レコードは破棄されます。 |
|
処理エラーの制限。 次のいずれかのオプションを選択して、処理されるエラーの数を制御します。 エラー数を無視します。 これにより、エラーの数に関係なく処理を続行できます。 エラー時に停止します。 このオプションでは、2 つの追加設定を制御します。 エラーの数 を使用すると、特定の数のエラーの発生に処理を制限できます。 エラー時アクション を使用すると、 エラーの数 に達したときにアクションを決定できます。 [処理の 停止] を選択すると、処理ジョブが失敗し、変更がロールバックされます。また、[ ログ記録の停止] を選択すると、エラーをログに記録せずに処理を続行できます。 [エラー時に停止] は既定の設定で、[ エラーの数] が 0 に設定され、[ エラー時] アクション が [処理の停止] に設定されています。 |
|
| 特定のエラー状態。 次のオプションを設定して、特定のエラー処理動作を制御できます。 キーが見つかりません。 キー値がパーティション内に存在するが、対応するディメンションに存在しない場合に発生します。 既定の設定は [レポートと続行] です。 その他の設定は 、[エラーの無視 ] と [レポートと停止] です。 キーが重複しています。 ディメンションに複数のキー値が存在する場合に発生します。 既定の設定は 無視エラーです。 その他の設定は 、[レポートと続行] と [レポートと停止] です。 null キーが不明に変換されました。 キー値が null で、 キー エラー アクション が [不明に変換] に設定されている場合に発生します。 既定の設定は 無視エラーです。 その他の設定は 、[レポートと続行] と [レポートと停止] です。 Null キーは使用できません。 キー エラー アクションが [レコードの破棄] に設定されている場合に発生します。 既定の設定は [レポートと続行] です。 その他の設定は 、[エラーの無視 ] と [レポートと停止] です。 |