数据同步

Posted syncnavigator

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据同步相关的知识,希望对你有一定的参考价值。

技术图片

  SyncNavigator是一款功能强大的数据库同步软件,适用于SQL SERVER, mysql,具有自动/定时同步数据、无人值守、故障自动恢复、同构/异构数据库同步、断点续传和增量同步等功能,支持Windows xp以上所有操作系统,适用于大容量数据库快速同步。

安装包下载地址:https://www.syncnavigator.cn/Setup.zip

帮助文档地址:https://www.syncnavigator.cn/Help_zh-CN.chm

Web文档地址:https://www.syncnavigator.cn/chm/index.htm

技术图片

技术图片


创建第一个同步项目


使用 HKROnline SyncNavigator 创建一个数据库同步项目。只需要通过简单的配置,创建完成后您可以随时执行数据库同步任务。

1.点击 “SyncNavigator(Client)” 图标进入系统。

2.在登录界面中输入连接到的服务器地址,点击 “确定” 按钮开始连接。

  • 注意:这里不是登陆您的数据库,而是登陆到本软件的管理端。
  • 默认情况下直接点击 “连接” 按钮即可(本机默认已经安装)。
  • 默认服务器登录用户名为 “admin” 密码为空。
  • 本机服务器地址 = 127.0.0.1 。
  • 您可以使用域名或者IP地址作为服务器地址。如果指定了端口号可以使用 IP:Port 方式填写。

    有时,您需要将Common Data Service数据与其他系统中存储的数据进行同步和集成。通用数据集成模式包括从外部系统获取数据并将其推送到通用数据服务,从通用数据服务获取数据并将其同步到某些外部数据存储,或使用外部数据更新通用数据服务。现在,您可以使用多种新功能来简化编写代码以实现这些方案的过程。

    这些新功能可以在任何情况下根据需要单独使用,但是它们一起解决了与外部数据同步和集成有关的常见问题。下表介绍了这些新功能。

    数据同步
    特征描述
    删除专用消息 通用数据服务具有许多用于更新记录的特定操作的专用消息。这些消息在此版本中已弃用,您现在应该仅使用它们Update来执行相同的操作。弃用的消息是:

     

    -分配
    – SetParentSystemUser
    – SetParentTeam
    – SetParentBusinessUnit
    – SetBusinessEquipment
    – SetBusinessUnit
    – SETSTATE

    简单地更新记录比使用这些信息更简单,并应简化开发数据集成和同步方案。详细信息:使用更新执行专门的操作

    备用键 在通用数据服务的企业部署中,通常将来自外部企业系统的数据加载到通用数据服务中,以便可以将其呈现给用户。这些外部系统通常无法扩展为存储系统同步所需的通用数据服务记录标识符,即GUID。常见的解决方案是向“通用数据服务”中的实体添加自定义属性,该属性可用于在外部系统中存储相关记录的标识符。

     

    当您建立数据加载过程以更新Common Data Service中的记录并为Common Data Service中的相关记录分配引用时,首先必须进行一次额外的Common Data Service Web服务调用,以基于此外部标识符检索目标Common Data Service记录。 。如果没有为自定义属性设置适当的索引,则此查找可能会很慢,并且在Common Data Service方案中,这些查找中的每一个都需要在Internet上进行昂贵的往返。这些额外的往返行程可以将更新每个Common Data Service记录所需的时间增加一个数量级,并且可以大大降低总体吞吐量。

    现在,Web服务操作可以使用一个或多个备用键而不是GUID来针对Common Data Service记录。另外,可以使用一个或多个备用键来指定对相关记录的实体引用。因为索引了备用键,所以与添加自定义属性作为标识符相比,查找操作显示出更高的性能。如果出现问题,系统将引发错误并回滚所有更改。详细信息:为实体定义备用键

    变更追踪 当组织需要在外部存储中维护Common Data Service数据时,现在可以通过检测自从最初提取或最后同步数据以来发生了哪些数据更改,从而以一种高性能的方式使该数据保持同步。该RetrieveEntityChangesRequest消息被用于检索实体的变化。有关更多信息,请参阅使用更改跟踪将数据与外部系统同步
    增补 从外部系统将数据加载到Common Data Service中时,您可能不知道一条记录是否已存在于Common Data Service中并应被更新,或者您是否必须创建新记录。在一个API调用中,使用新的UpsertRequest消息更新记录(如果存在),或创建新记录(如果不存在)。详细信息:使用Upsert使用外部数据更新Dynamics 365

    下表比较了有无这些新功能时同步的复杂性。

    表2
    之前描述
    技术图片 对于每个记录:

     

    1.查询通用数据服务以查看该帐户是否存在。如果存在,请获取其帐户ID(例如,ABC123)
    。2.查询联系人以验证该联系人是否存在。如果存在,请获取联系人的电子邮件ID(例如contact@company.com)。
    3.查询以获取或设置区域ID(例如NW)。
    4.查询以获取用于设置所有者的用户ID(例如,user @ mycompany.com)
    。5.更新帐户。
    6.通过调用SetStateAPI 设置帐户的状态。
    7.通过调用AssignAPI 分配所有者。

    现在,有了新功能,只需调用一次服务器即可执行与先前所示相同的操作。

    表3
    描述
    技术图片 只需一个电话即可验证是否存在一个具有唯一ID ABC123的帐户,将主要联系人设置为contact@company.com,将区域设置为NW,将所有者设置为user@mycompany.com,并将状态设置为有效。

    在这个部分

    定义实体的
    备用键
    使用备用键使用更改跟踪与外部系统同步数据
    使用Upsert
    Sample 使用外部跟踪更新Dynamics 365 使用Upsert Sample插入或更新记录
    :使用更改跟踪将数据与外部系统同步

     

     

以上是关于数据同步的主要内容,如果未能解决你的问题,请参考以下文章

多线程 Thread 线程同步 synchronized

Android:处理同步网络调用

同步代码 [重复]

php 测试同步片段

超大文件同步容易中断 怎么办?

ReleaseMutex:从非同步代码块调用对象同步方法