欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

达梦ETL

时间:2023-06-16

一、概述
达梦数据交换平台(简称DMETL)是在总结了众多大数据项目经验和需求并结合最新的大数据发展趋势的基础上研发的具有自主版权的数据处理与集成平台。达梦数据交换平台创新地将传统的ETL工具(Extract、Transform、Loading)与分布式大数据处理平台相结合,实现了对数据同步、数据处理以及数据交换共享的一站式支持,大幅度降低了用户使用各种平台进行大数据整合处理的技术门槛,是构建数据中心、数据仓库、数据交换和数据同步等数据集成类应用的理想平台。
二、ETL的使用
1.连接ORACLE19C
ETL5连接oracle19c时需要使用url进行配置连接。如图所示


选择oracle12c,因为还没有19c的内容,选择oracle12c就可以

url为jdbc:oracle:thin:@localhost:1521/ORCL
2.增量抽取方式
可以根据各种增量抽取方式的特点来选择合适的增量抽取方式,各种方式的特点如下:
触发器增量抽取方式:对 ETL 服务器的负担较小,实现简洁,需要在源数据库中建立触发器,序列,触发器表,适用于数据量大的表,实时性要求较高的场合。
影子表增量抽取方式:通过对比影子表和原表的差异来捕获变更数据,适用于不能创建触发器的地方,可以在另一个可以查询源端用户权限的其他用户下创建表,不会占用源端用户表空间,以及实时性要求要求不高的场合。
3.批量创建流程
当我们使用同一个流程导入规则时可以使用批量创建流程,比如说导入所有表的数据,如图所示

其中指定流程名称中的
#{dataSet1.getDataSetName()}#{index}#{current_timestamp_str()}
这是一个可以自动生成的流程名,dataSet1.getDataSetName()为表名,
index为序号,current_timestamp_str()为时间函数。
选择源表模式编辑属性选择源端需要创建流程的表,

编辑选择目的表,目的表的表名需要使用ETL自带的函数生成

选择#{getDataSetIdByName2 (String dataSourceName,String catalogName,String scheamName ,String dataSetName)}
其中String dataSourceName为目的库的ETL中的数据源名称,String catalogName为目的库的ETL中的库名称,String scheamName为目的库的模式名,String dataSetName为源库的表名可以用dataSet1.getDataSetName()表示
如DM8示例
#{getDataSetIdByName2 (DM8,null,ETL ,dataSet1.getDataSetName())}
DM8没有库名称可以用null表示

以上就是在使用ETL时的内容

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。