我想向数据库中添加n MB数据,并且我希望数据库大小仅增长n MB

时间:2019-06-15 12:33:39

标签: sql database firebase-realtime-database

我有一个假设的值数据库,每个值的大小为4个字节(即4,000,000,000)。所有值都存在于数据库中,因此它以0开头,以最大的4字节数字结尾。

仅一次,我想在数据库中通过在它们前面的列(或空格)中添加一个1到10000之间的数字来标记其中的一些值。

例如,我的数据库是:

0 1个 2 3 4 5 。 。 。 。 10000

仅一次,我想标记其中一些数字,并在它们前面添加一个数字:

0 90 1个 2 3 10 4 55 5 6 7 8 9 。 。 。 。 10000

如您所见,我在3个值(0、3、4)的前面添加了一些数字。

我的问题是我尝试了多种数据库,例如SQL,NoSQL,JSON等。但是,每当我将这些数字添加到这3个值中时,兆字节的数据就会超出我的期望而添加到数据库大小中。

换句话说,我希望能够向数据库中添加n MB的信息,并且保持大多数数据库值不变,并且我希望数据库中的大小只会增加n MB,而不会增加更多。你能帮我吗?

1 个答案:

答案 0 :(得分:1)

真正的问题是:为什么您要关心“兆字节”数据?除非您在移动设备上运行它,否则这不太可能是现实世界中的考虑因素。

数据库会产生大量开销-它们具有索引,部分填充的页面,日志文件等。它们支持多个处理器,分布式内存和多个磁盘。它们旨在实现ACID属性并用于数据检索操作。它们并非旨在最小化空间。

如果您担心空间不足,则应该以压缩的平面文件格式存储数据,并放弃数据库提供的其他功能。