Пользовательское поле Solr 5 и фильтр

Я новичок в solr. После того, как я попытался использовать клиент Solr 5. Я хочу попробовать исходный код Solr 5. Итак, мои вопросы,

  1. Могу ли я создать настраиваемое поле для своего собственного ядра на solr 5, отредактировав schema.xml? если возможно, скажите мне местоположение (его не было в моей папке conf, я должен создать новую?).
  2. Есть ли другой способ добавления настраиваемого поля, кроме использования схемы API?
  3. Каждый раз, когда я пытаюсь создать новое ядро, а затем индексировать файлы, в моей папке conf есть только currency.xml, elevate.xml, managed-schema (сгенерированная схема), params.json, protwords.txt, solrconfig.xml, stopwords.txt synonyms.txt, а schema.xml нет. Я что-то пропустил?
  4. Есть ли какой-нибудь простой учебник, чтобы объяснить пользовательский фильтр на solr 5?

Я действительно ценю ваш ответ. Спасибо


person donthurtme    schedule 05.06.2015    source источник


Ответы (2)


Когда вы создаете ядро ​​​​в Solr 5, оно по умолчанию поставляется с активным режимом без схемы. В этом режиме схема solr не видна, и все изменения необходимо вносить с помощью API схемы. Если вы хотите управлять схемой самостоятельно, вы можете переименовать managed-schema в schema.xml и изменить solrconfig.xml, чтобы не использовать режим без схемы. В solrconfig.xml заменить

 <schemaFactory class="ManagedIndexSchemaFactory">
   <bool name="mutable">true</bool>
   <str name="managedSchemaResourceName">managed-schema</str>
 </schemaFactory>

by

 <schemaFactory class="ClassicIndexSchemaFactory"/>

Теперь solr будет использовать schema.xml под вашим управлением.

Единственными обязательными файлами конфигурации для использования являются solrconfig.xml и в вашем случае schema.xml. Остальные файлы используются только в том случае, если вы с их помощью настроите какие-то фильтры. Если вы используете пример schema.xml, возможно, вам нужны все эти файлы. Но очистите файлы конфигурации, чтобы в них были только те поля и типы полей, которые вы действительно ожидаете использовать.

Чтобы узнать больше о фильтрах, токенизаторах и анализаторах, посетите страницу https://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters.

person Bruno dos Santos    schedule 06.06.2015

  1. да
  2. Насколько мне известно, редактирование схемы вручную и использование API — это только два способа.
  3. Как именно вы создаете это ядро? Вы используете install_solr_service.sh? Предполагая, что это система Linux, проверьте папку /var/solr/configs. Вот где находятся файлы конфигурации, если вы запустили этот скрипт.
  4. Ну конечно; естественно :) . https://cwiki.apache.org/confluence/display/solr/Apache+Solr+Reference+Guide Существует раздел «Начало работы», который должен ответить на все ваши вопросы, в том числе о том, где хранятся конфиги, как их использовать и т. д.

Удачного поиска!

person jay    schedule 05.06.2015
comment
спасибо за ответ, теперь я прошел схему. Теперь я хочу добавить пользовательский фильтр для своего поля. Скажем, во время индексации я хочу проверить, содержит ли элемент слово. Я уже решил использовать стандартный токенизатор. Есть ли у solr учебник по этому поводу? Я уже проверил этот solr. pl/en/2013/02/04/developing-your-own-solr-filter-part-2, но я не мог понять код - person donthurtme; 05.06.2015