SQLite数据库大于CSV平面文件?

时间:2015-02-04 14:31:36

标签: android mysql database sqlite csv

我原本以为使用SQLite会减少所用数据的总大小,但实际上我看到的CSV表示比SQLite数据库小4mb。

数据库包含一个包含400,000行的表。该表有四列。

CSV文件为19MB,SQLite数据库为23MB。如果这个表大10倍,我最好解析CSV文件而不是SQLite。

为什么SQLite数据库大于CSV文件?

3 个答案:

答案 0 :(得分:7)

不应期望SQLite数据库文件更小。将数据放入数据库/表的目的是根据所需的业务规则/ SQL连接访问该数据。索引和其他元数据(如表定义)可以轻松解释额外的空间要求。

答案 1 :(得分:0)

sqlite db包含标头的保留空间,还包含表模式和额外信息,如App Id,版本,编码,请参阅以下链接获取更多信息:

http://www.sqlite.org/fileformat.html

答案 2 :(得分:0)

查看The SQLite Database File Format

你会看到开销来自哪里。

数据库的目的不仅是存储原始数据。你得到了整个关系结构,索引...你唯一可能预期的是压缩数据文件,但它可能会达到性能。