2012-05-17 180 views
4

我正試圖優化我的搜索引擎。現在,我在用戶輸入的搜索詞和存儲在數據庫中的關鍵字之間運行strcmp。我試圖想出一種方式,以便用戶搜索詞與搜索結果中顯示的關鍵字越早匹配。優化我的搜索引擎

例如,如果用戶搜索「紅蘋果繪畫」,並且我爲該項目使用以下關鍵字兩個條目1.「舊蘋果繪畫綠色」2.「蘋果繪畫紅色紐約」我想第二個條目在搜索結果中首先出現,因爲所有用戶搜索詞都是在存儲在db中的關鍵字中找到的。

任何幫助我如何實現這一目標?

回答

5

看看full text search

您可能還想考慮外部文本搜索引擎,如LuceneSphinx

+0

我只是打字回答說他應該看全文搜索或其他現有的工具,如Lucene的... +1 – Jeroen

1

您需要創建單詞索引。該索引將包含詞彙ID,文檔ID,匹配數量,匹配位置。然後搜索者將能夠像你想要的那樣給出結果。市場上有免費的索引工具。但如果你想開發自己的,然後按照原始紙BT谷歌創始人 - http://infolab.stanford.edu/~backrub/google.html