ツリー構造のパフォーマンス改善に関するガイドライン

ツリー構造には大量のデータがロードされます。ツリー管理のガイドラインとして、データのレンダリングおよび取得のパフォーマンスを向上させるために、次の設定を使用します。

  • 行水平化

  • 列水平化

  • 列水平化エンティティ・オブジェクト

  • BIビュー・オブジェクト

注意: 強制フラット化では、行と列両方のフラット化が処理されます。これは、スケジュール強制フラット化オンライン強制フラット化オフライン強制フラット化など、強制フラット化のすべてのモードに適用されます。強制フラット化を使用して、行のフラット化と列のフラット化を個別に実行しないでください。同じツリーに対して2つのフラット化プロセスを同時に実行すると、一貫性のない結果になります。

行水平化

行水平化により、追加の行を表に格納することでCONNECT BY問合せを開始せずに親の子孫すべてが即時に検出されるため、実行時パフォーマンスに関して親子情報が最適化されます。行水平化によって再帰問合せが解消され、サブツリー全体でさらに効率的に操作を実行できるようになります。

ユーザーは、特定のツリー構造の行水平化データを格納するために、中心となるFND_TREE_NODE_RF表を使用することも、独自の行水平化表を登録することもできます。たとえば、表でCorporationはSales Divisionの親(Corporation-Sales Division)で、Sales DivisionはRegionの親(Sales Division-Region)である場合、行水平化表には、Corporationが直接Regionの親(Corporation-Region)となる追加の行が格納されます。

列水平化

列水平化により、子のすべての親について追加の列を表に格納することで、実行時パフォーマンスに関して親子情報が最適化されます。

ユーザーは、特定のツリー構造の列水平化データを格納するために、中心となるFND_TREE_NODE_CF表を使用することも、独自の列水平化表を登録することもできます。たとえば、表でCorporationはSales Divisionの親(Corporation-Sales Division)で、Sales DivisionはRegionの親(Sales Division-Region)である場合、水平化表には、これらの列に加えてRegion、Sales DivisionおよびCorporationの3つの新しい列が格納されます。相互に横に配置されますが、Region列は下位レベル、Corporation列は上位レベルで機能し、データ階層を保持します。

列水平化エンティティ・オブジェクト

列水平化表がなく、水平化表のツリー構造に対してビジネス・コンポーネント・ビュー・オブジェクトを生成する必要がある場合は、ツリー管理インフラストラクチャを使用して、列水平化表に対するエンティティ・オブジェクトの完全修飾名を正確に指定します。

BIビュー・オブジェクト

ビジネス・インテリジェンスからのビュー・オブジェクトはデータ・ソースとして使用可能で、新しいタイプのデータ・ソースを作成する必要がありません。このフィールドは、ビジネス・インテリジェンスでのレポートおよび使用のために、ツリー管理によって生成されるBIビュー・オブジェクトの完全修飾名を格納するためのフィールドです。BIビュー・オブジェクトは、ツリー・データ・ソースと列水平化エンティティの組合せです。このオプションを使用すると、データ冗長性が防止され、既存のデータの再利用が大幅に促進されることで、ツリー構造のパフォーマンスが向上します。

検索ビュー・オブジェクト

ツリー・ノードで実行される検索操作が効率的になるように、ツリー・ノードのビュー・オブジェクトの完全名を指定します。