對於我創建的用戶內容網站,它有很多子部分:電影,工作,人員,照片,郵件等。它就像一個雅虎門戶網站,但非常非常詳細與信息搜索一樣,像每個主題一樣儘可能深入,不像任何網站。我有在密碼學php和mysql中開發的網站。搜索可以在所有子站點和每個子部分都是全球性的,就像我們在谷歌,雅虎上看到的那樣。在我的系統中有22個可能的用戶內容對象,每個對象都有大約12-15個搜索字段,我稱之爲對象元數據+ I,這是我想在搜索中包含的歷史數據(如用戶內容版本控制)。用戶內容全站搜索 - PHP/MySQL
現在的問題是爲每個子部分搜索它似乎是合理的,因爲範圍是有限的,所以我想我可以很好地使用mysql。我沒有預見到任何性能問題。但是,對於網站搜索,它不僅會搜索標題名稱,還會搜索關鍵字,標籤,描述,包括用戶的郵件,評論,歷史數據等。所以我擔心的是性能。由於這是一家初創公司,我的硬件資源有限,所以我必須100%依靠數據庫和代碼來實現它。
那麼從代碼和數據庫的角度來看,實施這樣一個搜索的最佳實踐是什麼?應該根據子站點來使用數據庫的混合?目前一切都存儲在1個mysql數據庫中。但是我發現問題可以很好地適用於人們搜索,電影搜索等,但是如果我包括郵件搜索,地理位置,歷史數據搜索,甚至不得不去搜索諸如照片標籤,照片描述等項目,的全局搜索可能會由於大量的連接和行數而導致性能問題。