Guia simples de implementação de pesquisa simple-search-implementation-guide

A implementação de pesquisa simples são os materiais do Laboratório de Adobe Summit AEM Pesquisa Demystified. Esta página contém os materiais deste laboratório. Para um tour guiado pelo laboratório, consulte a pasta de trabalho do laboratório na seção Apresentação desta página.

Visão Geral da Arquitetura de Pesquisa

Materiais de apresentação bookmarks

Marcadores bookmarks-1

Ferramentas tools

Capítulos chapters

Os links de Capítulo abaixo pressupõem que os Pacotes Iniciais estejam instalados no AEM Author emhttp://localhost:4502

Pacotes packages

Pacotes iniciais initial-packages

Pacotes de capítulo chapter-packages

Materiais referenciados reference-materials

Correções e acompanhamento corrections-and-follow-up

Correções e esclarecimentos das discussões no laboratório e respostas das perguntas de acompanhamento dos participantes.

  1. Como interromper a reindexação?

    A reindexação pode ser interrompida por meio do MBean IndexStats disponível via Console da Web AEM > JMX

  2. Como os índices do oak podem suportar vários locatários?

    O Oak permite a inserção de índices por meio da árvore de conteúdo, e esses índices serão indexados somente nessa subárvore. Por exemplo, /content/site-a/oak:index/cqPageLucene pode ser criado para indexar conteúdo somente em /content/site-a.

    Uma abordagem equivalente é usar as propriedades includePaths e queryPaths em um índice em /oak:index. Por exemplo:

    • /oak:index/siteAcqPageLucene@includePaths=/content/site-a
    • /oak:index/siteAcqPageLucene@queryPaths=/content/site-a

    As considerações com essa abordagem são:

    • As consultas DEVEM especificar uma restrição de caminho que seja igual ao escopo do caminho de consulta do índice, ou ser um descendente dele.
    • Índices com escopo mais amplo (por exemplo, /oak:index/cqPageLucene) TAMBÉM indexarão os dados, resultando em assimilação duplicada e custo de uso do disco.
    • Pode exigir gerenciamento de configuração duplicado (por exemplo, adicionar as mesmas indexRules em vários índices de locatário se eles precisarem atender aos mesmos conjuntos de consultas)
    • Essa abordagem é mais adequada no nível do AEM Publish para pesquisa de site personalizada, como no AEM Author, é comum que as consultas sejam executadas no alto da árvore de conteúdo para diferentes locatários (por exemplo, por meio do OmniSearch). Definições de índice diferentes podem resultar em um comportamento diferente com base apenas na restrição do caminho.
  3. Onde está uma lista de todos os Analisadores disponíveis?

    O Oak expõe um conjunto de elementos de configuração do analisador do lucene para uso no AEM.

  4. Como pesquisar por Páginas e Assets na mesma consulta?

    Uma novidade no AEM 6.3 é a capacidade de consultar vários tipos de nó no mesmo query fornecido. A seguinte consulta do QueryBuilder. Observe que cada "subconsulta" pode resolver para seu próprio índice. Portanto, neste exemplo, a subconsulta cq:Page é resolvida como /oak:index/cqPageLucene e a subconsulta dam:Asset é resolvida como /oak:index/damAssetLucene.

    code language-plain
    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
    

    resultados na consulta e no plano de consulta a seguir:

    code language-plain
    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 a consulta e os resultados por meio do QueryBuilder Debugger e do Plug-in AEM Chrome.

  5. Como pesquisar vários caminhos na mesma consulta?

    Uma novidade no AEM 6.3 é a capacidade de consultar em vários caminhos no mesmo query fornecido. A seguinte consulta do QueryBuilder. Observe que cada "subconsulta" pode resolver para seu próprio índice.

    code language-plain
    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 na seguinte consulta e plano de consulta

    code language-plain
    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 a consulta e os resultados por meio do QueryBuilder Debugger e do Plug-in AEM Chrome.

recommendation-more-help
bb44cebf-d964-4e3c-b64e-ce882243fe4d