首页/新闻资讯/正文详情

《HarmonyOS 7 跨设备数据协同专题》04:DistributedKVStore 的 PUSH、PULL 与最终一致性【鸿蒙心迹】

发布时间:2026/9/23 9:58:50 来源:云帆数科 栏目:资讯中心
《HarmonyOS 7 跨设备数据协同专题》04:DistributedKVStore 的 PUSH、PULL 与最终一致性【鸿蒙心迹】
手机改了平板也改了最后谁覆盖谁前三篇做的都是实时内存同步适合正在编辑的笔记。这篇做持久化大量笔记记录要存到数据库里跨设备同步。最开始以为同步就是把两边数据合一下就行。结果两边都改了同一条记录到底听谁的一、分布式 KVStore 是什么分布式 KVStore 就是一个键值数据库数据可以跨设备同步。和分布式数据对象不一样数据对象是内存里的实时同步KVStore 是持久化的存在本地数据库然后按策略同步。类型存储方式同步方式DistributedDataObject内存实时同步DistributedKVStore本地数据库按策略同步二、三种同步模式手动同步的时候有三种模式模式方向说明PUSH_ONLY只推把本地数据推给对端PULL_ONLY只拉从对端拉数据下来PUSH_PULL双向两边数据互相同步这段代码解决什么问题手动同步 KVStore。文件distributed/NoteStore.ets用途持久化笔记同步接入位置网络恢复后import{distributedKVStore}fromkit.ArkData;// 手动同步kvStore.sync(deviceIds,distributedKVStore.SyncMode.PUSH_PULL,(err,result){if(err){console.error(同步失败);return;}console.log(同步完成:,result);});三、最终一致性是什么意思同步完成了不是说两边数据完全一样。是最终一致。意思是现在可能不一样过一会儿同步完了就一样了。不是强一致。四、几个容易踩的坑第一个坑什么情况都用 PUSH_PULL。有些场景只推或者只拉就够了。第二个坑把同步完成理解成强一致。同步完也可能有冲突。第三个坑设备离线疯狂重试。离线了就别一直重试等连上再同步。第四个坑大量数据每次全量同步。数据量大会很慢。五、冲突怎么处理两边都改了同一条记录冲突怎么办正确的做法是加版本字段或者更新时间。谁更新时间新听谁的。这次做持久化同步最大的体会是持久化同步不是实时内存同步是按策略同步的。要考虑弱网、离线、冲突这些情况不是同步一下就完事了。

相关推荐

Python+dlib人脸识别实战:128维向量与欧式距离阈值调优
Python+dlib人脸识别实战:128维向量与欧式距离阈值调优

简介:这份资源围绕 Python 与 dlib 库实现的人脸识别项目展开,核心是欧式距离算法:将人脸图像转为 128D 特征向量后,通过计算特征差异判断是否为同一张脸,通常差距在 0.6 以下即视为同一人。内容面向图像识别入门者、课… · 2026/9/23 9:58:43

英文字母音标性能优化
英文字母音标性能优化

别再死磕音标了,用这3个Python库搞定发音数据性能优化 面对一堆看不懂的 UnicodeDecodeError 或 KeyError ,你是否也曾在 StackTrace 里迷失方向?… · 2026/9/23 9:58:43

校友网私域管理系统选型指南:从数据孤岛到智能连接的架构演进
校友网私域管理系统选型指南:从数据孤岛到智能连接的架构演进

一、校友社群数字化的核心转型逻辑当下多数校友会仍依赖微信群、Excel表格开展管理工作,存在数据零散、人脉沉淀困难、活动运营成本高、资源匹配低效等普遍问题。校友私域管理系统的核心价值,并非简单替代基础办公工具,而是重构组织与成员的连… · 2026/9/23 9:58:36

2024 CSP-J初赛真题深度解析:考点拆解与复习路径
2024 CSP-J初赛真题深度解析:考点拆解与复习路径

简介:这份资源是2024年信息学奥赛CSP-J初赛真题的详细分析文档,面向备战CSP-J的中学生、少儿编程学习者及竞赛指导教师,帮助读者系统梳理初赛考点、理解命题思路并查漏补缺。压缩包内共1个docx文件,约121KB,内容以文字… · 2026/9/23 10:55:47

卡方检验表避坑指南:3个实战案例教你搞定API变更
卡方检验表避坑指南:3个实战案例教你搞定API变更

卡方检验表避坑指南:3个实战案例教你搞定API变更 版本升级后 API 全变了?别慌,这篇避坑指南专治各种统计库升级导致的“水土不服”。 在水利工程的数据分析里,卡方检验表是检验独立性、拟合优度的核心工具。很多老手都遇到过:项目从… · 2026/9/23 10:55:47

长风破浪会有时高频面试题全解:应届生避坑指南
长风破浪会有时高频面试题全解:应届生避坑指南

长风破浪会有时高频面试题全解:应届生避坑指南 报错堆栈长得像天书,面试官一句“长风破浪会有时”让你解释底层逻辑,你脑子瞬间空白?别慌。… · 2026/9/23 10:55:47

中文短文本情感分析实战:基于PyTorch的LSTM模型搭建与调优指南
中文短文本情感分析实战:基于PyTorch的LSTM模型搭建与调优指南

简介:一套基于LSTM的中文短文本情感分析项目源码,主要面向需要完成期末大作业、课程设计的高校学生,也适合刚接触深度学习文本分类的Python开发者用于练手与拓展。压缩包共14个文件、大小约1.96MB,内部包含Python源码脚本、训练与… · 2026/9/23 10:55:40

基于SQLite与三层容错架构的内容获取工作流重构实践
基于SQLite与三层容错架构的内容获取工作流重构实践

1. 内容获取工作流的核心痛点与重构思路做过内容批量采集的人都有一个共识:真正让人头疼的从来不是“能不能下载”,而是“下载过程稳不稳”。douyin-downloader 这类工具在圈子里流传已久,早期版本大多走的是单链路请求——解析一个视频 ID&a… · 2026/9/23 10:55:40

数字绘画笔刷管理:从参数原理到高效工作流
数字绘画笔刷管理:从参数原理到高效工作流

1. 项目概述:一个手绘爱好者的工具进化史五年前刚接触数字绘画时,我和大多数新手一样陷入"笔刷收藏癖"的怪圈——硬盘里囤积了上百套笔刷却从未认真使用过任何一套。直到有次接商业项目时,甲方要求用特定风格的笔触完成整套插画&am… · 2026/9/23 10:55:40

3招搞定手机怎么下载微信面试难题实战项目解析
3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧
Win7无线热点配置工具源码解析:解决API失效的3个实战技巧

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧 Win7无线热点配置工具在Win10/11上跑不动?不是你的问题,是版本升级后 API 全变了。很多老项目里的 netsh wlan… · 2026/9/23 0:00:36

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码