如何提高过滤速度?

qkf9rpyu  于 2021-07-24  发布在  Java
关注(0)|答案(3)|浏览(322)

我有一个java+react+mysql数据库应用程序,可以显示不同城市的对象。可以为每个城市显示对象。
过滤是java方面的
React侧分页
我有一个小问题,它需要长达9秒的时间来显示所有的对象在前面的大城市。如何提高过滤速度?我读到的一个想法是将数据库划分为城市,在基础上创建过滤,并通过jpa创建分页。这个解决方案工作量很大,有没有其他办法提高过滤速度(改变基础不是一个选项)

voase2hg

voase2hg1#

你可以在缓存设计中存储数据 KEY | VALUE 一对。城市将成为关键,对象列表将成为价值,这样获取将具有o(1)复杂性。

3hvapo4f

3hvapo4f2#

它完全取决于您的框架及其缓存机制,但一般来说,它是这样的:
尽可能减少数据库级别的结果集(检查sql查询/连接/使用更好的选择性标准/查看查询解释计划/检查索引/统计信息等)
使用批处理获取结果(如何从java中以相等的批处理从oracle中批量获取数据)
查询结果应该基于您的框架和应用程序在java级别缓存。架构(microservice、monolith、bloody jee等)
将缓存的数据返回到前端

zazmityj

zazmityj3#

你可以尝试矢量化,这个过程可以减少时间,java中有很多库,你可以在这里阅读更多

相关问题