2

我有一个问题,我有很多数据要绘制。图表的设置使得最初只绘制少量点,但您可以“放大”以获得特定日期范围的更多点(这通过对 Java 后端的 AJAX 请求发生)

我已经想到了两种方法,并希望得到一些反馈,说明哪种方法可能更有效:

  • 只需对具有相关日期范围的每个请求执行新的 sql 查询或
  • 将所有日期范围的所有记录预加载到我的 Java 框架中的 ORM 类中。将这些添加到二叉搜索树中。然后当用户提出请求时,只需执行二分查找。

我假设数据库已经有某种基于树的索引,但是通过第二种方法,我可以避免重复 db 调用的开销。谢谢你的帮助!

4

1 回答 1

2

最好的观察方法是分析这两种解决方案,但我的直觉是你的 DBMS 会比你做的快得多。DBMS 专门设计用于非常快速地处理这样的查询。他们的优化器可能比你在 Java 中实现的要好。

这是假设您的数据库已正确配置和优化以处理您描述的查询。我怀疑重复数据库调用的成本不足以抵消 DBMS 的性能。

让 DMBS 进行这种搜索也更简洁,因为它最大限度地减少了您需要自己编写的代码。

同样,确定的最佳方法是快速制作解决方案和配置文件的原型。

于 2012-08-23T19:26:19.793 回答