您的位置:首页 > 移动互联

分布式数据对象:超级终端的“全局变量”

发布时间:2020-04-19 19:47:43  来源:互联网     背景:

  在3月底发布的OpenHarmony v3.1 Release版本中,新增了分布式数据对象特性。什么是分布式数据对象呢?本期就让我们一起来了解一下~

  一、背景介绍

Galaxy S21 ultra

  OpenHarmony作为分布式操作系统,支持运行在不同的终端设备上。这些终端设备通过跨端迁移和多端协同等,可以为用户提供丰富、流畅的全场景体验。在这种分布式场景下,不同设备之间需要进行数据互通来实现设备间的配合。

  下面先看两个分布式场景的示例:

  示例1:可触屏和TV的协作

  在TV/PAD上观看视频时,在可触屏设备上控制TV/PAD上的播放状态、进度、音量和速度等,实现多端控制。

图1 多端控制,解放设备限制

  示例2:词典笔同步翻译

  使用词典笔扫描书本内容,在手机/PAD上同步展示翻译结果、内容链接、词典、例句和音标等。

图2 同步翻译,学习不限小屏

  要实现上面两个示例的功能,首先必须实现设备之间的数据同步。传统方式下,设备之间的数据同步,需要开发者完成消息处理逻辑,包括:建立通信链接、消息收发处理、错误重试、数据冲突解决等操作,工作量非常大。而且设备越多,调试复杂度将呈指数增长。是否有更简单的实现方式?经过分析,我们发现,示例中的播放状态、进度、音量和速度等其实都是变量。如果这些变量支持“全局”访问,那么开发者跨设备访问这些变量就能像操作本地变量一样,数据就能够自动高效、便捷地实现多端同步了。

  为此,本次OpenHarmony v3.1 Release版本新增了分布式数据对象特性。分布式数据对象为开发者在分布式应用场景下提供简单易用的JS接口,轻松实现多设备间同应用的数据协同,同时设备间可以监听对象的状态和数据变更。与传统方式相比,分布式数据对象大大减少了开发者的工作量。

  (为方便描述,后文中“分布式数据对象”也简称为“对象”。)

物流地产模式

  二、原理解析

  这么简单高效的分布式数据对象技术具体如何实现的呢?让我们来一一解析~

  1. 对象的数据同步

  分布式数据对象,最重要的功能就是对象之间的数据同步。可信组网内的设备可以在本地创建分布式数据对象,并设置sessionID。不同设备上的分布式数据对象,通过设置相同的sessionID,建立对象之间的同步关系。

  如图3所示,设备A和设备B上的“分布式数据对象1”,其sessionID均为session1,这两个对象建立了session1的同步关系。

图3 对象的同步关系

  一个同步关系中,一个设备只能有一个对象加入。比如图3中,设备A的“分布式数据对象1”已经加入了session1的同步关系,所以,设备A的“分布式数据对象2”就加入失败了。

  建立同步关系后,每个session有一份共享对象数据。加入了同一个session的对象,支持以下操作:

  (1)读取/修改session中的数据。

  (2)监听数据变更,感知其他对象对共享对象数据的修改。

  (3)监听状态变更,感知其他对象的加入和离开。

  关于分布式数据对象的数据同步,值得注意的是,同步的最小单位是“属性”。比如,图4中对象1包含三个属性:name、age和parents。当其中一个属性变更时,则数据同步时只需同步此变更的属性。

图4 数据视图

淘宝技术负责人

  2. 对象的生命周期

  接下来,我们从生命周期的角度来全面认识一下分布式数据对象。

图5 生命周期

  如图5所示,对象包括三种状态:未初始化、本地对象和分布式对象。这三种状态说明如下:

图6 对象的三种状态

  根据条件变化,对象在这三种状态之间会来回切换:

  最开始,对象处于未初始化状态。实例化之后,对象就从未初始化状态切换到本地对象状态。给对象设置sessionID,收到对端设备对象上线通知后,此时可以跨设备同步数据了,对象就进入了分布式对象状态。

  本端或远端设备下线,或者sessionID被清除,那么对象又切回本地对象状态。分布式对象实例和对应的内存数据库都保存在应用程序的进程空间,当应用程序退出后,分布式对象和内存数据库也随之销毁,对象直接进入未初始化状态。

  三、开发约束及案例

  经过上面的介绍,大家对分布式数据对象已经有了充分的了解了,下面就要介绍开发者们最关心的“怎么用”的问题了。

  在使用分布式数据对象之前,我们先说明一下相关的开发约束:

  1. 单个应用程序最多只能创建16个分布式数据对象实例。

  2. 考虑到性能和用户体验,最多不超过3个设备进行数据协同。

