mysql 关键词 模糊查询 若干问题,求有经验的帮忙解答

发布于 2022-09-12 22:15:35 字数 782 浏览 42 评论 0

前言:由于初学没有相关方面的经验,在做项目的时候碰到了一些问题一直没找到解决办法,希望各位不吝赐教,感谢!

现有php+mysql外贸项目,数据量大概在20-30万。
其中A表,有3个字段-----B表,有1个字段需要查询。
现在需要前端在搜索关键词方面查询俩表总共4个字段。

条件:这4个字段属于字符串字段,中英文和数字都有。
疑问:
1:这个数据量mysql本身就能顶住还是需要用到<span class="colour" style="color:rgb(51, 51, 51)">Elasticsearch之类的搜索框架?</span>
<span class="colour" style="color:rgb(51, 51, 51)">2:如果用到搜索框架,因为4个字段属于字符串字段,又是专业性比较强的多语言文字,分词会不会出现不精确的情况?</span>
<span class="colour" style="color:rgb(51, 51, 51)">3:如果不用分词,改用模糊搜索,是用mysql还是搜索框架?</span>
<span class="colour" style="color:rgb(51, 51, 51)">4:如果用mysql是多表多字段联合查询?还是单独建立个表来集合这四个字段的数据再来搜索?</span>

我不是伸手党,请大家给个思路或者建议供我研究,毕竟没有经验谢谢!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

路弥 2022-09-19 22:15:35

1、二三十万的话,MySQL 还是可以顶住的,MySQL 也支持分词,当然,如果使用 es 更佳了。
2、使用 es 你可以自己创建分词器,不一定使用现有的中文分词。
3、都可以,但是 MySQL 会慢
4、均可,差别不是很大,不过你可以创建一个视图来集合这4个字段,不用单独创建表

推荐使用 es

野稚 2022-09-19 22:15:35

几十万数据mysql还是可以的,只要你的sql不是一层层的嵌套就可以~
但是如果有时间研究的话,我还是建议你用es,因为es是真的很快,而且es对后期的扩展(日志等等)支持的都非常的好

无可置疑 2022-09-19 22:15:35

用不用es取决两个方面,一个是业务的数据增长速度,一个是TPS的需求。如果都不高,这个情况最快的方式就是mysql的like查询。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文