La implementación de búsqueda simple son los materiales del laboratorio de Adobe Summit AEM Search Demystified. Esta página contiene los materiales de este laboratorio. Para una visita guiada al laboratorio, por favor vea el libro de Lab en la sección Presentación de esta página.
Los vínculos de capítulo siguientes suponen que los paquetes iniciales están instalados en AEM Author enhttp://localhost:4502
Correcciones y aclaraciones de las discusiones de laboratorio y respuestas a preguntas de seguimiento de los asistentes.
¿Cómo dejar de reindexar?
La reindexación se puede detener a través de IndexStats MBean disponible a través de AEM Web Console > JMX
abortAndPause()
para anular la reindexación. Esto bloqueará el índice para volver a indexarlo hasta que se invoque resume()
.resume()
se reiniciará el proceso de indexación.¿Cómo pueden los índices oak soportar múltiples inquilinos?
Oak admite la colocación de índices a través del árbol de contenido, y estos índices solo indexarán dentro de ese sub-árbol. Por ejemplo, /content/site-a/oak:index/cqPageLucene
se puede crear para indexar contenido solo bajo /content/site-a
.
Un enfoque equivalente es usar las propiedades includePaths
y queryPaths
en un índice en /oak:index
. Por ejemplo:
/oak:index/siteAcqPageLucene@includePaths=/content/site-a
/oak:index/siteAcqPageLucene@queryPaths=/content/site-a
Las consideraciones con este enfoque son:
/oak:index/cqPageLucene
) TAMBIÉN indexarán los datos, lo que dará como resultado una ingesta duplicada y costo de uso del disco.¿Dónde hay una lista de todos los analizadores disponibles?
Oak expone un conjunto de elementos de configuración del analizador de lucene que se utilizan en AEM.
¿Cómo se busca Páginas y Recursos en la misma consulta?
Una novedad en AEM 6.3 es la capacidad de consultar varios tipos de nodos en la misma consulta proporcionada. La siguiente consulta de QueryBuilder. Tenga en cuenta que cada "subconsulta" puede resolverse en su propio índice, por lo que en este ejemplo, la subconsulta cq:Page
se resuelve en /oak:index/cqPageLucene
y la subconsulta dam:Asset
se resuelve en /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
tiene como resultado el siguiente plan de consulta y consulta:
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) *:* */
Explore la consulta y los resultados a través de QueryBuilder Debugger y AEM complemento de Chrome.
¿Cómo buscar en varias rutas en la misma consulta?
Una novedad en AEM 6.3 es la capacidad de realizar consultas en varias rutas en la misma consulta proporcionada. La siguiente consulta de QueryBuilder. Tenga en cuenta que cada "subconsulta" puede resolverse en su propio índice.
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
resultados en el siguiente plan de consulta y consulta
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]) */
Explore la consulta y los resultados a través de QueryBuilder Debugger y AEM complemento de Chrome.