3

私はSSASをまったく使用したことがなく、複数の属性で構成される1つの次元のみを持つ単純なキューブを展開しようとしています。私がすでに行ったことは、データソースからDSVを作成し、次にファクトテーブルからディメンションを作成することでした。何が起こっても、次のエラーメッセージが表示されます。

Errors in the OLAP storage engine: A duplicate attribute key has been found when processing: Table: 'dbo_Fact_Statistics', Column: 'Team', value: 'ANA'. The attribute is 'Team'.

これは私の階層です:ID(SK)->プレーヤーID->チーム->プレーヤー名->給与

私にはわかりません。明らかに問題は、他のスレッドで見たように、値がnullであるということではなく、自動以外のものに設定するように指示しますが、これはこのコンテキストでは問題ではありませんNullProcessingKeyColumns

どんな助けでも大歓迎です。

4

5 に答える 5

5

おそらく、複数のプレイヤー名や給与値の下にチーム ANA がリストされているでしょう。

これは、SSAS の非常にトリッキーな領域です。BIDS Helper をインストールし、「Dimension Health Check」機能を使用するのがおそらく最も簡単な方法です。

http://bidshelper.codeplex.com/wikipage?title=Dimension%20Health%20Check&referringTitle=ドキュメント

データ内のすべての問題 (これまでに発見した最初の問題だけでなく) が表示され、続行方法に関する情報が提供されます。

個人的には、これらの問題のデバッグと修正が難しいため、属性関係の構築をやめました。私は現在、すべての属性がキー属性に直接関連する次元を構築する傾向があります。これらのエラーは表示されず、パフォーマンスは非常に似ています。ユーザーに階層を表示することもできます。

それができない場合は、上位レベルの属性の列をすべての下位レベルの Key プロパティに追加してみてください。技術的にはこれでうまくいきますが、セットアップと保守が面倒です。

于 2012-11-06T03:29:11.277 に答える
2

このアプローチは私の問題を解決しました:

連鎖関係に属性を従わせる代わりに、単純に関係をデフォルトのままにします。

Player id (SK) -> Conference
Player id (SK) -> Division  
Player id (SK) -> Team 
Player id (SK) -> Player Name 
Player id (SK) -> Salary
于 2012-12-12T07:46:21.107 に答える
0

エラーが表示されているディメンションに移動します。右クリックしてコードを表示

そのコードで以下の行を検索します。

ReportAndStop

その XML タグを削除して保存します

再処理すると機能します

于 2014-09-25T08:49:11.833 に答える
-1

エラーが表示されているディメンションに移動します。そして右クリック - コードを表示する -

CTRL+F - 接続を検索 -
ReportAndStop 接続文字列を検索します。コードから上記のコマンドを削除し、保存します。再度処理してください。

それが動作します。

于 2015-01-19T10:30:28.173 に答える