1.概述
睿治元数据内置丰富的元数据采集适配器,且适配器采用可扩展设计,最大限度满足自动化采集需求。睿治元数据总共支持66种元数据适配器,其中数据库类型有30+种,报表工具有8种,etl工具有8种等,满足用户多样的采集需求。
2.Mysql采集适配器
使用采集向导完成采集配置,通过采集mysql库中元数据讲解元数据的采集。
2.1配置数据源和采集任务
登录睿治后,在【元数据】模块,选择【元数据采集】。
在适配器管理界面,可以看到采集元数据的各种方式。MySQL属于关系型数据库,点击选择【关系型数据库】,可以看到【MySQL采集适配器】。
鼠标移动到【MySQL采集适配器】,会显示添加图标。
点击添加,进入采集向导。
在采集向导中,填写数据源名称,并选择是否需要审核,此处选择“否”(审核选择“是”,则所有的采集数据均需要做入库审核);适配器、工具版本、采集模式默认即可;数据源挂载路径若没有,可选择【新建】。
在跳转的新页面中,选择新建元数据。
元数据代码、名称根据需求命名;元数据类型,在下拉框中选择: 数据库包-关系型数据库包-目录。
完成新建元数据挂载点后,返回采集向导数据源配置界面,先点击刷新,再选择刚刚新建的数据源挂载路径,点击【下一步】。
在数据源参数配置中,配置数据库的url、用户名、密码;配置完成,可点击连接测试,测试成功才能正常采集元数据。最后两项选择“是”,可获取库表注释信息。完成后,点击【下一步】。
采集类型配置界面,可设置采集的元数据类型,以及每类元数据的采集范围,页面默认全部勾选。具体使用章节见《采集任务配置》。
按需选择入库策略和是否自动发布,这里入库策略选择“全量”,自动发布选择“否”。设置完成后,点击【下一步】。
1)入库策略 全量入库:对比挂载点与采集源中的元数据,删除挂载点下多余元数据,添加缺失元数据,更新差异元数据;删除多余依赖关系,添加缺失依赖关系。 追加入库:对比挂载点与采集源中的元数据,保留挂载点下多余元数据,添加缺失元数据,保留差异元数据;保留多余依赖关系,添加缺失依赖关系。 保守入库:对比挂载点与采集源中的元数据,保留挂载点下多余元数据,添加缺失元数据,更新差异元数据(采集元数据标题或属性不为空时,才将非空值更新到已有元数据);保留多余依赖关系,添加缺失依赖关系。 激进入库:对比挂载点与采集源中的元数据,删除挂载点下多余元数据,添加缺失元数据,更新差异元数据(采集元数据标题或属性不为空时,才将非空值更新到已有元数据);删除多余依赖关系,添加缺失依赖关系。 注:元数据代码和路径相同则认为是相同元数据。 2)自动发布 否:是指采集入库后只进入最新元数据。 是:是指采集入库后进入最新元数据且自动发布为定版元数据。
|
最后配置计划任务,填写计划任务名称,设置计划任务执行的周期。若勾选启用,计划任务会根据配置定期自动执行。也可以手动执行计划任务。点击【完成】,数据源和采集任务创建完毕。
创建完成后,在【数据源管理】中可查看、修改该数据源信息。
在【采集任务配置】中可查看、修改该采集任务设置。
2.2执行采集任务
切换到【采集任务配置】模块,找到之前创建好的计划任务,点击【立即运行】,即可开始元数据的采集。
在弹出的窗口中可以看到采集任务执行进度。
采集任务执行完成后,点击采集任务名称可查看执行日志。也可以在【采集日志】模块查看执行日志。
采集成功后,在【元数据】-【元数据管理】-【最新元数据】中可查看采集到的元数据。
如果数据源中设置了入库审核,则入库审核通过后才会进入到最新元数据中
3.JDBC采集适配器
采集数据库的元数据时,既可以使用各数据库自己的采集适配器进行采集,也可以使用JDBC采集适配器进行采集,且JDBC采集适配器支持设置采集范围,包括设置采集的元数据类型以及元数据范围。
3.1采集数据源配置
1)方式一
根据实际需求进行数据源配置。比如下图为采集某个oracle数据库的数据源配置,schemas参数设置的是wlf3,表示采集wlf3这个数据库用户下的元数据。
驱动类(driver)和数据库访问URL(url)默认给的是oracle数据库的配置示例,如果是采集其他类型数据库,需要进行相应修改。这里支持的数据库类型以及driver和url示例见下面表格:
类型 | 数据库 | driver | url |
关系型数据库 | Oracle | oracle.jdbc.driver.OracleDriver | jdbc:oracle:thin:@127.0.0.1:1521/servicename |
Mysql | com.mysql.jdbc.Driver | jdbc:mysql://127.0.0.1:3306/dbname?useUnicode=true&characterEncoding=utf8 | |
DB2 | com.ibm.db2.jcc.DB2Driver | jdbc:db2://127.0.0.1:50000/dbname | |
SQL Server | com.microsoft.sqlserver.jdbc.SQLServerDriver | jdbc:sqlserver://127.0.0.1:1433;databaseName=dbname; | |
Sybase ASE | com.sybase.jdbc3.jdbc.SybDriver | jdbc:sybase:Tds:127.0.0.1:5000/dbname?charset=cp936 | |
PostgreSQL | org.postgresql.Driver | jdbc:postgresql://127.0.0.1:5432/dbname | |
Greenplum | com.pivotal.jdbc.GreenplumDriver | jdbc:pivotal:greenplum://127.0.0.1:5432;DatabaseName=dbname | |
Informix | com.informix.jdbc.IfxDriver | jdbc:informix-sqli://172.0.0.1:9088/dbname:INFORMIXSERVER=ifxserver;NEWCODESET=GBK,8859-1,819,Big5;NEWLOCALE=en_us,zh_cn; | |
国产数据库 | ArteryBase | com.thunisoft.ArteryBase.Driver | jdbc:ArteryBase://127.0.0.1:5432/test?Charset=utf8 |
Gbase | com.gbase.jdbc.Driver | jdbc:gbase://172.0.0.1:5258/test_gbase | |
Huawei-elk | org.postgresql.Driver | jdbc:postgresql://127.0.0.1:25108/dbname?currentSchema=public | |
KingBase8 | com.kingbase8.Driver | jdbc:kingbase8://127.0.0.1:54321/dbname | |
LinkoopDB | com.datapps.linkoopdb.jdbc.JdbcDriver | jdbc:linkoopdb:tcp://127.0.0.1:9105/db_name | |
MaxCompute | com.aliyun.odps.jdbc.OdpsDriver | jdbc:odps:http://service.cn-beijing.maxcompute.aliyun.com/api?project=ODM | |
PetaBase2.1 | com.esen.jdbc.PetaBaseDriver | jdbc:petabase://127.0.0.1:21050/dbname;auth=noSasl | |
星环Transwarp | org.apache.hive.jdbc.HiveDriver | jdbc:hive2://127.0.0.1:10000/default | |
达梦数据库 | dm.jdbc.driver.DmDriver | jdbc:dm://127.0.0.1:5236 | |
大数据库 | Hive | org.apache.hive.jdbc.HiveDriver | jdbc:hive2://127.0.0.1:10000/default |
Vertica | com.vertica.jdbc.Driver | jdbc:vertica://127.0.0.1:5433/testdb |
也可以先在【数据集成】-【数据源】中创建一个指向待采集数据库的连接池(这里选择相应的数据库类型可以自动带出驱动类和url示例)。
然后在采集数据源配置这里选择上面建好的连接池,会直接带出驱动类、url、用户名和密码等设置,再补充其他参数值的设置。
3.2采集类型配置
在采集类型配置界面,可设置采集的元数据类型,以及每类元数据的采集范围。
比如,只采集表和视图,以及他们的组合项(字段、索引等),且表只采集以DIM_和FACT_开头的表,视图只采集VFACT_GRZB和VFACT_YGQJ。具体设置如下图。
注:表、视图和字段集下都有字段,他们都是同一种元模型——字段元模型。不能精确到比如只采集表的字段,不采集字段集的字段。只能字段要么采集,要么不采集。故这里不能去掉字段集的勾选。
可以看到,左侧的采集列表用于勾选需要采集的元数据类型,默认都是勾选的。
点击选中采集列表中的元数据节点,右侧页面用于设置这类元数据的采集范围。【包含项】是要采集的元数据,不设置代表采集全部;【排除项】是不采集的元数据,不设置代表无。
4.数据工厂平台采集适配器
随着版本的发布,元数据采集需要支持采集数据工厂更高的版本,现产品数据工厂采集适配器支持了4.5.x、4.6.x、4.7.x版本。
4.1配置采集数据源
以采集数据工厂4.7.1为例,首先在元数据管理-最新元数据页面,点击【新建】按钮,新建元数据,输入代号和标题,元数据类型选择“数据工厂平台”,点击【下一步】后确定保存。
在元数据采集-数据源管理页面,点击【新建】按钮,新建采集数据源,输入采集数据源的基本信息,其中适配器选择数据工厂平台采集适配器,版本选择4.6.x。
点击【下一步】,输入数据源的url,用户名和密码,测试连接成功后点击【完成】按钮。
4.2配置采集任务
在元数据采集-采集任务配置页面,点击【新建】按钮新建采集任务,选择数据源和采集策略。
点击【下一步】,输入采集任务标题,点击【完成】按钮。
4.3执行采集任务
点击【立即执行】按钮,执行采集数据工厂461的任务,采集完成后,在入库审核页面点击【通过】。
审核通过后,在最新元数据页面可以看到采集的元数据内容。
5.Excel采集适配器
在采集各系统和工具的元数据时,如果没有配套的适配器或者不能联通而导致无法自动采集元数据,则可以下载excel模板,录入元数据信息和依赖后,使用Excel采集适配器将excel数据采集到平台中。
使用Excel采集适配器采集元数据的操作方法同Excel补录适配器,具体见下一节《6.Excel补录适配器》章节。唯一的差别是建采集数据源时设置【数据源挂载路径】这里,如果是Excel补录适配器,这里可以选择任意挂载点,而对于Excel采集适配器,这里只能选择全新的挂载点,即没有采集数据源的挂载点。
6.Excel补录适配器
Excel补录适配器,一般用于对已有采集进行补充,比如元数据属性的批量补充,缺失元数据的批量补充,以及数据库中未采集到的依赖关系的批量补充等,且支持跨库依赖的补充。
在前面章节我们使用mysql采集适配器采集了某个mysql数据库的元数据,假设有一批数据库表和字段元数据自动采集不了,这种情况下我们可以在excel中人工录入这些缺少的元数据和依赖关系,然后使用Excel补录适配器将该excel数据采集到平台。下面我们用这个例子来讲解Excel适配器的使用。
【操作步骤】
第一步:创建采集数据源。
在【元数据】-【元数据采集】-【数据源管理】模块,点击【新建】。
在弹出的对话框中,完成数据源基本信息设置,如下图:
其中,
1) 适配器:选择“其他”下的“Excel补录适配器”。
2) 采集模式:分为“文件上传(手动采集)”和“服务器文件(定时采集)”两种模式。文件上传(手动采集),是手动执行采集,执行时需上传excel数据;服务器文件(定时采集),是定时自动执行采集,执行时会到服务器指定位置获取excel数据,指定位置在下一步中设置。按需选择即可,本例我们设置为“文件上传(手动采集)”。
3) 数据源挂载路径:补录到的元数据挂载点。
4) 审核:选择“是”,则采集后需要入库审核,审核通过后采集到的元数据才会进入最新元数据。选择“否”,则采集后无需入库审核,直接进入最新元数据。按需选择即可,本例我们选择“否”。
【保存】,完成采集数据源创建。
第二步:创建采集任务。
在【元数据】-【元数据采集】-【采集任务配置】界面点击【新建】。
在弹出的计划任务向导页面,【数据源】选择上面创建的数据源“Excel补录”,【自动发布】选择“否”,如下图:
注:自动发布为“否”,是指采集入库后只进入最新元数据;自动发布为“是”,是指采集入库后进入最新元数据且自动发布为定版元数据。
【下一步】,给采集任务命名,如下图,点击【完成】,完成采集任务的创建。
Tips: 也可以通过【适配器管理】模块的采集任务创建入口一次性完成采集数据源和采集任务的创建。 |
第三步:准备excel数据。Excel模板在【元数据】-【元数据采集】-【采集模板配置】模块中获取,具体操作如下:
在【采集模板配置】模块,点击【新建】。
输入模板名称,“数据源”选择上面新建的采集数据源,然后按需选择要补录的元数据类型,这里我们勾选“表”和“字段”。
【下一步】,选择表和字段元数据要录入的属性。【确定】,完成模板创建。
在模板列表中点击【导出】,导出该模板。
在导出的excel模板中录入缺失的表、字段和依赖关系。如下图,录入了一张数据库表cs_excel,该表有2个字段ID_和NAME_;另外,还有一条依赖关系,表cs_excel依赖于同挂载点下的表dim_gzdd。
Tips: 1) 在excel中录入依赖关系时只需录入直接依赖。 2) 元数据路径一定要根据模板提示正确填写,否则会影响元数据的入库。 3) 如果是用excel补录适配器进行已有元数据属性的批量补充,则可以导出已有元数据,在导出的excel中完成属性值补充,然后再使用excel补录适配器将该excel的数据采集进来。元数据导出入口如下: |
第四步:执行采集任务,将excel数据采集到平台的最新元数据中。
在【采集任务配置】界面的任务列表里可以找到刚才新建的采集任务,如果没有,点击【刷新】刷新任务列表即可,找到刚才创建的采集任务,点击操作里的【立即执行】,如下图:
在弹出的对话框中,点击选择本地的excel数据文件(第一步中准备好的excel文件)上传,然后点击【立即执行】开始采集。
采集完成后,在最新元数据模块可查看添加进来的元数据和依赖。
7.KTR脚本采集适配器
通过KTR脚本采集适配器,解析KTR脚本,采集元数据及依赖关系,从而得到对应关系型数据库之间的关系。
7.1准备工作
1. 以下面这个ktr脚本为例,该脚本内容涉及std层的STD_ALM_CDB_MODULE_USE_INFO表和ods层的ODS_ALM_CDB_MODULE_USE_INFO表。
2. 先创建关系型数据库的目录挂载点,采集表所在的数据库,确保已采集到std挂载点下的表STD_ALM_CDB_MODULE_USE_INFO和ods挂载点下的表ODS_ALM_CDB_MODULE_USE_INFO。
Tips: 以上提到的std层和ods层是指业务场景中不同的数据分层,也可以理解为不同的数据库。 |
7.2配置数据源和采集任务
在元数据采集的适配器管理页面,选择【其他】分类下的【KTR脚本采集适配器】,点击右上角的添加按钮,进入新建采集向导。
在采集向导中,填写数据源名称,并选择是否需要审核(审核选择“是”,则所有的采集数据均需要做入库审核);适配器、工具版本默认即可;采集模式可选择服务器文件(定时采集)和文件上传(手动采集)。
注:若选择服务器文件(定时采集),在“数据源参数配置”页面需配置ktr脚本文件所在的路径,路径中需写明文件名。
数据源挂载路径若没有,可点击【新建】。
浏览器新标签页打开最新元数据页面,可新建元数据挂载点。
元数据代码、名称根据需求命名;元数据类型,在下拉框中选择: KTR脚本包-KTR挂载点。
完成新建KTR挂载点后,返回采集向导数据源配置界面,先点击刷新,再选择刚刚新建的数据源挂载路径,点击【下一步】。
在数据源参数配置,需设置层级属性,指定层级和数据库挂载点的对应关系。以上ktr脚本涉及std层和ods层,需要指定std层和ods层对应的数据库挂载点,多条关系之间用英文分号分隔,格式为:std=std层挂载点id;ods=ods层挂载点id。
Tips: 挂载点的元数据ID可以在最新元数据的基本信息页面查看: |
完成后,点击【下一步】,配置入库策略和是否自动发布。
点击【下一步】,若采集模式选择服务器文件(定时采集),此页面可配置定时执行的计划任务;若采集模式选择文件上传(手动采集),此页面只配置采集任务标题。
点击【保存】,创建采集数据源和采集任务成功。
Tips: 也可以在【数据源管理】先创建采集数据源,再在【采集任务设置】创建采集任务。 |
7.3执行采集任务
切换到【采集任务配置】模块,找到之前创建好的计划任务,点击【立即执行】,若采集模式选择服务器文件(定时采集),则开始采集,解析服务器上的ktr脚本;若采集模式选择文件上传(手动采集),则弹出上传文件框,选择本地ktr脚本进行上传后,再开始采集元数据。
Tips: 支持上传单个脚本文件(文件后缀是.ktr或.kjb)或者批量zip包。 |
点击立即执行后,打开的页面可以看到采集任务执行进度。
采集成功后,若数据源设置不审核,则在【元数据管理】-【最新元数据】中可查看采集到的元数据;若数据源设置了入库审核,则入库审核通过后才会进入到最新元数据中。
7.4进行元数据分析
KTR脚本采集,能采集到脚本中的数据分层、KTR表、KTR字段。
KTR脚本采集,能采集到的依赖关系有3种:
1、ktr字段和ktr字段之间的依赖。
2、ktr字段和与实际数据库字段的依赖、
3、根据ktr层级配置的对应数据库挂载点id,生成实际层的数据库之间,字段和字段的依赖。
具体举例如下:
1. 从脚本中可解析到STD层表的CREATE_TIME字段,数据来源于ODS层表的CREATE_TIME字段,因此KTR挂载点下,可以采集到STD层的KTR字段【CREATE_TIME】依赖ODS层的【CREATE_TIME】字段。
2. 由于层级设置配置std层对应的数据库挂载点是【pg_std挂载点】,因此,可以采集到STD层的KTR字段【CREATE_TIME】依赖【pg_std挂载点】下的数据库字段【CREATE_TIME】。
同理,ODS层的KTR字段【CREATE_TIME】也会依赖数据库字段。
3. 层级设置配置std层对应的数据库挂载点是【pg_std挂载点】,ods层对应的数据库挂载点是【pg_ods挂载点】。除了以上两种依赖,还可以采集到【pg_std挂载点】的数据库字段【CREATE_TIME】依赖【pg_ods挂载点】的数据库字段【CREATE_TIME】
对STD层的KTR字段【CREATE_TIME】进行全链分析,可以看到这三种依赖关系。
KTR脚本采集的最终目的,是通过解析脚本,建立起不同数据库(分层)之间的关联。 因此从关系型数据库侧查看分析时,会隐藏ktr脚本元模型类型的数据,只显示数据库元数据之间的关系。
8.MAPPING导入适配器
为了人工补充数据库中表->表、字段->字段之间的依赖关系,可以使用MAPPING导入适配器进行采集。
8.1导出并填写MAPPING关系模板
在【采集模板配置】页面点击【导出MAPPING关系模板】,导出模板文件。
先填写目标挂载点ID和源挂载点ID。
Tips: 挂载点的元数据ID可以在最新元数据的基本信息页面查看: |
【目标表表名】只能填写一个,【源表表名】可以填写多个。
注:如果目标表有多个,想批量添加,可以增加excel的sheet页,复制模板内容,分不同的sheet页添加不同的目标表。
根据上图的excel文件,可以添加以下依赖:
(1) 表和表的直接依赖:
源端的GL_DETAI -> 目标端的 F_FA_CASH_FLOW_CASE
源端的GL_CASHFLOWCASE -> 目标端的 F_FA_CASH_FLOW_CASE
源端的D_CASHFLOW -> 目标端的 F_FA_CASH_FLOW_CASE
源端的BD_CURRTYPE -> 目标端的 F_FA_CASH_FLOW_CASE
(2) 字段和字段的直接依赖:
源端的PK_DETAIL -> 目标端的DETAIL_ID
源端的INNERCODE -> 目标端的CASH_FLOW
源端的NAME -> 目标端的CASH_FLOW_NAME
源端的CODE -> 目标端的CURRENCY
源端的MONEY -> 目标端的AMT
源端的YEARV -> 目标端的BBQ
8.2配置数据源和采集任务
在元数据采集的适配器管理页面,选择【其他】分类下的【MAPPING导入适配器】,点击右上角的添加按钮,进入新建采集向导。
在采集向导中,填写数据源名称,并选择是否需要审核(审核选择“是”,则所有的采集数据均需要做入库审核);适配器、工具版本默认即可;采集模式可选择服务器文件(定时采集)和文件上传(手动采集)。
注:若选择服务器文件(定时采集),在“数据源参数配置”页面需配置mapping模板文件所在的路径,路径中需写明文件名。
数据源挂载路径可选择导入模板中的目标挂载点或源挂载点。
点击【下一步】,配置入库策略。
点击【下一步】,若采集模式选择服务器文件(定时采集),此页面可配置定时执行的计划任务;若采集模式选择文件上传(手动采集),此页面只配置采集任务标题。
点击【保存】,创建采集数据源和采集任务成功。
Tips: 也可以在【数据源管理】先创建采集数据源,再在【采集任务设置】创建采集任务。 |
8.3执行采集任务
切换到【采集任务配置】模块,找到之前创建好的计划任务,点击【立即执行】,若采集模式选择服务器文件(定时采集),则开始采集,解析服务器上的mapping关系模板文件;若采集模式选择文件上传(手动采集),则弹出上传文件框,选择本地mapping关系模板进行上传后,再开始采集元数据。
Tips: 只支持上传单个mapping关系模板文件,文件中可以添加多个sheet页。 |
点击立即执行后,打开的页面可以看到采集任务执行进度。
Tips: MAPPING导入采集,只会添加依赖,不会添加元数据。若模板中的表和字段在对应挂载点下不存在时,会跳过导入这条依赖。 |
采集成功后,若数据源设置不审核,则在【元数据管理】-【最新元数据】中可查看采集到的依赖;若数据源设置了入库审核,则入库审核通过后才会进入到最新元数据中。
请先登录