2010-06-07 71 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这样的工具。