
不推荐代替数据库哦~
ES团队不推荐完全采用ES作为主要存储,缺乏访问控制还有一些数据丢失和污染的问题
建议还是采用专门的 DB存储方案,然后用ES来做serving。
es没有事务,而且是近实时。成本也比数据库高,几乎靠吃内存提高性能。最逆天的是,mapping不能改。
一个SELECT查询中的LIKE语句来执行这种查询,尽管这种方法可行,但对于全文查找而言,这是一种效率极端低下的方法,尤其在处理大量数据的时候。
开发者只需要简单地标记出需要全文查找的字段,然后使用特殊的MySQL方法在那些字段运行搜索,这不仅仅提高了性能和效率(因为MySQL对这些字段做了索引来优化搜索),而且实现了更高质量的搜索,因为MySQL使用自然语言来智能地对结果评级,以去掉不相关的项目。
建表:
ALTERTABLE表名ADDFULLTEXTINDEX(表字段)
使用SHOWINDEXES命令来检查索引已经被添加
拥有了数据和索引,就可以使用MySQL的全文搜索了,最简单的全文搜索方式是带有MATCH...AGAINST语句的SELECT查询:
SELECT表字段FROM表名WHEREMATCH(全文搜索表字段)AGAINST('搜索字符串')
最后显示结果
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)