如果您有一个等式x + y = z
并且您对z
感兴趣。更好的做法是单独存储z
或仅存储x
和y
,然后在需要时计算z
?
例如,假设我想计算汽车从起点到任何其他时间点的温室气体排放量。我需要每公里的尾气温室气体排放量以及汽车行驶的距离。
GHG = distance in km * GHG per km
我是否存储距离然后生成温室气体排放量(距离总和*每公里温室气体排放量)还是计算后计算增量温室气体排放量?
答案 0 :(得分:0)
这完全取决于您的需要。但是当您使用不同的数据库系统/服务时会出现一些问题。
如果您使用自己的数据库(您自己的服务器/机器上的 SQL/MongoDB 等),您可以存储原始数据并按需计算它们,这样您将始终能够对原始数据执行任何操作.
但是当您将数据库用作 Firebase 或 Mongo Atlas 之类的服务时,您必须为您拥有的每个进程付费。因此,如果只在最后使用结果计算,最好将计算结果存储起来。
关于流行数据库服务的一些说明:
Firebase:当您使用它时,唯一的选择是存储计算结果,因为您无法在此系统上进行计算查询。
Mongo Atlas:该系统为您提供了对查询的计算能力,例如您可以进行查询以查找所有文档,然后执行此公式:[field3 = fieldA+Field2],然后得到结果。但您必须为计算过程付费,每次进行查询时,您都需要为此付费。