このトピックでは、SQL Server Data Tools (SSDT) を使用してモデルを作成するときのモデル データの処理 (更新) に関する情報を提供します。 このトピックでは、Analysis Services サーバー インスタンスにデプロイされたモデルのデータ処理に関する情報は提供しません。 配置されたモデルでのデータの処理の詳細については、「 Analysis Services での管理タスクのスクリプト作成」を参照してください。
このトピックのセクション:
データ処理のしくみ
データを処理すると、モデル デザイナーのデータが新しいデータに置き換えられます。 新しい行のデータや変更されたデータだけをインポートすることはできません。 モデル デザイナーでは、以前に追加された行は追跡されません。
データの処理はトランザクションとして行われます。 つまり、データの更新を開始すると、更新全体が失敗するか成功する必要があります。一部が正しいデータを持つことはありません。
SQL Server Data Tools から開始する手動データ プロセスは、Analysis Services のローカルインメモリ インスタンスによって処理されます。 そのため、データ 処理操作は、コンピューター上の他のタスクのパフォーマンスに影響を与える可能性があります。 ただし、スクリプトを使用してデプロイされたモデル内のデータの自動プロセスをスケジュールすると、Analysis Services のインスタンスによってインポート プロセスとそのタイミングが管理されます。
データ処理の影響
通常、データのプロセスはデータの再計算をトリガーします。 データの処理とは、外部ソースから最新のデータを取得することです。再計算とは、変更されたデータを使用するすべての数式の結果を更新することを意味します。 通常、プロセス操作は再計算をトリガーします。
そのため、データ ソースを変更したり、データ ソースから取得したデータを処理したりする前に、潜在的な影響に常に留意し、次の潜在的な結果を考慮する必要があります。
データ ソースの変更の結果、モデル データの一部が破損する可能性があります。 すべての列をデータ ソースから取得できない場合 (削除または変更された場合など)、プロセスは失敗し、ソース データとモデル データの間のマッピングを更新する必要があります。 詳細については、「 既存のデータ ソース接続の編集 (SSAS テーブル)」を参照してください。
処理後、一部の列にエラーが含まれているというフラグが設定される場合があります。 これは、DAX 数式の列で、処理中に利用できなくなったデータや、列のデータ型が変更された場合、または外部データに無効な値が追加されたことが原因で発生する可能性があります。 この問題を解決するには、数式を編集するか、使用できなくなったデータに基づいている場合は列を削除します。
更新されたデータを使用する数式を再計算する必要があります。 モデルのサイズによっては、時間がかかる場合があります。
モデルに複数のデータ ソースが含まれている場合は、1 つの外部データ ソースのみが変更された場合でも、モデル全体を処理する (すべて処理) 必要になる場合があります。 たとえば、計算列に依存するメジャーを作成し、それらの計算列で他の計算列の値を使用する場合、モデル デザイナーはまず依存関係を分析してから、関連オブジェクトのチェーン全体を順番に処理します。 依存関係の複雑さによっては、時間がかかる場合があります。
フィルターを変更する場合は、モデル全体を再計算する必要があります。
データソースの決定
モデル内のデータの取得元がわからない場合は、SQL Server Data Tools のツールを使用して、ソース ファイル名やパスなどの詳細を取得できます。
既存のデータのソースを検索するには
モデル デザイナーで、ソースを知りたいデータを含むテーブルを選択します。
[ テーブル ] メニューをクリックし、[ テーブルのプロパティ] をクリックします。
[ テーブルのプロパティの編集 ] ダイアログ ボックスで、[ 接続名] に一覧表示されている値を書き留めます。
SQL Server データ ツールの [モデル ] メニューの [ 既存の接続] をクリックします。
[ 既存の接続 ] ダイアログ ボックスで、手順 3 で見つけた名前のデータ ソースを選択し、[ 編集] をクリックします。
[ 接続の編集 ] ダイアログ ボックスで、データベース名、ファイル パス、レポート パスなどの接続情報を表示します。
データが最後に更新された日時の決定
テーブルのプロパティを使用して、データが最後に更新された日時を確認できます。
テーブルが最後に処理された日時を検索するには
モデル デザイナーで、更新日を知りたいデータを含むテーブルを選択します。
[ テーブル ] メニューをクリックし、[ テーブルのプロパティ] をクリックします。
[ テーブルのプロパティの編集 ] ダイアログ ボックスの [ 最終更新日 時] には、テーブルが更新された最後の日付が表示されます。
更新可能なデータ ソースに関する制限事項
一部の制限は、Analysis Services インスタンスにデプロイされたモデルから自動的に処理できるデータ ソースに適用されます。 次の条件を満たすデータ ソースのみを選択してください。
データ ソースは、データ プロセスが発生した時点で使用でき、指定された場所で使用できる必要があります。 元のデータ ソースがモデルを作成したユーザーのローカル ディスク ドライブ上にある場合は、そのデータ ソースをデータ プロセス操作から除外するか、ネットワーク接続を介してアクセスできる場所にそのデータ ソースを発行する方法を見つける必要があります。 データ ソースをネットワークの場所に移動する場合は、モデル デザイナーでモデルを開き、データ取得手順を繰り返してください。 これは、データ ソース接続プロパティに格納されている接続情報を再確立するために必要です。
データ ソースには、データ ソース接続に埋め込まれている資格情報を使用してアクセスする必要があります。 外部データ ソースに接続すると、埋め込み資格情報がデータ ソース接続に作成されます。
指定したすべてのデータ ソースに対してデータ 処理が成功する必要があります。 それ以外の場合、処理されたデータは破棄され、最後に保存されたバージョンのモデルが残されます。 不明なデータ ソースを除外します。
データ プロセスは、モデル内の他のデータを無効にしてはなりません。 データのサブセットを処理するときは、新しいデータが同じ期間ではない静的データで集計された後も、モデルがまだ有効かどうかを理解することが重要です。 モデル デザイナーは、データの依存関係を把握し、データ プロセスがモデル自体に適していることを確認する必要があります。
テーブルのインポート ウィザードを使用して元のデータをモデルにインポートしたときに指定した埋め込み接続文字列、URL、または UNC パスを使用して、外部データ ソースにアクセスします。 データ ソース接続に格納されている元の接続情報は、後続のデータ更新操作に再利用されます。 データ処理のために作成および管理される個別の接続情報はありません。既存の接続情報のみが使用されます。
データ ソースの変更に関する制限事項
データ ソースに対して行うことができる変更には、いくつかの制限があります。
列のデータ型は、互換性のあるデータ型にのみ変更できます。 たとえば、列のデータに 10 進数が含まれている場合、データ型を整数に変更することはできません。 ただし、数値データをテキストに変更することはできます。 データ型の詳細については、「 サポートされるデータ型 (SSAS テーブル)」を参照してください。
異なるテーブルの列を複数選択したり、列のプロパティを変更したりすることはできません。 一度に操作できるテーブルまたはビューは 1 つだけです。