Преобразование пользовательской конфигурации индекса Lucene в Solr в Sitecore

У меня есть собственный файл Lucene, который мне нужно преобразовать в Solr. Файл конфигурации выглядит примерно так, как указано ниже. Как мы конвертируем в Solr?

 <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>

person Srinivas Ramakrishna    schedule 26.06.2017    source источник
comment
Что вы подразумеваете под convert into Solr ? Solr построен поверх Lucene   -  person Vinod    schedule 27.06.2017


Ответы (1)


Пришлось сделать это некоторое время назад, и я взглянул на Solr indexConfig по умолчанию, чтобы выяснить, что мне нужно изменить. Поскольку это было в другой версии Sitecore, я не уверен, что точные различия будут такими же для вас.

Хотя все прошло довольно гладко. В основном это изменение типов и ссылок с варианта Lucene на вариант Solr, но убедитесь, что вы также убедитесь, что элементы все те же.

Самым большим изменением будет ваша карта поля. В моем случае это меняется на что-то вроде этого:

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

Итак, у меня есть ссылка на значение по умолчанию (вместо типа), и мне пришлось изменить определения полей на конфигурацию Solr. В вашем случае вам нужно будет только добавить «Значение» в виде строки.

Как уже упоминалось, вы можете найти примеры в конфигурации по умолчанию...

person Gatogordo    schedule 27.06.2017