問題タブ [olap4j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
167 参照

java - 異なる結果を返す MDX クエリ

SOコミュニティ、

BI アプリケーションに問題があります。

Schema Workbench で構築したスキーマがあり、組み込みのクエリ テスターを使用すると、完全かつ正確に機能します。ただし、Java アプリケーションから呼び出すと、まったく同じ MDX クエリに対して同じスキーマが異なるセル値を返します (既に PreparedOlapStatement.execute() メソッドと OlapStatement.executeOlapQuery(String) メソッドの両方を試しました)。

ステートメントが実行されるとすぐに値が間違っているので、アプリケーションの問題ではないと思います。ワークベンチで使用したものと同じになるようにクエリをハードコーディングしてみましたが、それでも間違った値が返されます。

クエリは次のとおりです。一部の名前は、(かなりばかげた) 会社のポリシーのために変更されています。

フィルターが意図したとおりに機能すると仮定すると (Schema Workbench から取得した結果が正しく、基礎となるデータベースで再確認されるため)、何がうまくいかないのでしょうか?

編集:

生成される両方の SQL クエリは同じです。

SO では、クエリのスクリーンショットを並べてアップロードすることはできませんが、差分チェッカーを使用してそれらが同じであることを確認しました。

0 投票する
1 に答える
1278 参照

spring - spring-boot は動的 OLAP レポート生成ツールをサポートしていますか?

既存の Spring Boot Web アプリケーションに OLAP レポートのサポートを追加する必要があります。BIRT、JasperServer Report、Saiku などの複数の BI ツールに出くわしましたが、それらすべてについて、作成済みのキューブを使用する必要があります。データに変更があった場合、レポートには反映されません。

実行時にキューブを作成したり、実行時にキューブにデータを追加してレポートを生成したりするのに役立つサードパーティ ツールはありますか?

0 投票する
1 に答える
110 参照

mdx - 非推奨の mondrian.olap.Connection::execute の代わりに何を使用すればよいですか?

だから私は Java 1.8 で Mondrian 3.14 を使用しようとしているので、次のようなことをしました:

ただし、ここに記載されているように、Connection::execute非推奨です。

非推奨。このメソッドは推奨されておらず、mondrian-4.0 で削除されます。内部でステートメントを作成することによって動作します。olap4j を使用して明示的にステートメントを作成することをお勧めします。

では、クエリを実行するには、olap で何を使用すればよいでしょうか。

0 投票する
0 に答える
51 参照

java - MSS Studio と Java MDX での SSAS クエリのパフォーマンスの違い

文脈上、私は SSAS の専門家ではなく、熱心なユーザーでさえありません。私は主に Java 開発者です。SSAS を使用してさまざまなモデルを作成、開発、テストするデータ サイエンス チームがあります。

これらのモデルの出力を Microsoft 以外の他のシステムと統合するために、Olap4j/XMLA を使用してキューブから特定のフィールドをクエリし、MDX クエリを実行できる Java ベースのサービスを構築しています。しかし、パフォーマンス (またはその欠如) は私を混乱させます。

MSS Studio を開いてキューブを「参照」し、多数のメジャーをメジャー ペインにドラッグし、「空のセルを表示」を切り替えて (そうしないと、何らかの理由で結果が得られません)、実行を押すと、予想される結果がほぼ即座に得られます。 . 赤い四角をクリックして「デザイン モード」をオフにすると、次のような MDX コードが表示されます。

この MDX クエリを取得して Java アプリケーションに貼り付けて実行すると、次のコードを使用して結果を返すのに 30 秒以上かかります。

そして、追加するメジャーが増えるほど、遅くなります。コードにログとデバッグのブレークポイントをいくつか入れてみましたが、データを返すのが遅いのは SSAS 自体のようです。

私はSSASについてほとんど知らないことを念頭に置いて、何を試すことができますか? Olap4j には設定していない設定オプションがありますか? MSS Studio は、私が複製することが不可能な最適化を舞台裏で行っていますか?

編集1:

直感で、ネットワーク トラフィックを監視するために Wireshark をインストールしました。クエリの実行中に、ラップトップと SSAS サーバーの間で数百万とは言わないまでも数十万のパケットがやり取りされていることがわかります。ネットワーク パケットは解釈が難しいですが、多くの場合、測定値を含む HTTP データを送信しているようです。次のようなものがあります。

そのため、速度低下は実際にはすべてネットワーク トラフィックである可能性があります。olap4j/IIS/SSAS でトラフィックを圧縮して、同じ量のデータを 1 秒以内に取得する MSS と同様のパフォーマンスを olap4j で得る方法はありますか?