Simple search实施提供的资料来自 Adobe Summit实验室AEM Search Demystified. 本页包含本实验中的资料。 有关引导式实验教程,请查看本页“演示”部分中的“实验”工作簿。
以下章节链接假定 初始包 安装在AEM作者上的http://localhost:4502
实验室讨论的更正和澄清,以及与会者提出的后续问题的回答。
如何停止重新索引?
可以通过以下方式提供的IndexStats MBean停止重新索引: AEM Web控制台> JMX
abortAndPause()
以中止重新索引。 这将锁定索引以进一步重新索引,直到 resume()
将会调用。resume()
将重新启动索引过程。Oak索引如何支持多个租户?
Oak支持将索引放置到整个内容树中,并且这些索引将仅在该子树中建立索引。 例如 /content/site-a/oak:index/cqPageLucene
可以创建以仅索引以下内容 /content/site-a
.
一个等效的方法是使用 includePaths
和 queryPaths
下的索引的属性 /oak:index
. 例如:
/oak:index/siteAcqPageLucene@includePaths=/content/site-a
/oak:index/siteAcqPageLucene@queryPaths=/content/site-a
此方法的注意事项包括:
/oak:index/cqPageLucene
)也将索引数据,从而导致重复引入和磁盘使用成本。其中列出了所有可用的Analyser?
Oak公开了一组用于AEM的lucene提供的分析器配置元素。
如何在同一查询中搜索页面和资产?
AEM 6.3的新增功能是在同一提供的查询中查询多个节点类型。 以下QueryBuilder查询。 请注意,每个“子查询”都可以解析为自己的索引,因此在此示例中, cq:Page
子查询解析为 /oak:index/cqPageLucene
和 dam:Asset
子查询解析为 /oak:index/damAssetLucene
.
group.p.or=true
group.1_group.type=cq:Page
# add all page restrictions to this group
group.2_group.type=dam:Asset
# add all asset restrictions to this group
结果产生以下查询和查询计划:
QUERY:(//element(*, cq:Page) | //element(*, dam:Asset))
PLAN: [cq:Page] as [a] /* lucene:cqPageLucene(/oak:index/cqPageLucene) *:* */ union [dam:Asset] as [a] /* lucene:damAssetLucene(/oak:index/damAssetLucene) *:* */
通过以下方式浏览查询和结果 QueryBuilder Debugger 和 AEM Chrome插件.
如何在同一查询中跨多个路径搜索?
AEM 6.3的新增功能是在同一提供的查询中跨多个路径进行查询。 以下QueryBuilder查询。 请注意,每个“子查询”都可以解析为自己的索引。
group.p.or=true
group.1_group.type=cq:Page
group.1_group.path=/content/docs/en/6-2
# add all page restrictions to this group
group.2_group.type=cq:Page
group.2_group.path=/content/docs/en/6-3
# add all asset restrictions to this group
以下查询和查询计划中的结果
QUERY: (/jcr:root/content/docs/en/_x0036_-2//element(*, cq:Page) | /jcr:root/content/docs/en/_x0036_-3//element(*, cq:Page))
PLAN: [cq:Page] as [a] /* traverse "/content/docs/en/6-2//*" where isdescendantnode([a], [/content/docs/en/6-2]) */ union [cq:Page] as [a] /* traverse "/content/docs/en/6-3//*" where isdescendantnode([a], [/content/docs/en/6-3]) */
通过以下方式浏览查询和结果 QueryBuilder Debugger 和 AEM Chrome插件.