如何评价知乎《答案奇遇夜》晚会?

  3. 考虑到性能和用户体验,分布式数据对象大小限制在500KB以内。

  4. 分布式数据对象的数据同步发生在同一个应用程序下,且同session ID之间。

  接下来,我们通过一个简单的开发案例来讲解如何使用分布式数据对象。此案例中,设备A和设备B分别创建一个包含3个属性的对象,这两个对象加入到同一个session,建立同步关系。一个对象的属性变更会自动同步到另一个对象,从而实现 “全局变量”效果。

海尔洗衣机着火

  通过此案例,我们能够掌握分布式数据对象的基本操作,包括:

  1. 创建对象

  2. 设置sessionID

  3. 设置监听对象变更的回调

  4. 监听状态变更

  代码示例如下:

  1. 设备A的JS代码示例:

分布式数据对象:超级终端的“全局变量”

      本期,我们为大家讲解了分布式数据对象的产生背景、原理及开发案例。如果你想体验更详细的分布式数据对象,欢迎加入OpenHarmony开源项目,项目对应分布式数据库仓库地址:

  https://gitee.com/openharmony/distributeddatamgr_objectstore

  后续仓库还将陆续发出分布式数据对象的sample哦,敬请期待!


返回网站首页

本文评论
欧科云链出席第九届投融会:区块链大数据融合创新 为数字产业发展提供助力
  “我国多省市政府已将区块链技术融入新基建的一系列建设方案,区块链作为新基建中可信网络建设的重要支撑,是助推数字经济高质量发展的客观需要。不过区块链要与其他创新技...
日期:07-28
腾讯公开专利,输入文本可自动生成问卷表单多个题目
  天眼查App显示,9月7日,腾讯科技(深圳)有限公司公开一项“ 一种表单生成方法、装置、设备及介质 ”专利,公开号为CN113360619A,申请日期为2021年6月16日。2021年电动车的走向...
日期:07-28
国家新一代人工智能标准体系建设指南的建设内容_三项国家标准发布,人工智能领域标准制定更一步完善
  日前,云天励飞参编的三项国家标准——《信息技术 计算机视觉 术语》、《信息技术 人工智能 术语》、《信息技术 生物特征识别 人脸识别系统技术要求》正式发布!这也是...
日期:10-23
首批昇腾荣誉顾问、MVP亮相WAIC 引领昇腾AI开创产业未来
  9月2日,由新一代人工智能产业技术创新战略联盟(AITISA)、中国人工智能产业发展联盟(AIIA)主办,华为承办的昇腾人工智能生态大会于世界人工智能大会(WAIC)举办期间同步召开...
日期:09-04
比特派钱包官网下载app_比特派官网下载:全球领先的多链钱包比特派Bitpie下载地址
  比特派钱包下载官网:https://bitpie.bid  比特派Bitpie是全球领先的多链钱包,支持BTC/ETH/EOS/USDT 等多种区块链资产。基于对区块链技术的深入理解以及来自运营比太钱...
日期:07-14
jdg战胜rge_JDG3-0击败RGE,致态携手JDG齐头并进,拿下胜利!
  10月21日,2022英雄联盟全球总决赛S12进入到四分之一决赛阶段的角逐,首场比赛便是LPL一号种子JDG对战欧洲队RGE,这场比赛和大多数观众赛前预料的一样,在巨大的实力差距下,JDG3...
日期:10-24
Poly Studio X30/Poly Studio X50获得腾讯会议认证 共创联合生态高质云会议体验
  中国北京,4月21日讯。近期,全球领先统一通信和协作公司Poly博诣宣布旗下的Poly Studio X30和Poly Studio X50视频会议终端通过腾讯天籁实验室的认证,正式获得腾讯会议专...
日期:07-01
北京大学光华管理学院携手微软,全面加速创新型管理人才培养_北京大学光华管理研究生院
  2022年1月26日,北京 —— 昨日,北京大学光华管理学院与微软公司签署为期三年的合作备忘录,双方将围绕人工智能与数据科学教学创新、数字化转型案例研究、教务教学平台优...
