需要多少磁盘空间才能使用postgresql DB存储NULL值?
发布时间:2020-12-13 16:38:21 所属栏目:百科 来源:网络整理
导读:假设我的表上有一列,定义如下: "MyColumn" smallint NULL 存储值0,1或其他值应该需要2个字节(1)。但是如果我将“MyColumn”设置为NULL,需要多少空间?是否需要0个字节? 是否有一些额外的需要的字节用于管理目的或每个列/行的这样的事情? (1)http://www
假设我的表上有一列,定义如下:
"MyColumn" smallint NULL 存储值0,1或其他值应该需要2个字节(1)。但是如果我将“MyColumn”设置为NULL,需要多少空间?是否需要0个字节? 是否有一些额外的需要的字节用于管理目的或每个列/行的这样的事情? (1)http://www.postgresql.org/docs/9.0/interactive/datatype-numeric.html
空列不存储在DB中。该行在开始处有一个位图,每列有一个位,指示哪些是空值或非空值。如果行中的所有列都不为空,则可以省略位图。因此,对于具有一个或多个空值的任何给定行,添加到它的大小将是位图的大小(N列表的N位,向上舍入)。
从文档here更深入的讨论 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |