我们需要针对用户个人资料为我的社交网站实施搜索过滤器(类似于Net-log),对个人资料的过滤包括年龄范围,性别和兴趣我们在MySQL上运行大约1M个配置文件,MySQL似乎不是实现这些过滤器的正确选择,所以我们也在考虑Cass...
我们需要针对用户个人资料为我的社交网站实施搜索过滤器(类似于Net-log),对个人资料的过滤包括年龄范围,性别和兴趣
我们在MySQL上运行大约1M个配置文件,MySQL似乎不是实现这些过滤器的正确选择,所以我们也在考虑Cassandra,
那么实现这种过滤器的最佳方法是什么,结果需要非常快
例如年龄= 18-24岁,性别=男性和兴趣=足球
年龄,性别和兴趣是varchar
编辑:
让我重新解释一下这个问题,我怎样才能获得任何类型搜索的最快结果.
它可以基于配置文件名称,也可以是1M配置文件记录中的任何其他配置文件.
谢谢
解决方法:
它可以很好地为您的项目提供基础SQL更改.您可能需要考虑将Interest列从自由输入字段(varchar)更改为标记(例如,附加表上的多对多).
你使用了足球的例子并且有一个类似的运算符.如果您将其更改为标记,那么您将遇到决定放置位置的初始结构问题:
football
Football
American Football
Australian-rules football
但是,一旦你这样做了,标签将帮助你的选择语句更快.
如果没有这种更改,您将把数据管理问题从数据库(配备处理它)推送到Java(可能不是).
本文标题为:mysql – 在java中实现搜索过滤器
- Java聊天室之使用Socket实现通信功能 2023-06-17
- cascade级联关系操作案例详解 2023-03-11
- Java实现自定义Excel数据排序的方法详解 2023-05-19
- SpringBoot自定义bean绑定实现 2023-06-17
- jar包打包成exe安装包的实现 2023-03-15
- Spring Data Jpa框架最佳实践示例 2022-11-01
- Spring Boot框架中的@Conditional注解示例详解 2023-05-18
- java 安全 ysoserial CommonsCollections6 分析 2023-06-30
- Spring配置数据源流程与作用详解 2022-09-03
- 深入了解Java线程池:从设计思想到源码解读 2023-08-07