我想在值是图像位图的 Android 设备上使用快速键值存储。存储应该由磁盘备份并提供一些缓存,最大限度地减少磁盘 IO。多线程访问是可取的,但不是必需的。
我看过Java Berkeley DB这似乎符合要求。还有其他性能更好的库吗?还是 Berkeley DB 在 Android 平台上表现良好?
我同意需要将单个键值对驻留在内存中的解决方案,但存储完整的键值对集可能会超出设备内存的大小。
最佳答案
我会建议基于文件的内存缓存,在不使设备内存过载的情况下运行良好。 不需要任何额外的东西,esp DB 不是满足此类需求的最佳方式。
这里有几个库;
- https://github.com/commonsguy/cwac-cache (弃用)
- https://github.com/wareninja/generic-store-for-android
附:键值存储和处理基于内存文件的优化缓存
我一直在使用它们,尤其是用于图像缓存,到目前为止它们的性能都非常好。
关于android - android 上持久键值存储的最佳机制是什么(具有大值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5859818/