mysql底层B-tree 支持矮胖,高胖的时候就很难受,说白了就是数据量多会增加IO *** 作。
ES底层倒排索引。term index不需要存下所有的term,而仅仅是他们的一些前缀与Term Dictionary的block之间的映射关系,再结合FST(Finite StateTransducers)的压缩技术,可以使term index缓存到内存中 (有点二级索引的感觉)
一个SELECT查询中的LIKE语句来执行这种查询,尽管这种方法可行,但对于全文查找而言,这是一种效率极端低下的方法,尤其在处理大量数据的时候。
开发者只需要简单地标记出需要全文查找的字段,然后使用特殊的MySQL方法在那些字段运行搜索,这不仅仅提高了性能和效率(因为MySQL对这些字段做了索引来优化搜索),而且实现了更高质量的搜索,因为MySQL使用自然语言来智能地对结果评级,以去掉不相关的项目。
建表:
ALTERTABLE表名ADDFULLTEXTINDEX(表字段)
使用SHOWINDEXES命令来检查索引已经被添加
拥有了数据和索引,就可以使用MySQL的全文搜索了,最简单的全文搜索方式是带有MATCH...AGAINST语句的SELECT查询:
SELECT表字段FROM表名WHEREMATCH(全文搜索表字段)AGAINST('搜索字符串')
最后显示结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)