0

SSASでキューブを構築するときに奇妙な問題が発生します。ファクトテーブルがあります。たとえば、FactActivityです。次に、このファクトと1対1の関係を持つディメンションDimActivityがあり、すべての外部キーがディメンションにバインドされています。したがって、日付ディメンション、商品ディメンションなどはすべてDimActivityにバインドされます。

キューブ全体を構築すると、ディメンションの前にファクトを構築しているように見えるため、エラーが発生します。ただし、事実の前に手動でディメンションを作成すると、機能します。

Analysis Services処理タスクを使用してSSISからこれを行う以外に、ビルド順序を構成できるSSASのどこかにありますか?

どうもありがとう!

4

3 に答える 3

1

キューブを処理すると、関連するディメンションは処理されません。これは、キューブがSSASで個別のエンティティとして構築されているためです。実際には、これは、キューブとの関係なしにディメンションが存在し、処理され、アクセスできることを意味します。

「設定する一般的なビルド順序」などはありません。ASオブジェクトの処理方法を決定するのはあなた次第です。これを容易にするツールはたくさんあり、それらはすべて同じことを行います。ASサーバーで実行するXMLAスクリプトを作成します。

  1. SSIS:AnalysisServices処理タスク
  2. SQLエージェントジョブを構成します。
  3. SSMSを使用して手動プロセスを実行します。
  4. AMOを使用して処理アクティビティをプログラムします
  5. ..。

重要なのは、キューブを処理する前にディメンションを処理する必要があるということです。簡単な解決策は、SSASデータベース全体(キューブとディメンションを含む)を処理することです。このように、SSASはキューブを処理する前にディメンションを自動的に処理します。

AnalysisServicesオブジェクトの処理に関するドキュメント

于 2013-02-15T12:10:18.817 に答える
0

ディメンションまたはキューブ全体を処理する場合は、[実行]をクリックする前に、[設定の変更...]ボタンをクリックします。そこで、処理方法を変更できます。このリンクは、利用可能なオプションの効果について説明しています。

http://technet.microsoft.com/en-us/library/ms174774.aspx

HTH

于 2013-04-10T06:45:34.220 に答える
0

同様の問題に直面している他の人のために....

キューブ処理エラーが発生することがあるのは、スケジュールされた1時間ごとのインポートが原因で、同時に更新が行われていたためです。

現在、ログを使用して、実行中のSSISパッケージを確認しています。アクティビティをインポートするときに、「実行中」ステータスのレコードをこのテーブルに挿入しました。

キューブを処理する前に、このテーブルのレコードがデータインポートであり、「実行中」ステータスであるかどうかを確認するためのセマフォがあります。現在実行中のインポートがない場合にのみ、キューブの更新を許可します。キューブが処理中の場合、インポートにもセマフォがあり、現在「実行中」のキューブ処理がない限り、インポートは開始されません。

このロジックを実装した後、キューブを処理するときにエラーが発生することはありません。

于 2013-04-11T08:17:46.387 に答える