【问题标题】:Android: Redundancy in the DB or runtime computation?Android:数据库或运行时计算中的冗余?
【发布时间】:2017-03-20 12:23:45
【问题描述】:

我注意到有一些相关的问题,但没有找到任何与 Android 相关的问题。

我正在构建一个 Android 应用程序并在开发我的数据库架构时,我不确定我是否应该在数据库中存储一些数据并在每次相关更改后对其进行更新,或者将冗余保持在最低限度并实时计算数据。

哪个选项更适合 Android 应用?

一个小例子:一个包含类别和项目的应用。如果这些项目是某个类别的一部分,则这些项目具有某些加起来的积分。每个类别的总和应该从所有分配的项目中实时计算还是存储在类别表中并随着项目的每次插入/删除而更新?

【问题讨论】:

  • 这取决于表的大小以及更新频率与读取汇总数据的频率。
  • 在每次插入/删除项目时更新如果仅插入或删除,我更喜欢这个。但在应用程序中,这只是假设情况,可能有来自多个来源的多个更新引用同一个对象。是的,这个问题太宽泛了,所以答案也会很宽泛。

标签: android android-sqlite redundancy


【解决方案1】:

问题值得吗?完全取决于数据库的使用情况。

考虑以下几点来决定你应该做什么。

如果计算很长,则值得保存以供以后阅读。

  • 您的阅读量是多少?多久一次?

如果计算时间很短,那么计算量就会很小,你甚至不会注意到。

  • 计算总和有多难?每次计算都计算成本高吗?

在移动应用程序中,通常不会有大量数据,出于显而易见的原因,数据库通常不会达到数百万,这在服务器中很常见。

您可以提供更多详细信息,以便我们更好地指导您。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 1970-01-01
    • 2021-10-13
    相关资源
    最近更新 更多