当前位置: 首页 > news >正文

湛江网站制作多少钱网站免费模板资源

湛江网站制作多少钱,网站免费模板资源,采用什么方法推广网站,施工企业营销人员培训分布式数据服务概述 分布式数据服务#xff08;Distributed Data Service#xff0c;DDS#xff09; 为应用程序提供不同设备间数据库数据分布式的能力。通过调用分布式数据接口#xff0c;应用程序将数据保存到分布式数据库中。通过结合帐号、应用和数据库三元组#xf…分布式数据服务概述 分布式数据服务Distributed Data ServiceDDS 为应用程序提供不同设备间数据库数据分布式的能力。通过调用分布式数据接口应用程序将数据保存到分布式数据库中。通过结合帐号、应用和数据库三元组分布式数据服务对属于不同应用的数据进行隔离保证不同应用之间的数据不能通过分布式数据服务互相访问。在通过可信认证的设备间分布式数据服务支持应用数据相互同步为用户提供在多种终端设备上最终一致的数据访问体验。 基本概念 KV数据模型 “KV数据模型”是“Key-Value数据模型”的简称“Key-Value”即“键-值”。它是一种NoSQL类型数据库其数据以键值对的形式进行组织、索引和存储。 KV数据模型适合不涉及过多数据关系和业务关系的业务数据存储比SQL数据库存储拥有更好的读写性能同时因其在分布式场景中降低了解决数据库版本兼容问题的复杂度和数据同步过程中冲突解决的复杂度而被广泛使用。分布式数据库 也是基于KV数据模型对外提供KV类型的访问接口。 分布式数据库事务****性 分布式数据库事务支持本地事务和传统的数据库事务概念一致和同步事务。同步事务是指在设备之间同步数据时以本地事务为单位进行同步一次本地事务的修改要么都同步成功要么都同步失败。 分布式数据库一致性 在分布式场景中一般会涉及多个设备组网内设备之间看到的数据是否一致称为分布式数据库的一致性。分布式数据库一致性可以分为强一致性、弱一致性和最终一致性。 强一致性是指某一设备成功增、删、改数据后组网内设备对该数据的读取操作都将得到更新后的值。弱一致性是指某一设备成功增、删、改数据后组网内设备可能能读取到本次更新数据也可能读取不到不能保证在多长时间后每个设备的数据一定是一致的。最终一致性是指某一设备成功增、删、改数据后组网内设备可能读取不到本次更新数据但在某个时间窗口之后组网内设备的数据能够达到一致状态。 强一致性对分布式数据的管理要求非常高在服务器的分布式场景可能会遇到。因为移动终端设备的不常在线、以及无中心的特性分布式数据服务不支持强一致性只支持最终一致性。 分布式数据库同步 底层通信组件完成设备发现和认证会通知上层应用程序包括分布式数据服务设备上线。收到设备上线的消息后分布式数据服务可以在两个设备之间建立加密的数据传输通道利用该通道在两个设备之间进行数据同步。 分布式数据服务提供了两种同步方式手动****同步和自动同步。 手动同步由应用程序调用sync接口来触发需要指定同步的设备列表和同步模式。同步模式分为PULL_ONLY将远端数据拉到本端、PUSH_ONLY将本端数据推送到远端和PUSH_PULL将本端数据推送到远端同时也将远端数据拉取到本端。**自动同步**由分布式数据库自动将本端数据推送到远端同时也将远端数据拉取到本端来完成数据同步同步时机包括设备上线、应用程序更新数据等应用不需要主动调用sync接口。 单版本分布式数据库 单版本是指数据在本地保存是以单个KV条目为单位的方式保存对每个Key最多只保存一个条目项当数据在本地被用户修改时不管它是否已经被同步出去均直接在这个条目上进行修改。同步也以此为基础按照它在本地被写入或更改的顺序将当前最新一次修改逐条同步至远端设备。 设备协同分布式数据库 设备协同分布式数据库建立在单版本分布式数据库之上对应用程序存入的KV数据中的Key前面拼接了本设备的DeviceID标识符这样能保证每个设备产生的数据严格隔离底层按照设备的维度管理这些数据设备协同分布式数据库支持以设备的维度查询分布式数据但是不支持修改远端设备同步过来的数据。 分布式数据库冲突解决策略 分布式数据库多设备提交冲突场景在给提交冲突做合并的过程中如果多个设备同时修改了同一数据则称这种场景为数据冲突。数据冲突采用默认冲突解决策略基于提交时间戳取时间戳较大的提交数据当前不支持定制冲突解决策略。 数据库Schema化管理与谓词查询 单版本数据库支持在创建和打开数据库时指定Schema数据库根据Schema定义感知KV记录的Value格式以实现对Value值结构的检查并基于Value中的字段实现索引建立和谓词查询。 分布式数据库备份能力 提供分布式数据库备份能力业务通过设置backup属性为true可以触发分布式数据服务每日备份。当分布式数据库发生损坏分布式数据服务会删除损坏数据库并且从备份数据库中恢复上次备份的数据。如果不存在备份数据库则创建一个新的数据库。同时支持加密数据库的备份能力。 运作机制 分布式数据服务支撑HarmonyOS系统上应用程序数据库数据分布式管理支持数据在相同帐号的多端设备之间相互同步为用户在多端设备上提供一致的用户体验分布式数据服务包含五部分 服务接口 分布式数据服务提供专门的数据库创建、数据访问、数据订阅等接口给应用程序调用接口支持KV数据模型支持常用的数据类型同时确保接口的兼容性、易用性和可发布性。 服务组件 服务组件负责服务内元数据管理、权限管理、加密管理、备份和恢复管理以及多用户管理等、同时负责初始化底层分布式DB的存储组件、同步组件和通信适配层。 存储组件 存储组件负责数据的访问、数据的缩减、事务、快照、数据库加密以及数据合并和冲突解决等特性。 同步组件 同步组件连结了存储组件与通信组件其目标是保持在线设备间的数据库数据一致性包括将本地产生的未同步数据同步给其他设备接收来自其他设备发送过来的数据并合并到本地设备中。 通信适配层 通信适配层负责调用底层公共通信层的接口完成通信管道的创建、连接接收设备上下线消息维护已连接和断开设备列表的元数据同时将设备上下线信息发送给上层同步组件同步组件维护连接的设备列表同步数据时根据该列表调用通信适配层的接口将数据封装并发送给连接的设备。 应用程序通过调用分布式数据服务接口实现分布式数据库创建、访问、订阅功能服务接口通过操作服务组件提供的能力将数据存储至存储组件存储组件调用同步组件实现将数据同步同步组件使用通信适配层将数据同步至远端设备远端设备通过同步组件接收数据并更新至本端存储组件通过服务接口提供给应用程序使用。 图1 数据分布式运作示意图 约束与限制 应用程序如需使用分布式数据服务完整功能需要申请ohos.permission.DISTRIBUTED_DATASYNC权限。分布式数据服务的数据模型仅支持KV数据模型不支持外键、触发器等关系型数据库中的功能。分布式数据服务支持的KV数据模型规格 设备协同数据库针对每条记录Key的长度≤896 ByteValue的长度4 MB。单版本数据库针对每条记录Key的长度≤1 KBValue的长度4 MB。每个应用程序最多支持同时打开16个分布式数据库。 分布式数据库与本地数据库的使用场景不同因此开发者应识别需要在设备间进行同步的数据并将这些数据保存到分布式数据库中。分布式数据服务当前不支持应用程序自定义冲突解决策略。分布式数据服务针对每个应用程序当前的流控机制KvStore的接口1秒最大访问1000次1分钟最大访问10000次KvManager的接口1秒最大访问50次1分钟最大访问500次。分布式数据库事件回调方法中不允许进行阻塞操作例如修改UI组件。如需进行此类复杂操作建议使用线程管理方式处理。 分布式数据服务开发 场景介绍 分布式数据服务主要实现用户设备中应用程序的数据内容的分布式同步。当设备1上的应用A在分布式数据库中增、删、改数据后设备2上的应用A也可以获取到该数据库变化。可在分布式图库、信息、通讯录、文件管理器等场景中使用。 接口说明 HarmonyOS系统中的分布式数据服务模块为开发者提供下面几种功能 **表1 **分布式数据服务关键API功能介绍 开发步骤 以单版本分布式数据库为例说明开发步骤。 在config.json中添加permisssion权限。 // 添加在abilities同一目录层级 reqPermissions: [{name: ohos.permission.DISTRIBUTED_DATASYNC} ]应用启动时需要弹出授权提示框请求用户进行授权。 根据配置构造分布式数据库管理类实例。 根据应用上下文创建KvManagerConfig对象。创建分布式数据库管理器实例。 以下为创建分布式数据库管理器的代码示例 Context context getApplicationContext(); ... KvManagerConfig config new KvManagerConfig(context); KvManager kvManager KvManagerFactory.getInstance().createKvManager(config);获取/创建单版本分布式数据库。 声明需要创建的单版本分布式数据库ID描述。创建单版本分布式数据库默认开启组网设备间自动同步功能如果应用对性能比较敏感建议设置关闭自动同步功能setAutoSync(false)主动调用sync接口同步。 以下为创建单版本分布式数据库的代码示例 try {Options options new Options();options.setCreateIfMissing(true).setEncrypt(false).setKvStoreType(KvStoreType.SINGLE_VERSION);String storeId testApp;SingleKvStore singleKvStore kvManager.getKvStore(options, storeId); } catch (KvStoreException e) {HiLog.warn(LABEL_LOG, getKvStore: e.getKvStoreErrorCode()); }说明 组网设备间同步数据的场景建议在应用启动时打开分布式数据库获取数据库的句柄。在该句柄如上例中的singleKvStore的生命周期内无需重复创建数据库可直接使用句柄对数据库进行数据的插入等操作。 如果没有调用kvManager.closeKvStore()方法关闭句柄则该句柄会一直存在直到程序结束。 订阅分布式数据变化。 1. 客户端需要实现KvStoreObserver接口。 2. 构造并注册KvStoreObserver实例。 以下为订阅单版本分布式数据库所有本地及远端数据变化通知的代码示例 class KvStoreObserverClient implements KvStoreObserver {Overridepublic void onChange(ChangeNotification notification) {ListEntry insertEntries notification.getInsertEntries();ListEntry updateEntries notification.getUpdateEntries();ListEntry deleteEntries notification.getDeleteEntries();} }KvStoreObserver kvStoreObserverClient new KvStoreObserverClient(); singleKvStore.subscribe(SubscribeType.SUBSCRIBE_TYPE_ALL, kvStoreObserverClient);将数据写入单版本分布式数据库。 构造需要写入单版本分布式数据库的Key(键)和Value(值)。将键值数据写入单版本分布式数据库。 以下为将字符串类型键值数据写入单版本分布式数据库的代码示例 try {String key todayWeather;String value Sunny;singleKvStore.putString(key, value); } catch (KvStoreException e) {HiLog.warn(LABEL_LOG, putString: e.getKvStoreErrorCode()); }如果应用对性能比较敏感建议使用批量写入接口putBatch。查询单版本分布式数据库数据。 构造需要从单版本分布式数据库快照中查询的Key(键)。从单版本分布式数据库快照中获取数据需要捕获KvStoreException。 以下为从单版本分布式数据库中查询字符串类型数据的代码示例 try {String key todayWeather;String value singleKvStore.getString(key); } catch (KvStoreException e) {HiLog.warn(LABEL_LOG, getString: e.getKvStoreErrorCode()); }同步数据到其他设备。 1. 获取已连接的设备列表。 2. 选择同步方式进行数据同步。 以下为单版本分布式数据库进行数据同步的代码示例其中同步方式为PUSH_ONLY ListDeviceInfo deviceInfoList kvManager.getConnectedDevicesInfo(DeviceFilterStrategy.NO_FILTER); ListString deviceIdList new ArrayList(); for (DeviceInfo deviceInfo : deviceInfoList) {deviceIdList.add(deviceInfo.getId()); } singleKvStore.sync(deviceIdList, SyncMode.PUSH_ONLY);关闭单版本分布式数据库。如果组网设备间不再需要同步数据并且本地也不再访问就可以执行关闭数据库的操作。以下为关闭单版本分布式数据库的代码示例 try {kvManager.closeKvStore(singleKvStore); } catch (KvStoreException e) {HiLog.warn(LABEL_LOG, closeKvStore: e.getKvStoreErrorCode()); }删除单版本分布式数据库。以下为删除单版本分布式数据库的代码示例 try {kvManager.deleteKvStore(storeId); } catch (KvStoreException e) {HiLog.warn(LABEL_LOG, deleteKvStore: e.getKvStoreErrorCode()); }为了能让大家更好的学习鸿蒙 (OpenHarmony) 开发技术这边特意整理了《鸿蒙 (OpenHarmony)开发学习手册》共计890页希望对大家有所帮助https://qr21.cn/FV7h05 《鸿蒙 (OpenHarmony)开发学习手册》https://qr21.cn/FV7h05 入门必看https://qr21.cn/FV7h05 应用开发导读(ArkTS)…… HarmonyOS 概念https://qr21.cn/FV7h05 系统定义技术架构技术特性系统安全 如何快速入门https://qr21.cn/FV7h05 基本概念构建第一个ArkTS应用构建第一个JS应用…… 开发基础知识https://qr21.cn/FV7h05 应用基础知识配置文件应用数据管理应用安全管理应用隐私保护三方应用调用管控机制资源分类与访问学习ArkTS语言…… 基于ArkTS 开发https://qr21.cn/FV7h05 Ability开发UI开发公共事件与通知窗口管理媒体安全网络与链接电话服务数据管理后台任务(Background Task)管理设备管理设备使用信息统计DFX国际化开发折叠屏系列……
http://www.zqtcl.cn/news/385726/

