如何计算处理数组所使用的内存量

如何计算处理数组所使用的内存量

我有一个包含 600 万条数据库记录的数组。每条记录有 100 列。是否有公式可以计算服务器正在使用的内存量?这会呈指数增长吗?

处理过程涉及将这些记录的内容写入 XML 文件。虽然文件数量不会达到 600 万个,但数量相当可观。

在启动该过程之前,我需要知道要为该过程分配什么样的 RAM。

如果没有公式,我应该采取什么步骤?任何见解都会有帮助。

答案1

我们确实没有办法回答这个问题。

可以编写一个程序,每次从数据库中提取 1 个字节并将其写入 XML 文件;因此 640K 应该足够了。

在另一个极端,程序可以将所有 6 亿个字段加载到内存中,然后分配写入每个 XML 文件所需的所有空间;如果字段都是典型的整数,则需要大约 6GB(600M * 4 字节 * ~2.5 = 6GB)的空间;如果它们都是 10MB 的 jpeg 图像,则更像 15PB(600M * 10MB * ~2.5 = 15PB)。

相关内容