首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何优化整数的Sqlite文件大小?

如何优化整数的Sqlite文件大小?
EN

Stack Overflow用户
提问于 2015-02-07 12:10:54
回答 1查看 685关注 0票数 2

我想在sqlite中构建一个20,000,000记录表,但是文件大小比其以TAB分隔的明文表示稍微大一些。

优化数据大小存储的方法是什么?

详细信息:

每个记录都有

  • 8个整数
  • 3枚举(现在表示为1字节文本),
  • 7案文

我怀疑这些数字没有得到有效的存储(数值范围在10,000,000至900,000,000)

根据文档,我期望它们以数字形式存储3-4字节,如果存储为文本(可能是附加的终止字节或大小指示字节),则为8-9字节,这意味着存储为int :存储为文本之间的比例为1:2。

但看起来并非如此。

EN

回答 1

Stack Overflow用户

发布于 2015-02-08 00:57:18

你的整数至少需要3-4字节(3字节,最多2^24 =16,000,000字节)。此外,SQLite总是为每一列存储至少一个字节作为大小信息(对于您的1字节文本-每个列的总和超过2字节)。

一些问题:

  • 您使用的是复合主键还是普通整数以外的主键?
  • 你使用其他索引吗?
  • 你试过关闭数据库吗?(命令“真空”)- SQLite数据库不一定是自动真空的,所以当数据被删除时,空间保持保留。

还有一项是:

  • 你已经有2000万或更少的条目了吗?对于小型数据库,存储开销可能比实际内容大小大得多。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28381949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档