GRDB使用SQLite的WAL模式
来源:互联网 发布:网络水晶头接线图 编辑:程序博客网 时间:2024/05/22 10:49
GRDB使用SQLite的WAL模式
WAL全称是Write Ahead Logging,它是SQLite中实现原子事务的一种机制。该模式是从SQLite 3.7.0版本引入的。再此之前,SQLite使用Rollback Journal机制实现原子事务。在Rollback Journal机制中,当需要修改数据时,先把被修改的数据备份出来,然后把数据库的数据修改。如果事务成功,就把备份数据删掉;如果事务失败,则恢复备份数据。这个机制的缺点是读写频繁,并且写的时候,不能读取。
而WAL模式的工作机制如同其名称一样,在写入数据库之前,先写入一个日志文件。这个日志文件名为wal的文件。当事务成功,修改的内容会保留在这个文件中。当事务失败,则从这个文件中删除。当wal文件的记录积累到一定数量,则一次性写入数据库中。如果读取数据库,则先从wal中读取,然后再读取数据库文件。这样,写操作不会影响读操作,从而提高效率。
GRDB直接支持WAL模式。当开发者使用DatabasePool建立数据库连接,则默认使用WAL模式;如果使用DatabaseQueue建立连接,则不使用该模式。如果WAL中的积累数据太多时候,写入数据库会造成数据库性能下降,所以避免WAL积累数据太多。
0 0
- GRDB使用SQLite的WAL模式
- 数据库Sqlite-WAL模式
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- SQLite的WAL机制
- Android使用SQLITE3 WAL模式
- Android使用SQLITE3 WAL模式
- Sqlite DatebaseBrowser不能打开wal的数据库
- GRDB自定义的纯函数
- SQLite-WAL原理
- SQLite分析之WAL机制
- sqlite 怎么开启wal机制
- iOS开发之SQLite安全问题解析之SQLite的锁机制和WAL技术
- LeetCode: 41. First Missing Positive
- sublime text3 注册码
- 最全面SSM三大框架之Spring MVC篇
- kerberos集群安装配置(十)
- spring boot整合mybatis
- GRDB使用SQLite的WAL模式
- python数字转换成中文大写
- Java基本类型和引用类型
- Java8源码阅读之HashMap
- Glide 圆形头像的使用
- JESD79-4 第4章 SDRAM命令描述与操作(4.11-4.13)
- Linux中查看socket状态
- JavaScript 正则表达式
- 边做边思