创建同步ADS

准备工作

1.准备ADS实例和表结构使用ADS管控台新建ADS集群DataHub同步时,会根据DataHub Field的数据类型同步到对应的ADS数据类型中,对应的类型映射关系如下所示:

DataHub

MySQL

TINYINT

TINYINT

SMALLINT

SMALLINT

INTEGER

INT

BIGINT

BIGINT

STRING

VARCHAR

BOOLEAN

BOOLEAN / TINYINT

FLOAT

FLOAT

DOUBLE

DOUBLE

TIMESTAMP

TIMESTAMP / BIGINT

DECIMAL

DECIMAL

DataHub 中的 TINYINT , SMALLINT , INTEGER , FLOAT 类型从 java sdk 2.16.1-public 开始支持。2.同步说明1)目前DataHub仅支持将TUPLE数据同步到ADS服务中2)ReplaceInto与IgnoreInto: ReplaceInto模式下,会使用replace into语句将数据插入,反之,IgnoreInto会使用insert方式插入数据库(replace into将根据主键覆盖记录,ignore into将忽略冲突进行写入)3)数据同步的时效性正常情况为秒级,即数据写入DataHub中后若干秒内将会同步到ADS,网络异常的情况可能造成重复数据Update,但是保证数据At least once语义。4)ADS的写入性能直接影响同步的性能,若ADS实例性能过低,可能导致DataHub同步较慢,数据堆积,严重情况可能因为同步延迟超过生命周期从而丢失数据。

创建同步任务

  1. 依次进入项目列表/Project详情/Topic详情页面

  2. 点击右上角的 + 同步按钮进行同步任务创建6-1

下面罗列了部分管控台创建同步任务的配置说明,更多更灵活的操作请参考SDK使用。

  1. HostADS服务地址,请务必填写内网地址以确保服务联通性

  2. 导入字段DataHub可以根据用户设置将部分column内容同步到ADS中

  3. 写入模式包括IGNORE和OVERWRITE两种模式

    • IGNORE: 忽略重复数据,即INSERT IGNORE INTO写入

    • OVERWRITE: 更新重复数据,即REPLACE INTO写入

同步示例

  1. 创建ADS实例和表结构在ADS管控台中创建ADS实例和数据表

  2. 建立DataHub Topic在DataHub中建立Topic,示例中为TUPLE类型topic,schema如下图所示:

6-2

3 建立同步任务这里写入模式选择IGNORE,导入所有字段6-3

4 向DataHub中写入TUPLE数据,数据内容如下图所示,共4条数据

6-4

5 . 确认同步数据客户端连接ADS服务查看数据,数据结果如下图所示:6-5

同步ADS3.0

同步ADS3.0请参考:创建ADS3.0同步