这只是我注意到的事情,并且非常好奇地理解为什么会这样,如果有人对这种行为有可能的解释。 我创建了2个sqlite3文件,两者都具有完全相同的数据。一个是版本3.7.5和CentOS。另一个是版本3.7.13和OSX。生成的文件大小为16K和28K,页面大小为1024和4096。
这是否与操作系统上的默认块大小或文件系统相关的其他内容有关?或者根本没有,这是因为SQLite现在存储在其文件中的一些额外信息?
答案 0 :(得分:1)
较新的SQLite版本不会在数据库文件中存储任何其他内容(只要您不使用新功能)。
所有表和索引都使用自己的页面,因此数据库文件大小受页面大小的影响。 每个页面都有固定的开销,因此增加页面大小通常会稍微提高性能。 通过更改页面大小,您可以根据空间要求进行权衡。
默认页面大小受存储设备的实际块大小以及操作系统报告的影响。