オンデマンド計算により、Polaris ではエンド ユーザーが参照したときにのみ値を計算することでモデルのパフォーマンスを向上させることができます。
Polaris では、非常に大きな潜在的な集計スペースがある、高度にディメンション化されたライン アイテムをサポートしています。こうしたライン アイテムでは、すべてのユーザーに表示されるセルの数は通常、ディメンション スペース全体のごく一部にすぎません。オンデマンド計算では、確認対象に必要なライン アイテムの部分のみが Polaris で計算されます。その結果、次のようなメリットがもたらされます。
- メモリ使用量の削減: オンデマンド計算を利用できるライン アイテムではメモリ使用量が削減されるとともに、報告される入力セル数も削減されます。時間が経つにつれて、これはさらに変動しやすくなります。
- データ変更時のレイテンシの短縮: 確認しているセルのみが再計算されるため、上流のデータ変更による再計算にかかる時間を短縮できます。
一般的に、オンデマンド計算に気付くユーザーはほとんどいません。ただし、オンデマンド計算が有効になっているライン アイテムのメモリと入力セル数の変動を確認することで、モデル ビルダーがこれに気付く場合があります。
オンデマンド計算の影響を受けるライン アイテムは次のとおりです。
- チェーンの末尾のラインアイテム: 下流への参照がないライン アイテムです。たとえば、他のライン アイテムによって参照されていないライン アイテムなどです。
- 集計方法が [None]、[Formula]、又は [Ratio] 以外のライン アイテム。
オンデマンド計算の仕組み
Polaris ではライン アイテム集計をリージョンに分割します。リージョンとは、次に示すように、さまざまなディメンションの集計レベルの一意のセットが交差するところです。

オンデマンド計算では、ユーザーがライン アイテムを確認しない場合はリーフ セルのみが計算されます。ただし、ビュー内のユーザーがそのビュー内の特定のセルを確認すると、すべての計算がトリガーされてリージョン全体が表示されます。
たとえば、この例でユーザーが一番左上のセルを確認すると (「All Products」と「All Time」)、このリージョンに到達するために必要なリージョンのパスが計算されます。

注記:ディメンションの階層の深さが増し、ディメンションの数が増えると、リージョンの数が多くなる場合があります。高度にディメンション化されたライン アイテムでは、数千 (最大で数百万) のリージョンが存在するのが一般的です。ただし、一番左上の値を確認しているときに計算されるのは通常、これらのうちのほんの一部だけです。