我有一个fileSystem数据源,我已经创建了一个dataconfig来运行DIH dataconfig是
<?xml version="1.0" encoding="UTF-8"?> <dataConfig> <dataSource type="FileDataSource" /> <document> <entity name="pdf" processor="FileListEntityProcessor" baseDir="/path/to/my/pdf" fileName=".*pdf" newerThan="'NOW-3DAYS'" recursive="true" rootEntity="false" dataSource="pdf"> </entity> </document> </dataConfig>
当我运行DIH时,它给出了 索引已完成。添加/更新:0个文件。删除了0个文件 请求数:0,提取:35924,跳过:0,已处理:0
知道为什么它没有处理任何文件?
答案 0 :(得分:1)
您的配置中没有root实体;你只有一个实体,并且它有rootEntity =“false”,因此不会从中创建任何文件。
您还需要定义一些 实体内的“字段”行,用于将文件信息映射到架构中的字段;这个问题indexing all documents in doc folder in to solr FileListEntityProcessor做了类似于你需要的事情。
答案 1 :(得分:1)
谢谢,我做到了,下面是所需的dataconfig
<?xml version="1.0" encoding="UTF-8"?> <dataConfig> <dataSource type="BinFileDataSource" /> <document> <entity name="pdf" processor="FileListEntityProcessor" baseDir="/path/to/my/pdf" fileName=".*pdf" newerThan="'NOW-3DAYS'" recursive="true" rootEntity="false" dataSource="null"> <field column="fileAbsolutePath" name="id" /> <entity name="documentImport" processor="TikaEntityProcessor" url="${pdf.fileAbsolutePath}" format="text"> <field column="text" name="text"/> </entity> </entity> </document> </dataConfig>