集約ストレージ・キューブの圧縮ディメンション

Essbase集約ストレージ(ASO)キューブの圧縮ディメンションの選択は、パフォーマンスに重大な影響を与える可能性があります。デフォルトでは、それは勘定科目ディメンションです。適切な候補は、取得のパフォーマンスを維持しながらデータ圧縮を最適化するディメンションです。

圧縮ディメンションを変更すると、キューブ全体の再構築がトリガーされます。圧縮ディメンションは、単一の動的階層である必要があります。ディメンションに異なる階層設定(複数の階層など)がある場合は、単一の動的階層に自動的に設定されます。元の階層設定は失われます(別のディメンションを圧縮として設定しても、元の階層設定には戻されません)。属性ディメンションは、圧縮ディメンションにすることも、圧縮ディメンションに属性が関連付けられているディメンションにすることもできません。

ノート:

このトピックの情報は、ロード済データベースに適用されます。「集約ストレージ・キューブへのデータのロード」を参照してください。

取得パフォーマンスの維持

圧縮ディメンションは動的に計算されるため、圧縮ディメンションを選択する際は、動的に計算されるディメンションの設計に関する考慮事項を考慮する必要があります。動的ディメンションは取得時に計算されるため、データの取得時間は保管階層の場合よりも長くなります。

レベル0のメンバーを多く持つディメンションが、圧縮としてタグ付けされている場合、上位レベルの問合せは、レベル0のメンバーを多く取得する必要があるため、時間がかかります。ユーザーが大きなディメンションで多数の上位レベルの取得を行う予定の場合、これは圧縮ディメンションとして推奨される候補ではありません。

圧縮の概算統計の表示

詳細な圧縮および問合せ統計は、Essbase WebインタフェースMaxLまたはREST APIで表示できます。これらの推定は、圧縮ディメンションとして使用する最適なディメンションを選択するのに役立ちます。各ディメンションについて、保管されたレベル0メンバー(取得パフォーマンスに影響)、平均バンドルの入力と平均値の長さ(圧縮に影響)およびレベル0のサイズを表示できます。

統計を表示するには、次のいずれかの方法を選択します:

  • Essbase Webインタフェース例:


    異なるディメンションが圧縮ディメンションとして仮定的に使用される場合のASOキューブの圧縮情報の見積り。これらの推定は、圧縮ディメンションとして使用する最適なディメンションを選択するのに役立ちます。返される統計には、ディメンション名、圧縮(true/false)、保管済Level0メンバー、平均バンドルの入力、平均値長およびLevel0(MB)があります。

  • query database MaxL文の集約ストレージ・バージョン。例:

    query database ASOSamp.Basic list aggregate_storage compression_info;
  • REST APIエンドポイントのASO圧縮情報の取得

圧縮と問合せに関連する各統計について、次の説明を参照してください。

レベル0の保管済メンバー

圧縮としてタグ付けされている場合、保管されたレベル0メンバーを多く含むディメンションは、適切に動作しません。動的に計算されるディメンションと同様に、圧縮ディメンションからの上位レベルの取得は一般的に遅くなります。

平均バンドルの入力

値の間で大量の#MISSINGデータがアウトライン全体に分散しているのではなく、値がディメンションまたは階層の連続したメンバーでグループ化されている場合、圧縮はより有効です。Essbaseでは、グループの場所と内容に関する情報を保管し、メンバーごとに個別に保管しないことで、メモリーが節約されます。平均バンドルの入力は、グループに保管されている値の平均数です。これは1から16の間となり、16が最適です。平均バンドルの入力がより高い圧縮ディメンションを選択するということは、データベースがより適切に圧縮されることを意味します。

一部のアウトラインでは、頻繁に移入されるメンバーがグループ化されるように圧縮ディメンション内の数値を順序付けすることで圧縮を改善できます。移入されるメンバーをグループ化すると、より多くの値が各バンドルに適合し、平均バンドルの入力の値が高くなり圧縮効果が向上します。

平均値の長さ

平均値の長さは、バイト単位の平均ストレージ・サイズで、セルに保管される値に必要です。これは2バイトから8バイトの間となり、2バイトが最適です。圧縮しない場合、セルに値を保管するには8バイト必要です。圧縮する場合、値の長さに応じて、必要なバイト数はより少なくなります。たとえば、10.050001は圧縮しても8バイトが必要ですが、10.05で必要なのは2バイトのみです(圧縮する場合保管に4バイト必要)。平均値の長さがより小さいディメンションでは、データベースの圧縮効率が高くなります。

データ値の小数点以下を2桁以下に丸めると平均値の長さを短縮でき、圧縮効率が向上します。

適切なレベル0サイズ

このフィールドは、圧縮データベースの見積りサイズを示します。適切なレベル0サイズの値が小さい場合、このディメンションを選択するとより適切な圧縮が期待できることを示します。