Combinaison d'une correspondance minimale avec des associations de termes de recherche (à l'aide de l'algorithme d'expansion Solr)

Vous pouvez combiner la correspondance minimale avec les associations de termes de recherche, si vous utilisez l'algorithme d'expansion de synonymes Solr. Cette option est souvent utilisée avec le filtre d'expression automatique pour activer les associations de termes de recherche contenant plusieurs mots.

Remarque : Vous pouvez également combiner la correspondance minimale avec les associations de termes de recherche en utilisant l'algorithme d'expansion de requêtes d'exécution Solr.

Pourquoi et quand exécuter cette tâche

Tenez compte des limitations suivantes de cette fonction :
  • Un fichier synonyms.txt unique par catalogue principal est pris en charge. Le même fichier synonyms.txt est partagé par tous les sites étendus.
  • Les synonymes à plusieurs mots et les termes de remplacement ne sont pas pris en charge.
  • Si HCL Commerce et les serveurs de recherche se trouvent sur des nœuds distincts dans l'environnement de création, transférez le fichier synonyms.txt depuis le serveur HCL Commerce vers le serveur de recherche. Répétez ce processus après chaque mise à jour de l'association de termes de recherche du Centre de gestion. Transférez le fichier à l'aide du transfert de fichiers NFS ou en copiant manuellement le fichier. Le fichier est ensuite répliqué aux serveurs subordonnés de l'environnement de production.

Procédure

  1. Ouvrez le fichier LOBTools\WebContent\config\commerce\catalog\objectDefinitions\SearchTermAssociationsPrimaryObjectDefinition.def pour l'éditer.
  2. Supprimez la mise en commentaire de la section suivante :
    
    <!--Comments out the following definition to prevent generating "synonyms.txt" for solr server.-->
       <PostSaveService url="/cmc/PublishSearchTermAssociations">
          <ServiceParam name="storeId"/>
       </PostSaveService>
  3. Enregistrez vos modifications et fermez le fichier.
  4. Ouvrez le fichier suivant en mode édition :
    • solrhome/MC_masterCatalogId/locale_name/Catalogentry/conf/schema.xml
    Si vous souhaitez que le contenu non structuré se comporte de la même manière, ouvrez également le fichier suivant pour l'éditer :
    • solrhome/MC_masterCatalogId/locale_name/Catalogentry/conf/unstructured/schema.xml
  5. Ajoutez le fragment de classe de filtre suivant au fichier, dans le bloc de l'analyseur de requêtes wc_text, avant le filtre SnowballPorterFilterFactory et après WhitespaceTokenizerFactory :
    
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
    
    Si vous mettez à jour le fichier schema.xml de contenu non structuré, effectuez la mise à jour suivante :
    
    <filter class="solr.SynonymFilterFactory" synonyms="../../synonyms.txt" ignoreCase="true" expand="true"/>
    
  6. Enregistrez vos modifications et fermez le fichier.
  7. Mettez à jour toutes les versions du fichier de configuration HCL Commerce Search (wc-search.xml) :
    • Sur l'EAR WC : workspace_dir/WC/xml/config/com.ibm.commerce.catalog-ext/wc-search.xml
    • Sur l'EAR Search : Search_eardir/xml/config/com.ibm.commerce.catalog-ext/wc-search.xml

    Ajoutez synonym="/conf/synonyms.txt" dans le noyau CatalogEntry.

    
    <_config:core catalog="10001" indexName="CatalogEntry"
       language="en_US" name="MC_10001_CatalogEntry_en_US"
       path="/MC_10001/en_US/CatalogEntry" serverName="BasicConfiguration" synonym="/conf/synonyms.txt"/>
    
    Si vous souhaitez que le contenu non structuré se comporte de la même manière, mettez à jour le noyau UnstructuredContent.
    
    <_config:core catalog="10001" indexName="UnstructuredContent"
       language="en_US" name="MC_10001_CatalogEntry_Unstructured_en_US"
       path="/MC_10001/en_US/CatalogEntry/unstructured" serverName="BasicConfiguration" synonym="/conf/synonyms.txt"/>
    

    Pour plus d'informations, voir Configuration de la recherche.

  8. Assurez-vous que le fichier synonyms.txt existe dans le répertoire suivant : solrhome/MC_masterCatalogId/locale_name/Catalogentry/conf
    Important : Le Centre de gestion met automatiquement à jour synonyms.txt uniquement sur le serveur HCL Commerce dans l'emplacement précédent.

    Si votre HCL Commerce et vos serveurs de recherche se trouvent dans des nœuds distincts dans l'environnement de création, assurez-vous que le fichier synonyms.txt existe sur HCL Commerce et les nœuds de recherche.

    Ensuite, synchronisez la version du fichier du serveur de recherche avec la version HCL Commerce mise à jour du fichier. Autrement dit, le fichier synonyms.txt doit être transféré du serveur HCL Commerce vers le serveur de recherche après chaque mise à jour d'association de termes de recherche dans le Centre de gestion. Ainsi, les modifications apportées dans l'environnement de création HCL Commerce sont également reflétées sur le serveur de recherche.

  9. Pour synchroniser les fichiers de configuration Solr, tels que stopwords.txt, x-schema.xml et synonyms.txt entre les serveurs maître et subordonné, vous pouvez simplement déployer les mêmes images Docker sur chaque nœud.
    Pour chaque combinaison maître/subordonné, modifiez l'intervalle d'interrogation et l'URL maître pour personnaliser le comportement Solr. Vous ne pouvez pas modifier le fichier de configuration solrconfig.xml directement. Utilisez plutôt l'une des méthodes décrites dans Extension du fichier solrconfig.xml pour modifier les variables. Par exemple, vous pouvez modifier la valeur de l'intervalle d'interrogation via le paramètre solr.replication.pollInterval dans la table de base de données SRCHCONFEXT. L'URL maître peut également être personnalisée en modifiant le paramètre solr.master.server.url. Par exemple :
    update srchconfext set config='solr.master.server.url=master_hostname:master_https_port, solr.replication.pollInterval=00:00:10' where srchconfext_id=srchconfext_id;
    master_hostname et master_https_port sont les valeurs spécifiques à votre environnement. Si vous personnalisez plutôt solrconfig.xml en modifiant le fichier jvm.options (tel que décrit dans Extension du fichier solrconfig.xml), ajoutez les lignes suivantes à jvm.options :
    -Dsolr.master.server.url=master_hostname:master_https_port 
    -Dsolr.replication.pollInterval=00:00:10
  10. Vous pouvez transférer les associations de termes de recherche existantes du Centre de gestion vers le fichier synonyms.txt. Pour ce faire, déclenchez une modification mineure des synonymes ou des termes de remplacement, puis enregistrez votre modification.