2017-06-13 94 views
1

結果我是新的Solr的,並試圖索引數據庫使用Solr 6.5.1 + PostgreSQL的。Apache Solr實現DataImport成功,但沒有從查詢

最後,它看起來成功索引數據庫。

DataImport屏幕顯示

 
Indexing completed. Added/Updated: 0 documents. Deleted 0 documents. (Duration: 21m 13s) 
Requests: 1 , Fetched: 19,736,915 15,504/s, Skipped: 0 , Processed: 0 
Started: about an hour ago 

但是沒有什麼是顯示在查詢窗口,當我按下「執行查詢」按鈕。

{ 
"responseHeader":{ 
"status":0, 
"QTime":0, 
"params":{ 
    "q":"*:*", 
    "indent":"on", 
    "wt":"json", 
    "_":"1497333923963"}}, 
    "response":{"numFound":0,"start":0,"docs":[] 
}} 

我的數據庫配置(DB-數據-config.xml中)是像如下。

<dataConfig> 
    <dataSource driver="org.postgresql.Driver" url="jdbc:postgresql://xxx.xx.xxx.xx:5432/xxxxx" user="xxxxx" password="xxx" /> 
    <document> 
    <entity name="pubmed" query="select pmid, article_title, abstract from pubmed_xml"> 
     <field column="pmid" name="pmid" /> 
     <field column="article_title" name="article_title" /> 
     <field column="abstract" name="abstract" /> 
    </entity> 
    </document> 
</dataConfig> 

你們能給我一些技巧來解決這個問題嗎?

預先感謝您。

回答

0

如果你檢查你的Schema.xml文件,你會看到一個條目,如下所示:<uniqueKey>id</uniqueKey>。這將solr字段id定義爲索引中所有文檔必需的唯一字段。如果您想使用不同的字段,請更改uniqueKey條目並確保該架構中定義了特定字段(您的案例中爲pmid)。

0

無論如何,我找到了解決辦法來解決它。

我改了名字「PMID」以這樣的「身份證」。

,它工作正常。 似乎'id'被用作solr配置中的索引鍵。

請讓我知道誰知道原因。

謝謝。