【java】小明要做一个非常大(TB级)的题库,如何实现高效查询??

假如你是公司甲的一名员工小明,现在公司打算做一个题库系统项目,要求用户在输入关键词(或者题目描述,一句话)时尽可能快的返回与关键词(或者描述)相匹配的前5条题目和答案,如果您作为项目的负责人,请问您会如何进行技术选择。

redis(缓存)[需要考虑缓存击穿缓存雪崩]
es(高效查询)

前端也可考虑缓存

 

可以考虑用elasticsearch

您好,我是有问必答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

谢谢各位大佬的回答,

我简单总结一下,

1. 如果是TP级别的数据,要考虑到分布式架构,采用redis作为中间件,实现分布式锁,可以保证分布式数据的同步性。

2. 而采用elasticsearch 则可以保证数据的高效查询,具体的查询可以通过分布式的思想,将查询任务交给不同的数据存储服务器,之后将不同服务器查询到的信息进行综合,得出返回的结果。

大家觉得对吗?