日期:07-30
专家:停用多多买菜系统是正常管理规范,菜鸟驿站是首批取得资质公司
  近日,“多多买菜”快递系统悄然入市,在安徽、重庆、福州、天津等不同地区,意图以烧钱补贴的形式吸引快递站点采用多多买菜系统收发快递。为此,安徽、重庆、福州等地邮政管理...
日期:07-30
顺应新生代消费人群 桔多多以“品质+服务”打造行业新标杆
  所谓Z世代,通常是指出生于1995年到2009年之间的人群,随着时间的更迭,Z世代已经成为了消费的主力军,尤其到了数字化时代,Z世代更是成为数字化时代的原住民。根据国家统计局数...
日期:07-29
首家金控集团监管统计系统成功上线,金控监管统计新添数字化利器
  2021年四季度,光大科技自主研发的金控集团监管统计信息管理系统(下称“监管统计系统”)正式投产上线并完成首次并行填报,成为市场首个金控集团监管统计线上报送应用的系...
日期:07-26
富途证券ESOP:创业者必看,企业为什么要做股权激励?「富途证券合伙人模式」
  在新经济行业的发展过程中,股权激励几乎已经成为初创企业招揽人才的标配。对企业而言,用股票期权吸引人才,一方面缓解了初创期紧张的现金压力,另一方面又拉近了公司与员...
日期:07-29
三星galaxy s21+5G_夏日美好时光 有三星Galaxy S21 5G系列更精彩
  春夏交换之际,很多人开始准备更换清凉服装,度过清爽夏日。而智能手机作为日常生活中必不可少的装备,也正迎来换新机热潮。在众多的手机中,如何挑选一款具有时尚设计造型、影...
日期:07-14
小牛电动:“牛油”社区诠释着小牛电动的独特魅力_小牛电动车牛油
   为什么苹果公司全球有那么多粉丝,仔细琢磨,原因在于苹果的品牌文化已深植于用户心里。不止苹果,那些伟大的创新公司,其品牌文化都在通过用户社区得到渗透,而通过品牌社区文...
日期:07-14
2022中英科技峰会于伦敦成功举办了吗_2022中英科技峰会于伦敦成功举办
  12月10日,由帝国理工学院中国学生学者联谊会(ICCSSA)主办的。本次活动包括峰会主论坛、青年学者论坛、创新设计展览、学者晚宴和创新者挑战赛五大板块,聚集了各领域专家...
日期:12-23
千亿级车载屏市场的隐藏大佬——TCL华星
  自2019年起便进军车载屏市场的TCL华星,在不断加码的技术创新支持下,呈现出蒸蒸日上地发展态势。目前已与奔驰、比亚迪、吉利等知名汽车品牌开展了联合创新项目,推动新应用...
日期:10-16
跨国巨头掀起“脱美入欧”潮,江森、美敦力、赛诺根后下一个是谁?
  2010年,美国制造业巨头江森自控集团(JohnsonControls)被消防安全设备制造商泰科国际(TycoInternational)公司收购,由此从美国迁册至爱尔兰。2014年,赛诺根(Seragon)在被罗...
日期:07-25
卓思:创造最佳体验,再贴心也不如没玩过
  许多年之后,面对氤氲热气,我总回想起头还没秃的老王带我去见识海底捞的那个遥远的下午。当时,土里土气的我们惊叹于它后来著称于世的服务:美甲、擦鞋、真的免费且竟然不限量...
日期:07-25
当贝携手知名体育博主Asaikana,超大屏畅享足球盛宴
  近日,知名体育博主Asaikana于微博平台发布了一条视频动态,视频中博主Asaikana花较长篇幅介绍了当贝旗下激光投影仪——当贝X3,并表示相较于电视机,投影仪拥有更大的屏幕尺寸...
日期:12-13
让手机拍摄不再千篇一律 三星Galaxy Z Flip3 5G影像玩法解析(三星galaxy z flip 5g评测)
  随着硬件以及算法的不断升级,以及灵巧便携的特点,如今智能手机已经在慢慢取代数码相机的位置,成为了大多数普通用户日常生活、工作中的主力拍摄工具。不过,尽管智能手机的镜...
日期:04-20