Java Web アプリケーションでMONDRIANサーバーとOLAP4j API を使用しています。クエリの近くに where を追加するとパフォーマンスの問題が発生します。次のような MDX クエリ:
SELECT
CrossJoin(
{[Product.ProductHierarchie].[AllProduct]}
, {[Measures].[Quantity]}
) ON COLUMNS,
[Client.ClientHierarchie].[AllClient].Children ON ROWS
FROM [sales_data_cube]
あと0.3秒。ただし、 のような where 句を追加し
WHERE ([Period].&[start_period]:[Period].&[end_period])
て
開始/終了期間間の売上を取得すると、小さなファクト テーブル (8500 行) でクエリに250 秒
以上かかります。
より良いパフォーマンスを得るにはどうすればよいですか?
アプリケーションは、メモリ制限 = 8GB、データベース サーバー: MySQL 5.6.17 の tomcat サーバーで実行されています。