2013-08-06 71 views
2

我使用Neo4j作爲數據庫嵌入。我必須每天存儲數以千計的文章,而且我需要提供搜索功能,以便我應該返回內容與用戶輸入的關鍵字匹配的文章。我索引每篇文章的內容,並索引下面的索引Neo4j - 用Lucene查詢

val articles = article_content_index.query("article_content", search string) 

這工作正常。但是,當搜索字符串中包含常見單詞,比如「the」,「a」等等,這會在每篇文章中出現時花費很多時間。

我該如何解決這個問題?

回答

1

您可以將article_content_index配置爲全文索引,請參閱http://docs.neo4j.org/chunked/stable/indexing-create-advanced.html。要切換到使用全文索引,首先必須刪除索引,IndexManager.forNodes(String, Map)的第一個用法需要正確配置創建索引。

+0

上午已經在使用全文索引( 「article_content」,有些(地圖(「供應商「 - >」lucene「,」type「 - >」fulltext「))) – yAsH

+0

考慮指定一個特殊的分析器,以防止索引中出現'the','a'等詞語。 Lucene文檔應該給出一些提示。 –

+0

在這種情況下,如果搜索字符串只是「the」或「a」,我不會得到任何結果! – yAsH