Quais fatores são usados ​​para determinar a ordem de exibição quando a opção "Classificar por relevância" é usada durante a pesquisa no Magento Connect?

15

Quero entender a lógica ou o algoritmo por trás da funcionalidade de pesquisa no Magento Connect quando a opção Classificar por na opção Refinar pesquisa estiver definida para classificar por Relavência

Pratik bhatt
fonte
Você quer dizer o site Magento Connect?
SR_Magento 21/08/2015
Sim @sr_magento
Pratik bhatt

Respostas:

6

Eu suponho que a pesquisa seja implementada usando o índice MySQL FULLTEXT.

Aqui está uma citação da documentação oficial do MySQL sobre como esse índice funciona:

As linhas retornadas são classificadas automaticamente com a maior relevância primeiro. Os valores de relevância são números não negativos de ponto flutuante. Zero relevância significa sem similaridade. A relevância é calculada com base no número de palavras na linha, no número de palavras únicas nessa linha, no número total de palavras na coleção e no número de documentos (linhas) que contêm uma palavra específica.

Como prova disso, você pode tentar fazer uma pesquisa no site Magento Connect usando os seguintes termos de pesquisa:

  1. Slider
  2. Ordem
  3. SEO

Para o primeiro termo, os primeiros resultados são módulos com títulos:

  1. I-Slider - Slider de banner
  2. Slider do produto Pro | Sliders múltiplos | Slider responsivo

Pela segunda:

  1. Pedido - Lembrete de pedido

Para o último:

  1. SEO - Advanced SEO Suite

Como você pode ver em todos os casos, os primeiros itens têm mais de uma ocorrência de termo de pesquisa no título, portanto a relevância deles é maior.

Parece que é assim que a pesquisa do Magento Connect funciona.

alex_b
fonte
Não é um palpite ruim, Alex. Embora eu suponha que pressuponha que o connect seja construído sobre a mesma pilha subjacente do Magento, o que pode não ser o caso. Esperando @BenMarks sinos em
Bryan 'BJ' Hoffpauir Jr.
3

Enquanto o Magento.com é baseado no Drupal, o Magento Connect parece estar usando o próprio Magento, pelo menos como base.

Evidência:

Com essas informações, podemos concordar que a pesquisa funciona da mesma maneira que no Magento Enterprise. Agora, existem várias possibilidades:

  • Pesquisa como o MySQL
  • Pesquisa MySQL FULLTEXT
  • Pesquisa combinada MySQL
  • Solr

Como você pode ver se você procura por combinações arbitrárias de termos de pesquisa, não é a LIKEpesquisa padrão ORque todo mundo odeia. Portanto, é a pesquisa de texto completo que ordena por relevância, por padrão, conforme sugerido por @alex_b ou a pesquisa Solr do módulo Enterprise_Search, para a qual provavelmente não tenho permissão para divulgar detalhes.

Fabian Schmengler
fonte