摘要:
当然,有人会说数据库的索引也可以做到sphinx索引,只是数据结构不一样而已,但是,最大的不同是sphinx就像一张没有任何关系查询支持的单表数据库。而且,索引主要用在搜索功能的实现而不是主要的数据来源。因此,你的数据库也许是符合第三范式的,但索引会完全被非规范化而且主要包含需要被搜索的数据。
另外一点,大部分数据库都会遭遇一个内部碎片的问题,它们需要在一个大请求里遭遇太多的半随机I/O任务。那就是说,考虑一个在数据库的索引中,查询指向索引,索引指向数据,如果数据因为碎片问题被分开在不同的磁盘中,那么此次查询将占用很长的时间。 阅读全文