相关文章:

  • 网站开发 模板 c沈阳市建设工程质量检测中心网站
  • 企业网站设计专业好吗做钓鱼网站要具备什么
  • 广西备案工信部网站用asp.net做后台网站
  • 静态网站漏洞wordpress 外卖
  • 暗网做网站温州做网络推广的公司
  • 网站描述 修改上海火迎网络推广运营优化
  • 黄石网站建设哪家专业做个网站费用
  • 免费做的网站怎么设置域名解析宁夏百度seo
  • 化妆品产品的自建网站有哪些阿里云cdn wordpress错位
  • 增加网站流量网站新闻字体
  • 做外贸建网站需要推广吗服装如何做微商城网站
  • 上海市建设安全协会网站查询考试伪静态 wordpress
  • 网站免费建站o网站编程多少钱
  • 建设网站开发海外推广服务
  • 网站建设需要提供的资料文档营销平台建设
  • 做个响应式网站多少钱河南网络推广系统
  • wordpress的后台文章图文发布清远市seo广告优化
  • 长沙的互联网网站公司招标文件免费下载网站
  • icp备案系统网站品网站建设公司排名
  • 什么网站可以做音乐相册可信的品牌网站建设
  • 洛阳网站建设优惠公司网站查询ip地址
  • 学校网站模版电影网站要怎样做才有出路
  • 无锡网站建设 微信企业网站建设与管理期末考试
  • 海南海口网站开发公司怎么建立微网站?
  • 网站建设 鄂icp备app 微网站
  • 西安做网站seo网站站内优化怎么做
  • 建设网站方案公司wordpress 视差主题
  • 网站 建设 语言wordpress同步
  • 三水 网站建设建设部网站网上大厅
  • 深圳高端企业官方网站建设最好的网站设计开发公司