在鸿蒙开发的时候,关于缓存用户一些消息信息, 比如有些场景缓存量很大,想问一下采用哪种缓存方式更适合?
在鸿蒙开发的时候,关于缓存用户一些消息信息, 比如有些场景缓存量很大,想问一下采用哪种缓存方式更适合?
用户首选项为应用提供Key-Value键值型的数据处理能力,支持应用持久化轻量级数据,并对其修改和查询。
数据存储采用键值对形式,键为字符串类型,值可为数字、字符串、布尔类型及其对应的数组。
用户首选项的持久化文件存储在preferencesDir路径下,创建preferences对象前,需要保证preferencesDir路径可读写。持久化文件存储路径中的加密等级会影响文件的可读写状态,路径访问限制详见应用文件目录与应用文件路径。
@ohos.data.kvStore模块,通过KvStore.create创建实例。它操作简单,能快速读写,适合缓存结构不太复杂、数量有限的消息,如用户基本信息、简单配置等。@ohos.data.relationalStore,通过getRelationalStore获取实例。可创建表结构存储不同类型消息及关联关系,适用于大量结构化消息缓存,如聊天记录、任务列表等。@ohos.data.distributedData模块,通过DistributedData.create创建分布式数据对象。能实现不同设备间数据实时同步,确保各设备消息缓存一致性。