如何在android FAST中编写BLOB?

时间:2015-08-21 14:18:21

标签: android performance sqlite

我有一个应用程序可以下载大小约为50k到100k的许多图像。完整的数据库可以是50MB到500MB。

我们目前正在使用sqlite,但它的插入速度很慢。我们做了一个测试文件,但也很慢。它似乎每个图像需要大约300到800毫秒才能写入 - 大约250kb /秒(比网络速度慢)。我用A1基准测试做了一个基准测试,它说我的写入速度是14MB /秒,所以我不确定为什么我的应用程序这么慢?

以下是主要要求: 1)快速写入 2)通过自定义整数键快速读取/查找(这可以转换为单个文件的文件路径) 3)防止用户轻松访问图像(如果我们保存为图像,他们可以将外部存储连接到他们的计算机和浏览器,但我们可以按反向字节顺序编写文件)

希望我们仍然可以使用sqllite解决方案,因为我喜欢一个文件,但无论哪种方式,它似乎都是存储问题?

1 个答案:

答案 0 :(得分:0)

正如评论中所建议的那样,我认为最好将私有内存存储用于实际图像。这将比在SQLite中存储BLOB更快。

如果您仍然需要保留数据库,例如复杂的图像搜索等,我建议您只使用包含图像文件实际位置的字符串替换数据库中的BLOB字段。

另一种解决方案是将图像保留为应用资产,但这假设图像始终相同且无法动态更改,我怀疑这是您的用例。