2016-06-04 2 views
1

Привет У меня есть следующий файл CSVSolr DIH regextransformer - обрабатывает только один CSV линии

132 1536130302256087040 
133 1536130302256087041 
134 1536130302256087042 

поля разделяются табуляцией. Теперь у меня есть Dataimporthandler (DIH) для solr, и я пытаюсь импортировать CSV в solr, но я получаю только первую строку в solr. То результат, но другие строки из CSV отсутствуют:

"response": { 
    "numFound": 1, 
    "start": 0, 
    "maxScore": 1, 
    "docs": [ { 
     "string": "1536130302256087040", 
     "id": "132", 
     "_version_": 1536202153221161000 
     } ] } 

Вот мои данные-config.xml

<dataConfig> 
<dataSource type="FileDataSource" encoding="UTF-8" name="fds"/> 
    <document> 

    <entity name="f" 
    processor="FileListEntityProcessor" 
    fileName="myfile.csv" 
    baseDir="/var/www/solr-5.4.0/server/csv/files" 
    recursive="false" 
    rootEntity="true" 
    dataSource="null" > 

    <entity 
    onError="continue" 
    name="jc" 
    processor="LineEntityProcessor" 
    url="${f.fileAbsolutePath}" 
    dataSource="fds" 
    rootEntity="true" 
    header="false" 
    separator="\t" 
    transformer="RegexTransformer" > 

    <field column="id" name="id" sourceColName="rawLine" regex="^(.*)\t"/> 
    <field column="string" name="string" sourceColName="rawLine" regex="\t(.*)$"/> 

      </entity>    
     </entity> 
    </document> 
</dataConfig> 

Вот мой schema.xml

<field name="id" type="text_general" indexed="true" stored="true" multiValued="false" required="true"/> 
<field name="string" type="text_general" indexed="true" stored="true" multiValued="false"/> 
<field name="_version_" type="long" indexed="true" stored="true"/> 

<uniqueKey>id</uniqueKey> 

Что Я поступаю неправильно?

ответ

2

У вас есть rootEntity = true для обоих уровней сущностей. Таким образом, вы получите только один документ для внешнего объекта. Попробуйте установить для внешнего уровня rootEntity значение false.

Кроме того, вы можете просто отправить файлы с разделителями-разделителями в Solr с помощью CSV processor, не требуя DIH.

Смежные вопросы