DBMS 和视图优化



DBMS 是否可以通过仅在修改支持视图的数据时才执行定义视图的查询来优化对视图的访问,而不是每次查询视图本身?

编辑SQLite for Android怎么样?

Delamere,

问题的答案在很大程度上取决于您对视图、数据库查询和基础结构的实现。从本质上讲,核心问题是数据的性质以及需要重新查询的频率。

在我的一些已发布的应用程序中,我有仅在窗口获得焦点时需要查询的数据。在这些情况下,将调用简单的手动刷新。这些通常是原子查询,这意味着它们是极小的数据量。使用这种方法,我将许多应用程序及其数据桥接在一起,形成一个有凝聚力的几乎即时的查询。

在其他情况下,数据经常更改,但可以预测。在这些情况下,减少查询数会适得其反,但绑定观察器也是无效的。

最后,在几种情况下,数据会不规则地变化,并且变化量是不可预测的。在这些情况下,最佳解决方案是利用观察器。这将确保仅运行需要运行的查询。适配器更新后,视图将立即更新。

关于你的问题,最后一个场景(我认为)传达了你在问什么。简而言之,答案是肯定的。*但是... *指的是前两种情况。要为自己确定最佳解决方案,您需要了解以下答案:

  1. 您在任何给定时间查询多少数据?

  2. 这些数据多久会更改一次?

  3. 在您的应用运行时它会更改吗?

获得这些问题的答案后,您可以相应地调整解决方案。如果没有更多信息,这是您可能会收到的指导范围。我还强烈建议您,如果您不熟悉基本的数据库工程概念,请熟悉规范化、关系模型和索引的概念。深入了解这些可以大大提高数据库、应用和相应视图的性能。

希望这有帮助,

模糊逻辑

最新更新