【发布时间】:2011-05-14 23:53:32
【问题描述】:
在这么多字符中搜索最有效的方法是什么?你怎么看?
假设网站是用 PHP 和 MySQL 构建的。
我应该学习什么才能尽可能高效地构建它?有什么我应该学习的算法吗?
【问题讨论】:
-
拥有博士学位的高薪工程师,而且很多。
在这么多字符中搜索最有效的方法是什么?你怎么看?
假设网站是用 PHP 和 MySQL 构建的。
我应该学习什么才能尽可能高效地构建它?有什么我应该学习的算法吗?
【问题讨论】:
【讨论】:
Google 使用名为 BigTable 的定制数据库解决方案 http://en.wikipedia.org/wiki/Big_table,该解决方案在全球数百台服务器上运行。所以他们的速度很快,因为他们专门编写了快速的软件,并以可以充分利用硬件的方式设置硬件。
您可以使用 PHP 和 MySQL 获得一个不错的集合,但是一旦您开始处理非常大的数据集,MySQL 和任何其他通用数据库将开始在压力下崩溃。如果您想了解更多相关信息,一个好的起点是搜索数据库设计中的并发性(在http://en.wikipedia.org/wiki/Concurrency_control 等中进行了简要说明),这是一个太大而无法在stackoverflow 回复中涵盖的主题=)
【讨论】:
Google 不仅仅是优化数据库和代码。他们还做了很多分布式编程。虽然他们用于为 Gmail 等系统提供动力的确切机制是保密的,但众所周知,他们拥有联网的整个计算机群,每台计算机在任何给定时间都在索引的一部分上工作,而不仅仅是一台服务器。
【讨论】:
对于 MySQL,请查看 Full-Text Search Functions。
这是假设您的内容存储在数据库中(例如在 CMS 中)。
【讨论】: