AEM:インデックス作成のコストが高いと、大規模な DAM 環境のクエリのパフォーマンスが低下する

大規模なAdobe Experience Manager(AEM)環境では、デフォルトのインデックス作成設定を使用すると、インデックス作成に高いコストがかかるので、クエリのパフォーマンスが低下する可能性があります。 特に、damAssetLucene タイプの dam:Asset インデックスは、大規模なデジタルアセット管理(DAM)構造全体で効率的に拡張できない可能性があります。

これを修正するには、ターゲットの DAM ブランチの下にOak サブルートインデックス定義を作成して、インデックス作成の範囲を減らし、クエリの応答時間を短縮します。

説明 description

環境

Adobe Experience Manager(AEM) 6.5

問題/症状

  • デフォルトの damAssetLucene インデックスのインデックスコストが高いため、大規模な DAM 環境では、クエリのパフォーマンスが低下します。
  • 特定の DAM 分岐の下のカスタムインデックス(/content/dam/test/oak:index/damAssetContent-custom など)では、インデックス作成範囲が削減されて、クエリのパフォーマンスが向上します。
  • より広範な /oak:index を使用して includedPaths でインデックスを使用すると、すべてのコンテンツのインデックスが再作成さ queryPaths、パフォーマンスのメリットが否定される可能性があります。

解決策 resolution

大規模な環境でクエリのパフォーマンスを向上させるには、特定の DAM ブランチに対してOak サブルートインデックス定義を作成することが有効かつ効果的な方法です。 このアプローチでは、インデックス付きコンテンツの範囲を絞り込むことで、インデックス作成のコストを削減します。

  1. ルートレベルの /content/dam/test/oak:index/damAssetContent-custom ではなく、DAM 構造内の特定のパス(/oak:index など)にカスタムインデックスを定義します。

  2. queryPaths および includedPaths を設定して、目的のコンテンツのサブセットのみのインデックスを作成します。

    • queryPaths[ /content/dam/test ]
    • includedPaths[ /test ]
  3. カスタムインデックスのテストを十分に行って、クエリのパフォーマンスが向上し、意図しない副作用が発生しないようにします。

  4. カスタムインデックス定義の範囲を制限して、すべてのコンテンツの不要なインデックス再作成を防ぎます。

関連資料

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f