/ / SSASとSQL Server - sql-server、sql-server-2012、ssas、mdx、openquery

SSASとSQL Server - sql-server、sql-server-2012、ssas、mdx、openquery

SQL Serverと同じサーバー上のSSASキューブからデータを取得し、SQL Serverテーブルのデータと組み合わせたストアドプロシージャが多数あります。

現在、リンクサーバーを使用していますが、 openquery MDXを使用してSSASからデータを取得します。 これにより、SSASから返される行数を見積もることができないため、実行計画にいくつかの問題が生じます。これが実際にSSASとSQL Serverを接続する唯一の方法ですか?

回答:

回答№1は1

私はあなたのアーキテクチャを再考するだろう - しようとするSQL ServerテーブルからSSASキューブに現在取り込んでいるデータを含めます。クエリがまっすぐなMDXになり、非常に高速になるはずです(集約が必要な場合があります)。


回答№2の場合は1

SQL Serverテーブルのデータの性質とそれを引き出す目的に応じて、次の2つの方法があります。

  • SQL Serverテーブルのデータが要約し、頻繁に変更しない場合は、それをMOLAP次元データとしてキューブにプッシュすることもできます。このアプローチを使用すると、最良のクエリパフォーマンスが得られます。

  • 一方、トランザクションデータで頻繁に更新されている場合でも、それを使用してキューブにプッシュできます ROLAPストレージ および/または プロアクティブキャッシング。このアプローチを使用すると、キューブに最新のデータを組み込むことができます(遅延は最小限に抑えられます)。これはクエリのパフォーマンスに多少の影響を与えます。

どちらの場合でも、ストアドプロシージャから変換するかなりの量のリワークがあると私は同意します。