我对Solr非常陌生,所以我认为我有一些非常明显的错误。
我已经配置了一个核心来从名为db.podcast的数据库表中导入一些字段。我正在使用DIH来做到这一点。我从这张桌子拿了4个字段:
podcast_id, podcast_desc, podcast_name, podcast_keywords
这似乎进展顺利,数据被添加到索引中。
但是,当我在模式浏览器中检查字段中的术语信息时,它似乎没有正确地索引字段。而不是将所有podcast_desc分解为单个单词,而只是给我整个描述。
即。我期待它像这样的列表:
201 A
196 The
185 Then....
相反,我得到一个这样的列表(我添加了点以节省空间:)):
1 A show on political economy and historical analysis....
Filling in the gaps left open in the official....
Carpenter Science Lab Videos...
我的schema.xml如下所示:
<types>
<fieldtype name='text' class='solr.TextField' >
<analyzer type="index" >
<charFilter class="solr.HTMLStripCharFilterFactory" />
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt" />
<filter class="solr.LowerCaseFilterFactory" />
</analyzer>
</fieldtype>
<fieldtype name='int' class='solr.TrieIntField' />
</types>
<fields>
<field name='podcast_id' indexed="true" stored="true" type='int' required="true"/>
<field name='podcast_name' indexed="true" stored="true" type='text' />
<field name='podcast_desc' indexed="true" stored="true" type='text' />
<field name='podcast_keywords' indexed="true" stored="true" type='text' />
</fields>
<uniqueKey>podcast_id</uniqueKey>
我的DIH文档实体如下所示:
<entity name="podcast" query="select podcast_id, podcast_name, podcast_desc, podcast_keywords from db.podcast"
deltaQuery="select podcast_id from db.podcast where last_modified > '${dataimporter.last_index_time}'"
deltaImportQuery="select podcast_id, podcast_name, podcast_desc, podcast_keywords from db.podcast where podcast_id='dataimporter.delta.podcast_id'">
</entity>
任何想法都出错了?我以为我读到某个地方,只有当我使用'字符串'而不是'text'字段类型时才会发生这种情况?
更新1:
以下是来自DIH更新的日志 - 看起来它没有处理任何文档。有什么想法会发生这种情况吗?
<response>
<lst name="responseHeader">
<int name="status">0</int>
<int name="QTime">465</int>
</lst>
<lst name="initArgs">
<lst name="defaults">
<str name="config">podcastDIHconfigfile.xml</str>
</lst>
</lst>
<str name="command">delta-import</str>
<str name="status">idle</str>
<str name="importResponse"/>
<lst name="statusMessages">
<str name="Total Requests made to DataSource">22</str>
<str name="Total Rows Fetched">21</str>
<str name="Total Documents Processed">0</str>
<str name="Total Documents Skipped">0</str>
<str name="Delta Dump started">2016-01-06 16:14:35</str>
<str name="Identifying Delta">2016-01-06 16:14:35</str>
<str name="Deltas Obtained">2016-01-06 16:14:36</str>
<str name="Building documents">2016-01-06 16:14:36</str>
<str name="Total Changed Documents">21</str>
<str name="Time taken">0:0:0.368</str>
</lst>