Analyse des requêtes Solr

Vous pouvez analyser les parties d'une requête Solr pour aider à comprendre les actions prises par Solr lors de l'envoi d'une requête.

Pourquoi et quand exécuter cette tâche

Dans cette tâche, la requête suivante est analysée :
  • http://host_name:port/solr/MC_11351_CatalogEntry_en_US/select?q=name:coffee

Procédure

  1. Analyse de la partie serveur de la requête : http://host_name:port/solr

    Le nom d'hôte du serveur de recherche, tel que défini dans le fichier de configuration HCL Commerce Search (wc-search.xml) sur HCL Commerce EAR.

    Le fichier de configuration HCL Commerce Search est stocké à l'emplacement suivant :
    • workspace_dir/WC/xml/config/com.ibm.commerce.catalog/wc-search.xml

      Le ficher de configuration HCL Commerce Search par défaut :

    • workspace_dir/WC/xml/config/com.ibm.commerce.catalog-ext/wc-search.xml

      Le fichier de configuration HCL Commerce Search étendu. Cette version personnalisée du fichier ne contient que les propriétés modifiées.

    La configuration du serveur est stockée dans la section Serveur du fichier, sous BasicConfiguration ou AdvancedConfiguration, selon votre type de déploiement.

    Pour plus d'informations sur les configurations du serveur dans le fichier, voir HCL Commerce Search fichier de configuration (wc-search.xml).

  2. Analyse de la partie index de la requête : MC_11351_CatalogEntry_en_US

    L'index de recherche auquel la requête est mappée. Un serveur de recherche contient généralement plusieurs index, chaque catalogue principal contenant son propre groupe d'index. Le catalogue principal contient des index distincts pour chaque langue.

    Il existe trois types d'index pour chaque catalogue principal : CatalogEntry, CatalogGroup et Unstructured Content. Dans CatalogGroup, le segment URL est mappé à :
    • MC_MasterCatalogID_indextype_language
    Par exemple, si un catalogue principal (10001) contient deux langues (en_US et fr_FR), il y a six index de recherche correspondants :
    1. MC_10001_CatalogEntry_en_US
    2. MC_10001_UnstructuredContent_en_US
    3. MC_10001_CatalogGroup_en_US
    4. MC_10001_CatalogEntry_fr_FR
    5. MC_10001_UnstructuredContent_fr_FR
    6. MC_10001_CatalogGroup_fr_FR

    Le fichier solrhome/solr.xml contient les emplacements de l'index de recherche.

    Par exemple :
    <cores adminPath="/admin/cores">
    <core instanceDir="MC_10001/en_US/CatalogEntry/" name="MC_10001_CatalogEntry_en_US"/>
    <core instanceDir="MC_10001/en_US/CatalogEntry/unstructured/" name="MC_10001_CatalogEntry_Unstructured_en_US"/>
    </cores>
    

    Pour plus d'informations sur l'index de recherche et ses types, voir HCL Commerce Search schéma d'index.

  3. Analyse de la partie détails de la requête de la requête : select?q=name:coffee

    La requête, spécifiée comme q, qui est envoyée à Solr. Dans ce cas, tous les documents d'un index sont renvoyés lorsque la zone nom contient la valeur café.

    Les résultats de la requête sont renvoyés au format XML. Si vous effectuez une requête à partir d'un navigateur, il renvoie généralement les 10 premiers documents. Voici l'en-tête de réponse et le premier document renvoyé. Chaque balise doc contient un seul document :
    
     <response>
    
    <lst name="responseHeader">
    <int name="status">0</int>
    <int name="QTime">1</int>
    <lst name="params">
    <str name="q">name:coffee</str>
    
    </lst>
    </lst>
    <result name="response" numFound="39" start="0">
    
    
    <doc>
    
    <int name="buyable">1</int>
    <arr name="catalog_id">
    <long>11351</long>
    <long>11401</long>
    </arr>
    <long name="catentry_id">13093</long>
    <str name="catenttype_id_ntk_cs">ProductBean </str>
    <str name="fullImage">
    images/catalog/kitchenware/kitchenware_160x160/KIES_01.jpg
    </str>
    <long name="member_id">7000000000000001751</long>
    <str name="mfName">AromaStar</str>
    <str name="mfName_ntk">AromaStar</str>
    <str name="mfName_ntk_cs">AromaStar</str>
    <str name="name">
    Coffee and Espresso Bar
    </str>
    <arr name="parentCatgroup_id_facet">
    <str>11351_11374</str>
    <str>11401_11503</str>
    </arr>
    <arr name="parentCatgroup_id_search">
    <str>11351_11374</str>
    </arr>
    <str name="partNumber_ntk">KIES-01</str>
    <float name="price_USD">499.95</float>
    <int name="published">1</int>
    <str name="sequence">000000000000000.00000</str>
    <str name="shortDescription">Brew coffee and espresso on demand.</str>
    <int name="storeent_id">11851</int>
    <str name="thumbnail">
    images/catalog/kitchenware/kitchenware_70x70/KIES_01.jpg
    </str>
    
    </doc>

    Pour en savoir plus sur la façon de contrôler ce qui est renvoyé dans une requête de recherche, voir Services de recherche et interactions.