2010-06-07 47 views
2

我有innoDB表使用衆多的外鍵,但我們只是想查找一些基本的信息。探索PHP的搜索選項

我已經做了一些研究,但仍然失敗。

  1. 如何判斷我的主機是否已安裝Sphinx ?我沒有看到它作爲表格存儲 方法(即innodb,myisam)的選項 。

  2. Zend_Search_Lucene,響應 足夠用於AJAX功能的 百萬條記錄?

  3. 鏡像我的 innoDB與myisam?讓每個 innodb事務以myisam的寫入 結束,然後使用1:1查找? 我該如何自動完成此操作? 這應該使MyISAM ACID兼容和免費(er) 腐敗沒有?
  4. PostgreSQL的全文 查詢連看都不看像SQL來 我跆拳道,我沒有時間去學習一個新的 SQL語法,我需要小白選項

  5. ???????? ????????????

這是一個體面配備VPS

非常感謝您的任何想法高容量的網站。

+1

請更具體一些。你在尋找全文搜索嗎?如果是這樣,在一個列?多列?你需要支持運營商,鄰近搜索等嗎?你有足夠的訪問權限來安裝第三方工具嗎? – 2010-06-07 16:06:22

+0

我想我想全文搜索「title」和「body」字段。我想要的是行業標準選項,包括根據相關性和分數進行排序(如果可能)。我厭倦了MyISAM腐敗,因爲這個DB上有許多併發事務。是的,我可以安裝第三方工具。 – y2k 2010-06-07 16:08:36

+0

然後獅身人面像是它,一路。我正在upvoting @ vartec的答案。 – 2010-06-07 16:10:13

回答

2

斯芬克斯是非常好的選擇。非常可擴展,built-in clustering and sharding

+0

經過一段小小的學習曲線,獅身人面像永遠不會讓我失望或讓我失望 - 只要確保您對文檔友好。 – 2010-06-07 16:11:28

+0

我正在閱讀文檔,很困惑,這只是一個插件或新的存儲表類型或什麼。一旦安裝,我可以在innoDB表上使用MyISAM語法全文查找?另外,如何告訴/測試它是否已經安裝(如從phpMyAdmin,cpanel或linux shell)。 – y2k 2010-06-07 16:13:59

+0

@Joshua,不,Sphinx索引現有表(InnoDB,MyISAM,無所謂,你實際上提供了SQL)。然後你對搜索引擎進行搜索查詢。它返回來自數據庫的對象的ID。 這是更先進/複雜,然後只是MySQL的插件。 – vartec 2010-06-07 16:18:24

2

你的問題對你實際想要在這裏完成的事情很模糊,但是我可以告訴你遠離Zend_Search_Lucene,記錄數很高。根據我的經驗(包括許多其他人,包括Zend認證工程師),ZSL在大型唱片上的表現最差。如果你走這條路線,可以使用像Apache Lucene這樣的工具。