💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## 场景五:关系型数据库数据同步到Hive目的地(Oracle到Hive为例) ### 一、核心流程 1\. 创建数据源 & 目的地 2\. 任务设置 3\. 读取设置 4\. 写入设置 5\. 管理数据任务 ### 二、 创建数据源 :-: ![](https://img.kancloud.cn/52/44/5244ec0de22dd1871e74e171a8dfa46a_1216x408.png) * 以Oracle批量读取为例,支持实时读取(LogMinner、Agent)、批量读取的方式 * 单个数据任务只允许选择一个数据库类型作为数据源 * 关系型数据库目前支持「MySQL」、「Oralce」、「SQL Server」、「PostgreSQL」作为数据源。 详情见:[配置数据源](配置数据源.md) ### 三、创建数据目的地 详情见:[配置Hive数据目的地](chapter1/shu-ju-mu-de-di/Hive.md) ### 四、任务设置 * 确定读取端和写入端数据库后,点击「下一步」,进入任务设置。 * 如该任务为重要数据任务,您可在任务设置页面设置重要任务星标。 * 用户需要设置:参与人、数据源设置、数据目的地设置、其他设置 #### 参与人设置 * 「参与人」拥有该任务的浏览和编辑权限,并且会在通知中心收到该数据任务的所有通知,包含: * 操作记录; * 数据任务错误信息; * 错误队列信息。 * 数据源变化设置 #### 数据源设置 * 设置当前任务数据源使用资源组,通过合理分配任务与资源组,可使重要任务计算资源得到保障。 * 设置读取方式,以Oracle数据库为例,会提供两种读取方式:实时模式 & 批量读取 详情见:[Oracle读取设置](Oracle数据源设置.md) #### 数据目的地设置 ![](https://img.kancloud.cn/b0/30/b0304499298b9e3927000cf7eb6138f6_2026x590.png) * 设置当前任务数据目的地使用资源组,通过合理分配任务与资源组,可使重要任务计算资源得到保障。 * 需要配置写入并发数量、写入速率限制,具体参见:[数据目的地设置](数据目的地设置.md) * 高级设置包括:[子任务设置](子任务设置.md)、[数据源变化设置](数据源变化设置.md)、[写入一致性](写入一致性.md) #### 其他设置 详情见:[错误队列设置](错误队列设置.md) 详情见:[邮件通知设置](邮件通知设置.md) ### 五、读取设置 :-: ![](https://img.kancloud.cn/6c/d3/6cd3914730eaaab05ff1a33658876c08_1916x997.png =480x) 进入读取设置页面,用户首先需要选择读取对象,保存后即可看到上图页面。 #### 同步列表 * 读取列表显示该任务实时读取的表,点击任一表名称右侧显示该表的表结构。 * 提供搜索功能,主要支持搜索表名称。 * 点击「编辑」,可重新选择读取对象。 * 提供「批量设置」功能,包括:批量移除读取对象,批量设置执行语句。详情见:[批量功能](批量功能.md) #### 传输队列设置 详情见:[读取设置](如何设置读取规则.md) #### 读取条件设置 详情见:[SQL类型数据源读取条件设置](数据源为SQL类型.md) ### 六:写入设置 :-: ![](https://img.kancloud.cn/42/93/4293f538cdbb5ea1b2256b9313dd213e_1916x994.png =480x) #### 写入列表 * 写入列表显示本次任务中,哪些数据源表会写入到该目的地。 * 提供搜索功能,主要支持搜索表名称。 * 点击「编辑」,可重新选择写入对象。 * 提供「批量设置」功能,包括: * 批量移除读取对象。 * 批量设置表名称(主要用于多表同结构数据往目的地一张表写入场景)。 详情见:[批量功能](批量功能1.md) #### 目的地表结构设置 * 点击任一表名称右侧显示每个目的地表的映射关系(左侧是数据源表结构)。 * 若数据目的地没有同名表,激活任务后DataPipeline会在目的地创建新表。 * 若目的地已存在同名表,目的地表名称右侧会有提示。 * 若该任务往已创建的同名表写入数据,会检查表结构是否一致。 * 若表结构一致(只检查字段名,不检查字段类型和其他属性),则正常写入数据。 * 若表结构不一致(少字段或多字段),则强制改为用户设置的表结构后再进行数据同步。 * 目的地表结构用户可修改字段名称、类型、唯一键等属性 * 「同步」功能 * 开启「同步」,任务激活后该字段数据会写入到目的地。 * 关闭「同步」,目的地依然存在该字段,但不会同步该字段值,会传空。 * 支持用户删除字段或添加字段,添加字段的值需要通过高级清洗指定逻辑。详见:[设置清洗脚本](pzgz/qxjb.md) * 清洗脚本使用方法请见:[设置清洗脚本](pzgz/qxjb.md) * 高级设置: * [子任务设置](子任务设置1.md) * [Hive分区设置](Hive分区设置.md) ### 七、数据任务详情页 #### 「数据任务统计」 * 已读取数据量: * 指 DataPipeline 从数据源已读取的数据量。 * 当 DataPipeline 系统重启,会根据断点续传机制从上一次读取记录点开始重新读取数据,重复读取的数据量不会记录到已读取数据量里。 * 无主键的定时同步时全量替换数据,故每次定时读取全量数据,数据源没有更新的数据会再次读取。 * 已处理数据量: * 指 DataPipeline 已处理的数据量,这里包括:同步到数据目的的数据量和进入到错误队列的数据量。 * 当 DataPipeline 系统重启,会根据断点续传机制从上一个读取记录点开始重新写入部分数据,但这部分数据不会记录到已写入数据量里。 * 错误队列:指已读取的数据中系统判断无法写入到数据目的地,而异步放到错误队列中的数据量。: * 读取速率:指DataPipeline从数据源读取数据的速率。 * 处理速率:指DataPipeline处理数据的速率 #### 「复制任务」 详情见:[复制任务](复制功能.md) #### 「错误队列」 详情见:[错误队列](yun-wei-guan-li/shu-ju-ren-wu-xiang-qing-ye/cuo-wu-dui-lie.md) #### 「消息列表」 详情见:[消息列表](yun-wei-guan-li/shu-ju-ren-wu-xiang-qing-ye/xiao-xi-lie-biao.md) #### 「回滚功能」 详情见:[回滚功能](回滚功能.md) #### 「重新同步」 详情见:[重新同步功能](重新同步功能.md)