2013-02-26 62 views
1

我們有一個使用postgres數據庫的應用程序,它有大約50個表格。每個表格包含大約3百萬條記錄(平均)。現在和以後,表格都會隨新數據一起更新。現在,我們希望在我們的應用中實現搜索功能。搜索需要一次在一張桌子上執行(不需要連接)。現有的Postgres數據庫vs Solr

我已閱讀關於postgres全文支持,看起來很有希望。但似乎Solr與它相比是超快的。我可以將現有的postgres數據庫與Solr一起使用嗎?如果表得到更新,我需要重新索引一切嗎?

回答

2

絕對值得給Solr一個嘗試。我們移動了許多涉及多個表上的JOIN的MySQL查詢,並在不同的字段上對Solr進行排序。我們對Solr的搜索速度,分類速度,刻面功能和高度可配置的文本分析/標記化選項感到非常滿意。

If tables get updated would I need to re-index everything again?

沒有,你可以運行增量導入到只能重新索引你的新的和更新的文件。見https://wiki.apache.org/solr/DataImportHandler

開始使用https://lucene.apache.org/solr/4_1_0/tutorial.html及其中的所有鏈接。

1

由於沒有人進入,我會回答。

恐怕這一切都要看情況。這取決於(至少)

  • 有多大的文本是每個「文檔」
  • 你想如何靈活的搜索是在
  • 多少集成,您的數據庫和文本搜索
  • 之間需要
  • 有多快是夠快
  • 你有多少經驗既

當我有需要一些文本搜索的數據庫,我只是用d PG的內置選項。如果我沒有對數據庫的超級用戶訪問權限,或者已經在運行一個大的Java安裝程序,那麼Solr可能已經上訴了。