如何确定更昂贵的资源,写入/读取或计算

问题描述 投票:0回答:1

我刮掉了库存数据。我刮了下面的话:

opening pricestock pricevolume tradedshares in issue

我刮的网站也有一些其他衍生数量。通过推导,我的意思是这些可以从上面的数量计算出来。这些包括:

value tradedmarket capprice change

虽然后者可以被抓到我的数据库然后稍后读出,但我也可以编写在需要时动态计算它们的方法。因此,我可以只使用类似的方法,而不是将它们写入数据库并稍后阅读

qazxsw poi,qazxsw poi和qazxsw poi

我的问题是,更有效的方法是什么?我如何在实践中确定“更有效”?我知道这可能取决于正在写入/读取的数据量以及计算的性质,但我想知道一个甚至基准测试如何提高资源效率并最终降低成本?

我在看内存使用,带宽,I / O还是什么?我需要衡量什么才能最终选择一个而不是另一个?

database performance computer-science processing-efficiency memory-efficient
1个回答
2
投票

通常,除非经常使用计算值,否则不需要存储计算值,或者应该以极快的速度提供它们。原因是你有几个地方可以进行这种计算。首先,它是数据库引擎,它通常具有使用计算列的内置可能性。其次,您可以在应用程序客户端进行计算,从而重新使用I / O和带宽。这两种情况都会降低您的存储成本,您也应该考虑这些成本。第三,您可以为此数据使用一种缓存存储,例如使用IMDG存储。

请注意,答案很一般,因为我们没有关于您的性能和成本要求以及您使用的技术手段的信息。

但要注意存储计算数据,因为在更新源数据时需要实现机制来重新计算它,以确保数据保持一致。

© www.soinside.com 2019 - 2024. All rights reserved.