我有一个包含20,000条记录的数据库。每条记录都有一个名字。当用户想要查看记录时,他可以访问webapp并在输入字段中键入记录的名称。在键入时,数据库的结果将显示/过滤用户键入的内容。我想知道如何编程的基本架构/概念
我正在使用以下语言堆栈: 前端:html5 / javascript(+ ajax在用户输入时进行即时通话) 后端:java + jdbc连接到简单的sql数据库
我最初的想法是:
我的两个问题是:需要处理大量的ajax请求,以及可能非常繁重的LIKE查询。有什么方法可以优化这个?只搜索他们输入/删除的每两个字符?只查询前十个结果?
您知道利用这些优化的网站吗?
注意:假设记录是人,姓名就像真人姓名,所以有些名字比其他人更常见。
答案 0 :(得分:2)
您可以选择SPA方法 - 将所有20 000个名称/ ID加载到客户端,然后在内存中过滤 - 它应该是最快的方式,对数据库的负载最小,并且返回端
答案 1 :(得分:1)
以下是可能的解决方案: