2017-06-26 3 views
2

J'ai un fichier Lucene personnalisé que je dois convertir en Solr. Le fichier de configuration ressemble à celui mentionné ci-dessous. Comment pouvons-nous convertir en Solr?Conversion de la configuration de l'index Lucene personnalisé en Solr dans Sitecore

<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/"> 
    <sitecore> 
    <contentSearch> 
     <indexConfigurations> 

     <customMasterSearchTermConfig type="Sitecore.ContentSearch.LuceneProvider.LuceneIndexConfiguration, Sitecore.ContentSearch.LuceneProvider"> 
      <indexAllFields>false</indexAllFields> 
      <initializeOnAdd>true</initializeOnAdd> 
      <analyzer ref="contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/analyzer" /> 
      <fieldMap type="Sitecore.ContentSearch.FieldMap, Sitecore.ContentSearch"> 
      <fieldNames hint="raw:AddFieldByFieldName"> 
       <field fieldName="_uniqueid" storageType="YES" indexType="TOKENIZED" vectorType="NO" boost="1f" type="System.String" settingType="Sitecore.ContentSearch.LuceneProvider.LuceneSearchFieldConfiguration, Sitecore.ContentSearch.LuceneProvider"> 
       <analyzer type="Sitecore.ContentSearch.LuceneProvider.Analyzers.LowerCaseKeywordAnalyzer, Sitecore.ContentSearch.LuceneProvider" /> 
       </field> 
       <!--<field fieldName="Subheading" storageType="Yes" indexType="TOKENIZED" vectorType="No" boost="if" type="System.String" settingType=""></field>--> 
       <field fieldName="Value" storageType="YES" indexType="TOKENIZED" vectorType="NO" boost="1f" type="System.String" settingType="Sitecore.ContentSearch.LuceneProvider.LuceneSearchFieldConfiguration, Sitecore.ContentSearch.LuceneProvider" /> 
       <!--<analyzer type="Sitecore.ContentSearch.LuceneProvider.Analyzers.LowerCaseKeywordAnalyzer, Sitecore.ContentSearch.LuceneProvider" />--> 
       <!--</field>--> 
      </fieldNames> 
      </fieldMap> 
      <include hint="list:IncludeField"> 
      <fieldId>{B8978923-AFD2-44F4-8010-F8A0EC79F61D}</fieldId> 
      </include> 
      <fieldReaders ref="contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/fieldReaders" /> 
      <indexFieldStorageValueFormatter ref="contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/indexFieldStorageValueFormatter" /> 
      <indexDocumentPropertyMapper ref="contentSearch/indexConfigurations/defaultLuceneIndexConfiguration/indexDocumentPropertyMapper" /> 
     </customMasterSearchTermConfig> 
     </indexConfigurations> 
    </contentSearch> 
    </sitecore> 
</configuration> 
+0

Que voulez-vous dire par 'convertir en Solr'? Solr est construit au sommet de Lucene – vinod

Répondre

1

A dû le faire il y a un certain temps, et je pris un coup d'œil à la valeur par défaut Solr indexConfig pour savoir ce que je devais changer. Comme c'était sur une version différente de Sitecore, je ne suis pas sûr que les différences exactes seront les mêmes pour vous.

Cela s'est plutôt bien passé. Il s'agit principalement de changer les types et les références de la variante Lucene à la version Solr, mais assurez-vous également de vérifier que les éléments sont toujours les mêmes.

Le plus grand changement sera votre FieldMap. Dans mon cas, il changer quelque chose comme ceci:

<fieldMap ref="contentSearch/indexConfigurations/defaultSolrIndexConfiguration/fieldMap"> 
    <fieldNames hint="raw:AddFieldByFieldName"> 
    <field fieldName="..." returnType="string" /> 
    <field fieldName="..." returnType="string" /> 
    ... 
    </fieldNames> 
</fieldMap> 

J'ai donc ref à la valeur par défaut (au lieu du type) et je devais modifier les définitions de champ à une configuration Solr. Dans votre cas, vous n'aurez qu'à ajouter la "valeur" sous forme de chaîne.

Comme mentionné, vous pouvez trouver des exemples dans la configuration par défaut ...