Я использую solr5.3.Solr DataImportHandler не индексирует все данные, определенные
Я пытаюсь загрузить страницу статьи Википедии dump в solr, используя «DataImportHandler», но при получении запросов я получаю только файлы идентификаторов и названий.
Ниже мои данные-config.xml
<dataConfig>
<dataSource type="FileDataSource" encoding="UTF-8" />
<document>
<entity name="page"
processor="XPathEntityProcessor"
stream="true"
forEach="/mediawiki/page/"
url="/mnt/TEST/enwiki-20150602-pages-articles1.xml"
transformer="RegexTransformer,DateFormatTransformer"
>
<field column="id" xpath="/mediawiki/page/id" />
<field column="title" xpath="/mediawiki/page/title" />
<field column="revision" xpath="/mediawiki/page/revision/id" />
<field column="user" xpath="/mediawiki/page/revision/contributor/username" />
<field column="userId" xpath="/mediawiki/page/revision/contributor/id" />
<field column="text" xpath="/mediawiki/page/revision/text" />
<field column="timestamp" xpath="/mediawiki/page/revision/timestamp" dateTimeFormat="yyyy-MM-dd'T'hh:mm:ss'Z'" />
<field column="$skipDoc" regex="^#REDIRECT .*" replaceWith="true" sourceColName="text"/>
</entity>
</document>
</dataConfig>
Также я добавил ниже заходы в Schema.xml.
<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="title" type="string" indexed="true" stored="false"/>
<field name="revision" type="int" indexed="true" stored="true"/>
<field name="user" type="string" indexed="true" stored="true"/>
<field name="userId" type="int" indexed="true" stored="true"/>
<field name="text" type="text_en" indexed="true" stored="false"/>
<field name="timestamp" type="date" indexed="true" stored="true"/>
<field name="titleText" type="text_en" indexed="true" stored="true"/>
Я скопировал schema.xml из "пример/пример-DIH/Solr/Solr/CONF/schema.xml" и удалить все записи поля с несколькими исключениями, как указано в комментариях.
После импорта данных я просто пытаюсь получить все поля, но получаю только «ИД» и «Название».
Также я попытался запустить documentImport, используя режим отладки, чтобы получить некоторую информацию об индексировании, но когда я выбираю режим отладки, он импортирует только 2 документа. Я не уверен, почему? По этой причине я не могу отлаживать процесс индексирования.
Прошу вас, пожалуйста, проинструктировать меня.
EDIT - теперь я уверен, что другие поля не индексируются, потому что когда я указываю df = пользователь или текст, я получаю ниже сообщения.
"MSG": "не определено пользователем поля",
Я запрашивая, как показано ниже: http://localhost:8983/solr/wiki/select?q=% 3A & фл = ID% 2Ctitle% 2Ctext% 2Crevision & мас = JSON & indent = true & debugQuery = true
Полностью ли эти два документа, индексированные в режиме отладки? – MatsLindh
да .. они полностью индексируются. Фактически я использую режим отладки, чтобы проверить, почему не все данные индексируются? – virus
Вы перезагрузили ядро или перезапустили Solr после изменения схемы? – MatsLindh