SQL Server数据库拉取数据到IDaaS

最后更新时间:2023年05月04日

1. 场景描述

image.png

  1. 从SQL Server 数据库表通过标准sql语句查询相关数据,拉取到数据同步模块。

  2. 数据同步模块对原始数据进行映射转换,生成IDaaS需要的目标数据。

  3. 数据同步模块调用IDaaS接口推送数据到IDaaS系统。

2. 支持的对象

支持同步组织机构,账户数据到IDaaS系统。

3. 数据同步配置

在管理员界面,点击同步任务 -》 添加同步任务 -》上游同步 -》SQLServer。
image.png
image.png

3.1. 基本信息配置

3.1.1. 同步任务名称:

同步任务名称不允许重复。长度不超过32字符。
image.png

3.1.2. 上游配置:

新建配置,或者选择已有配置。
新建配置:

  • 上游配置名称:不允许重复。长度不超过32字符。

  • 数据库名称:填写SQLServer里面的数据库名,如idaas。

  • 数据库地址:填写数据库连接地址,如127.0.0.1。

  • 数据库端口:填写数据库端口号,如1433。

  • 账户名:登录数据库时的账户名,如root。

  • 密码:登录数据库时的密码。

  • 用户唯一标识:用户表里面标识用户的字段,如user_id。

  • 组织唯一标识:组织机构表里面标识组织机构的字段,如organ_id。

  • 账户信息表名或SQL语句:用于存储账户信息的表名称,如account。也可以填写表查询语句,如select * from account。

  • 机构信息表名或SQL语句:用于存储组织机构信息的表名称,如organization。也可以填写表查询语句,如select * from organization。

  • 机构的父节点字段名:组织机构父级节点的标识字段。如parent_id。

  • 增量查询字段名:用于进行数据增量查询的字段名,如is_increment。

  • 增量/全量:如果选择全量同步,将进行全量数据拉取。如选择增量同步,将使用增量查询字段进行数据的增量拉取。

  • 连接测试:测试数据同步模块是否能和SQL Server正常通信,账户密码是否正确。

FireShot Pro Webpage Capture 003 - '云盾IDaaS IT管理员' - localhost.png

3.1.3. 授权信息:

关联应用是为了根据应用进行接口范围和数据范围的管理,保证idaas数据的安全性。
image.png
应用API状态:开启:允许调用IDaaS接口。关闭:不允许调用IDaaS接口。
接口范围:设置同步任务允许调用哪些接口。请根据需要,选择开放调用的接口。
数据范围:设置在拉取idaas数据时,可以从哪些组织层级查询到数据。

3.1.4. 规则配置:

  • IDaaS根节点标识:

选择需要同步到IDaaS的组织机构根节点,选择后,后续所有数据以该节点为根节点进行同步。如果不选择,默认同步到IDaaS人事组织根节点。

  • 上游系统根节点标识:

填入上游业务系统的根节点标识,SQL Server 同步不需要填写该项。

  • 同步类型:

选择需要同步的对象类型,如:组织机构,账户。SQL Server 暂不支持组同步。

  • 默认密码:

同步账户时,若账户映射的密码字段值为空,则使用该默认密码进行填值。该项非必填。

  • 增改模式:

开启后,系统在同步数据前,将根据检测字段检测数据是否已存在,如存在则进行修改同步,否则进行新建同步。SQL Server 同步只支持外部ID字段检测。
image.png

4. 字段映射

字段映射主要作用为把来源的原始数据,根据所配置的字段映射规则,转换成目标所需要的数据。
字段映射方式分为:字段映射和脚本映射。
字段映射:一对一的直接映射,直接把来源字段映射为目标所需要字段。
脚本映射:根据groovy脚本所配置的内容,对来源数据进行处理之后,再映射到目标字段。groovy脚本配置方式请参考文章:
connector groovy脚本使用文档

新增字段映射:
点击添加按钮,选择映射方式,选择字段值,如果字段值在下拉列表中不存在,可以手动输入。SQL Server 同步字段值请手动填入数据库表想要映射的字段名。
image.png

5. 同步策略

5.1. 同步方式

同步方式分为三种:手动,定时,实时。

5.1.1. 手动:

手动同步指管理员手动触发同步任务。可在同步任务页面点击立即同步按钮,进行立即同步。该同步方式下,同步任务会根据配置好的信息,从来源默认根节点下,拉取所需要同步的对象(组织机构,账户),同步到下游系统中。
image.png

5.1.2. 定时:

定时同步指根据同步任务配置的定时任务执行计划,进行数据的同步。也可以进行手动触发。
定时任务又分为周期执行和定时执行两种。
周期执行:勾选“周期执行”并勾选“周二”并选择“间隔02:00”,表示在每个周二每隔2小时执行一次同步任务。
定时执行:勾选“定期执行”并勾选“周二”并选择“02:00:00”,表示在每个周二的2点执行一次同步任务。
image.png

5.1.3. 实时:

实时同步表示当数据源发生变化时,上游业务系统自动触发同步任务实时变更数据。(SQL Server同步不支持实时同步)

5.2. 失败自动重试

该功能主要应对在数据同步过成中,如出现网络短暂波动而造成的数据同步失败的情况。选择失败重试之后,失败的数据将会立即进行重推。重推数据时,不再从来源拉取数据,使用之前已经拉取到的来源数据进行重推。失败重试可以选择重试1,2,3次。
注意:该功能无法解决由于来源数据错误而导致的数据推送失败的情况。
image.png