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 サブルートインデックス定義を作成することが有効かつ効果的な方法です。 このアプローチでは、インデックス付きコンテンツの範囲を絞り込むことで、インデックス作成のコストを削減します。
-
ルートレベルの
/content/dam/test/oak:index/damAssetContent-customではなく、DAM 構造内の特定のパス(/oak:indexなど)にカスタムインデックスを定義します。 -
queryPathsおよびincludedPathsを設定して、目的のコンテンツのサブセットのみのインデックスを作成します。queryPaths:[ /content/dam/test ]includedPaths:[ /test ]
-
カスタムインデックスのテストを十分に行って、クエリのパフォーマンスが向上し、意図しない副作用が発生しないようにします。
-
カスタムインデックス定義の範囲を制限して、すべてのコンテンツの不要なインデックス再作成を防ぎます。
関連資料
- AEM Sites チュートリアルの 簡易検索実装ガイド
- 新しい検索と置換を使用するために、既存のコンテンツにインデックスを作成する手順 については、AEM Guides ドキュメントを参照してください
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f