加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

database – 存储空数据时是否占用磁盘空间?

发布时间:2020-12-12 18:54:57 所属栏目:百科 来源:网络整理
导读:我使用sqlite数据库. 添加记录时,磁盘空间显然用于非空数据.但是包含空值的数据记录呢? 为什么我要问的是,我将拥有大量的列(50)和数百万条包含空数据的记录,我想知道它是否是设计数据库的最有效方法 解决方法 在SQLite的 record format中,只需要一个字节来
我使用sqlite数据库.
添加记录时,磁盘空间显然用于非空数据.但是包含空值的数据记录呢?
为什么我要问的是,我将拥有大量的列(50)和数百万条包含空数据的记录,我想知道它是否是设计数据库的最有效方法

解决方法

在SQLite的 record format中,只需要一个字节来指定值为NULL.

如果规范化数据库以使每个非NULL值有一个记录,则保存这些NULL字节,但是对于非NULL值,您有额外的开销.
SQLite的最低记录开销is:

>两个字节的单元格指针,
>至少一个字节的有效载荷长度,
> rowid的几个字节,和
>对于您的情况,指向返回原始记录的外键的几个字节.

此外,将非NULL值存储在单独的表中可能需要索引才能获得有效的查找.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读