【发布时间】:2016-07-25 09:58:26
【问题描述】:
我有一个 2M 字节的存储空间来在我们的嵌入式设备(linux 基础)中存储一些日志。由于尺寸非常有限,我们必须实施一些方法来处理达到最大尺寸的情况。一种选择是带有 mmap 的循环缓冲区以实现持久性。我们正在考虑的另一个选项是使用 sqlite3(当达到最大大小时,删除最旧的条目,插入新条目)。
但是,据我了解,sqlite3 使用页面(限制 4096K 或可配置)。我的问题是:
如何从 sqlite3 计算磁盘使用量?除了数据库文件大小,这里还需要计算什么?
达到 2M 时会发生什么?我可以检查任何特定信息或错误以删除最旧的条目吗?
删除条目然后插入新条目是否是一种好方法(性能方面、数据分段方面)?
欢迎任何建议或反馈。
【问题讨论】:
标签: database sqlite filesystems persistence