From 5e1538d85bde33f7f31497927653626ebf4933d6 Mon Sep 17 00:00:00 2001 From: Omooo <869759698@qq.com> Date: Tue, 15 Jan 2019 19:09:20 +0800 Subject: [PATCH] update SQLite --- blogs/Android/Serializable 与 Parceable.md | 8 +++++ blogs/Android/存储优化.md | 18 ++++++++++- blogs/SQLite.md | 34 +++++++++++++++++--- images/{ => Android}/SQLite.png | Bin images/Android/存储优化.png | Bin 0 -> 61026 bytes 5 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 blogs/Android/Serializable 与 Parceable.md rename images/{ => Android}/SQLite.png (100%) create mode 100644 images/Android/存储优化.png diff --git a/blogs/Android/Serializable 与 Parceable.md b/blogs/Android/Serializable 与 Parceable.md new file mode 100644 index 0000000..ad672a2 --- /dev/null +++ b/blogs/Android/Serializable 与 Parceable.md @@ -0,0 +1,8 @@ +--- +Serializable 与 Pracelable +--- + +#### 目录 + +1. 思维导图 +2. \ No newline at end of file diff --git a/blogs/Android/存储优化.md b/blogs/Android/存储优化.md index d56eb27..048146a 100644 --- a/blogs/Android/存储优化.md +++ b/blogs/Android/存储优化.md @@ -19,6 +19,8 @@ #### 思维导图 +![](https://i.loli.net/2019/01/15/5c3dbef17beaf.png) + #### Android 的存储基础 ##### Android 分区 @@ -113,4 +115,18 @@ Android 系统可以通过 df 命令来查看分区情况,常见的分区如 虽然 ContentProvider 为应用程序之间的数据共享提供了很好的安全机制,但是如果 ContentProvider 是 exported,当支持执行 SQL 语句时就需要注意 SQL 注入的问题。另外如果我们传入的参数是一个文件路径,然后返回文件的内容,这个时候也要校验合法性,不然整个应用的私有数据就可能被别人拿到,在 intent 传递参数的时候可能也会有这个问题。 - 总的来说,ContentProvider 这套方案实现相对比较笨重,适合传输大的数据。 \ No newline at end of file + 总的来说,ContentProvider 这套方案实现相对比较笨重,适合传输大的数据。 + +- SQLite + + 总的来说,通过引入 ORM,可以大大的提升我们的开发效率;通过 WAL 模式和连接池,可以提高 SQLite 的并发性能;通过正确的建立索引,可以提升 SQLite 的查询速度;通过调整默认页大小和缓存大小,可以提升 SQLite 的整体性能。 + + 详见:[SQLite](https://github.com/Omooo/Android-Notes/blob/master/blogs/SQLite.md) + +#### 参考 + +[存储优化(上):常见的数据存储方法有哪些?](https://time.geekbang.org/column/article/76677) + +[存储优化(中):如何优化数据存储?](https://time.geekbang.org/column/article/76985) + +[存储优化(下):数据库SQLite的使用和优化](https://time.geekbang.org/column/article/77546) \ No newline at end of file diff --git a/blogs/SQLite.md b/blogs/SQLite.md index 1371ac3..b505a07 100644 --- a/blogs/SQLite.md +++ b/blogs/SQLite.md @@ -19,11 +19,12 @@ Android 数据持久化之 SQLite - 优化建议 - 事务 - 建立索引 + - 页大小和缓存大小 3. 参考 #### 思维导图 -![](https://raw.githubusercontent.com/Omooo/Android-Notes/master/images/SQLite.png) +![](https://i.loli.net/2019/01/15/5c3dbf22234b0.png) #### 基本使用 @@ -89,11 +90,30 @@ SQLite 默认是支持多进程并发操作的,它通过文件锁来控制多 为了进一步提高并发性能,我们还可以打开 WAL(Write-Ahead Logging)模式。WAL 模式会将修改的数据单独写到一个 WAL 文件中,同时也会引入 WAL 日志文件锁。通过 WAL 模式读和写可以完全的并发执行,不会相互阻塞。 +```java +db.enableWriteAheadLogging(); //返回 false / true ``` -PRAGMA schema.journal_mode = WAL + +如果开启了 WAL 模式,开启事务要使用 benginTransactionNonExclusive(),注意捕获异常,源码如下: + +```java + /** + *
+     *   db.beginTransactionNonExclusive();
+     *   try {
+     *     ...
+     *     db.setTransactionSuccessful();
+     *   } finally {
+     *     db.endTransaction();
+     *   }
+     * 
+ */ + public void beginTransactionNonExclusive() { + beginTransaction(null /* transactionStatusCallback */, false); + } ``` -**但是需要注意的是,写之间仍然不能并发。**如果出现多个写并发的情况,依然有可能出现 SQLiteDatabaseLockedException,这个时候可以让应用捕获这个异常,然后等待一段时间后重试。 +但是需要注意的是,**写之间仍然不能并发。**如果出现多个写并发的情况,依然有可能出现 SQLiteDatabaseLockedException,这个时候可以让应用捕获这个异常,然后等待一段时间后重试。 总的来说,通过连接池与 WAL 模式,可以很大程度上增加 SQLite 的读写并发,大大减少由于并发导致的等待耗时,建议在应用中尝试开启。 @@ -190,7 +210,13 @@ SQLite 默认会为每个插入、更新操作创建一个事务,并且在每 数据库就像一个小文件系统,事实上它内部也有页和缓存的概念。 -对于 SQLite 的 DB 文件来说,页是最小的存储单位。跟文件系统的页缓存一样,SQLite 会将读过的页缓存起来,用来加快下一次读取速度,页大小默认是 1024 Byte,缓存大小默认是 1000 页。建数据库的时候,就提前选择 4KB 作为默认的 page size 以获得更好的性能。 +对于 SQLite 的 DB 文件来说,页是最小的存储单位。跟文件系统的页缓存一样,SQLite 会将读过的页缓存起来,用来加快下一次读取速度,页大小默认是 1024 Byte,缓存大小默认是 1000 页。如果使用 4KB 的 pageSize 性能能提升 5%~10% 左右,所以在建数据库的时候,就提前选择 4KB 作为默认的 page size 以获得更好的性能。 + +```java +db.setPageSize(1024 * 4); +``` + + ##### 其他优化 diff --git a/images/SQLite.png b/images/Android/SQLite.png similarity index 100% rename from images/SQLite.png rename to images/Android/SQLite.png diff --git a/images/Android/存储优化.png b/images/Android/存储优化.png new file mode 100644 index 0000000000000000000000000000000000000000..1ff4ffb2ae58aa3a05bcc3db2a9b9f1759a709d8 GIT binary patch literal 61026 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 WF4zBIn>>g76Qinoxj@A>;6DH&r