项目实施开发
分配实施作业
技术负责人或项目经理分配实施管理任务给实施责任人。一个项目中支持有多个需求、每个需求可以分配给不同的实施责任人。
本最佳实践由技术责任人“解决方案工作台Trial_TD”进行任务分配,将需求分配给不同的实施责任人(本实践分配为“解决方案工作台Trial_TE”)。针对不同的需求,项目实施责任人“解决方案工作台Trial_TE”可以进行作业实施。
数据调研
在项目交付进行方案设计和实施开发之前,需要梳理当前项目中的原始数据有哪些,即数据调研。本实践的数据源如下:
归属系统 |
数据类型 |
DB&表 |
说明 |
---|---|---|---|
源端-门店系统 |
MySQL |
store_mgmt.t_user_store_info |
源端门店基本信息表,需要通过数据调研的方式获取表结构。 |
源端-订单系统 |
MySQL |
order_mgmt.t_trade_order |
源端订单基本信息表,需要通过数据调研的方式获取表结构。 |
目标端-数据中台 |
MRS-Hudi |
|
目标端系统,不需要做数据调研,但是由于后续做数据迁移入湖时需要用到,因此可以在本章节统一创建数据连接。 |
- 实施责任人(本实践设置为“解决方案工作台Trial_TE”)在交付空间内左侧导航栏选择“交付中心-实施管理”,在相应的项目下点击【实施交付】按钮,进入后切换至“作业管理”TAB页下的“数据调研作业”页面。
图2 数据调研作业页面
- 点击【管理应用系统和数据连接】,创建公司组织架构信息。
在开始对调研对象进行监控前,需要创建应用系统列表,用于展示公司的组织架构信息。后续的数据连接以及监控等需要按照组织架构进行划分。图3 创建组织架构信息
如上图所示,创建了三个应用系统,分别表示源端的门店和订单系统、以及目标端的数据中台管理系统。
- 创建数据连接。
按照公司组织架构,根据对应的连接系统和数据库连接类型管理用户的数据连接,以便完成数据调研以及后续的数据实施。
图4 创建数据连接
在本实践中,需要将客户源端的MySQL数据迁移至云上MRS,如下图所示为本实践配置的数据连接,分别是源端的两个MySQL连接和目标端的一个MRS Hudi连接。
图5 数据连接清单
- 添加监控对象,配置想要采集的数据连接的库表信息,以及所需采集的空值字段的表名和表字段名。
图6 配置调研规则入口
- 为了做源端数据调研,需要对源端系统进行监控,若需要对字段的空置率进行检测,则可配置要检测的字段名。
- 点击右下角的【下一步】,配置鉴权码。本实践选择【关闭】。
数据调研结果可在线上报或离线导入。若运行调研工具的服务器可访问公网,则可在此选择【开启】鉴权码,将开启状态的鉴权码配置到数据调研的配置文件中,数据调研结果将会在线上报至解决方案工作台;否则需要离线导入,此时可选择【关闭】鉴权码。
图8 配置鉴权码
- 点击右下角的【下一步】,配置采集规则。
解决方案工作台支持使用调研工具对源系统进行数据调研,支持配置数据调研规则,包含DB、表信息等采集周期和具体时间,若未配置,则按默认规则进行数据采集。
- DB采集:配置数据库采集时间,如:数据库类型,数据库表数,数据总量,采集时间。
- 表信息采集:配置表的采集时间。
- 字段采集:配置字段采集时间。
- 上报采集:配置库、表、字段采集信息的上报时间。
- 删除字段:各项目根据自己公司的实际情况,配置表在软删除时删除字段的名称。
图9 配置采集规则
- 点击【确定】,将会自动下载配置文件application.properties。您可以将配置文件保存至本地并补充待调研系统的数据库登录信息。
配置文件中包含了前面配置的规则、数据源信息等,用户可以修改配置文件中的信息。由于解决方案工作台不记录数据库密码,因此下载配置文件后可自行在文件中补充数据库登录密码。
图10 下载配置文件
图11 更新配置文件
- 返回“数据调研作业”页面,下载探源工具示例代码,结合下载的配置文件按照探源工具指导对源系统进行数据调研。
- 下载探源工具示例代码
图12 下载探源工具示例代码
- 将下载的压缩包解压缩。jar包已提供为分段压缩包,把子压缩包放在一个文件夹中解压即可得到完整jar包。同时支持通过修改代码,重新编译打包。
- 将jar包放入远端服务器中,即环境准备中用来做调研的服务器中。例如,本最佳实践需要对两个MySQL数据库进行数据调研,则可将本探源工具放入准备好的某台linux服务器中,只需保证该服务器网络可访问到这两个MySQL数据库即可。
- 将5中下载的配置文件application.properties放入该远端服务器中。注意,需要和jar包在同一个目录下。
图13 探源工具
- 运行启动脚本:run_agent.sh
启动后,将会按照5中配置文件application.properties的规则进行数据调研,获取指定数据库的数据结构。更多说明,请参考探源工具示例代码中的指导。
探源工具通过查询指定数据库的系统表获取相关信息,对数据库压力较小,但为了保证不影响业务,建议将探源工具的定时任务设置在凌晨等压力较小的时间段进行。
- 下载探源工具示例代码
- 查看监控对象数据调研结果。数据调研结果可在线上报或离线导入:若运行探源工具的服务器可访问公网,则支持在线上报;否则需要离线导入。
- 在线上报
按照5中配置文件application.properties的采集和上报规则,调研结果可在线上报到解决方案工作台(要求运行探源工具的服务器可访问公网)。在图15中点击刷新按钮即可。
- 离线导入
若调研的系统仅能在客户侧内网运行,则可通过离线导入的方式将调研结果(6运行后会在相同目录下生成数据压缩包)导入到解决方案工作台。
图14 探源工具运行结果
点击表名可查看详细表结构,包括表行数、表数据量、空值率检测(该表是否进行了空置率检测)等。
图16 数据探源结果
- 在线上报
- 生成入湖清单
对于探源到的数据,可将需要的数据配置生成入湖清单,后续基于入湖清单可直接生成CDM迁移入湖作业。如,本实践中需要将探源到的订单系统和门店系统进行数据迁移,通过CDM迁移至云上MRS Hudi,则可选择这两个系统下的表生成入湖清单,目标端选择MRS Hudi。
图17 新增入湖清单
图18 配置入湖清单
图19 入湖清单
CDM作业一键生成
云数据迁移CDM,是一种高效、易用的数据集成服务。解决方案工作台集成CDM,支持批量生成CDM作业并在指定的CDM实例中运行。
前提:
- 已在实施责任人“解决方案工作台Trial_TE”所属账号下创建CDM集群。
- 已在该CDM服务中创建数据连接,以便后续把在解决方案工作台上生成的CDM作业同步至创建好的CDM集群中并执行作业。本实践中涉及两个源端MySQL数据库、一个目标端MRS Hudi,则需要先把这三个数据连接创建完成,参考新建CDM数据连接。
注意:在CDM中创建的数据连接名称需要和解决方案工作台上的数据连接名称一致,以便CDM作业能正确同步过去。图20 CDM数据连接
步骤:
- 在“作业管理”下选择“CDM作业”页签,添加CDM实例。
图21 添加CDM实例
- 点击【一键生成作业】,进入作业配置详情页。
图22 一键生成作业
- 配置作业详情。可手工添加或批量增加,若已在数据调研中生成入湖清单,则支持从入湖清单导入。
- 配置完成后点击【提交】。可选择是否同步生成质量检查作业,若开启,则将会在实施质量检查中生成检查作业。
图24 提交作业配置
图25 作业信息
要运行CDM作业,请确保有相应的数据连接以及连接的数据库存在,如,目标端MRS Hudi数据库要存在。
- 一键同步作业:将配置好的CDM作业同步至CDM集群中,以便后续可在CDM集群中执行作业。
图26 一键同步作业
- 您可以点击【同步历史】,查看同步结果。
图27 查看同步历史
您也可以进入CDM集群中查看作业并运行作业。
图28 查看CDM集群作业
ETL Mapping
数据治理中心DataArts Studio是针对企业数字化运营诉求提供的具有数据全生命周期管理和智能数据管理能力的一站式治理运营平台。解决方案工作台集成DataArts Studio,支持将方案设计中“ETL映射设计”部分形成的ETL脚本同步到DataArts Studio作业指定的目录。
前提:
- 已在实施责任人“解决方案工作台Trial_TE”所属账号下开通DataArts Studio服务。
- 已在该DataArts Studio服务中创建MRS Hudi数据连接(本实践中的数据连接名称“spark_hudi_proxy_cnt”,名称可自定义),以便基于数据连接同步作业以及后续在DataArts Studio中执行脚本。
为了后续能正确执行脚本,请创建与ETL映射中需要用到的数据库类型相同的连接,如,本实践中的ETL映射需要同步的数据来源与目标端均为MRS Hudi,则在DataArts Studio服务中需要创建MRS Hudi连接。
步骤:
- 在“作业管理”下选择“ETL Mapping作业”页签,添加数据治理实例。选择本账号下的数据治理(DataArts Studio)所属region、实例以及空间。
图29 添加数据治理实例
- 同步ETL Mapping。
图30 同步ETL Mapping
- 配置ETL Mapping。本实践中,需要将ETL映射配置好的ETL映射同步至DataArts Studio中。
- 点击【同步历史】,查看同步结果。
图32 查看同步结果
您也可以进入该DataArts Studio实例中查看同步结果并执行脚本。
图33 查看同步结果
实施质量检查
实施质量检查包含数据实例实施过程中的工具,用户可以根据检查结果进行相应作业的优化,旨在帮助客户在进行数据治理过程中,能够更好地监控实施过程中的质量。
功能模块 |
子模块 |
说明 |
---|---|---|
数据模型设计检测 |
|
数据治理时,数据会分层建设,数据集成方式(增量,全量)、集成周期都不一样,按照这些对每张表按其统一规范命名。扩展字段是为了对其每条数据做更好的运维统计,例如加了版本批次号、经过哪个ETL脚本而来的、数据入仓更新时间、软删除等等。 |
源系统和SDI层数据一致性检测 |
|
在数据集成时,最重要的是数据不丢失、不失真、不乱码、源表数据结构不变化,否则会造成数据指标计算不准确。而数据集成服务的网络往往非常复杂,依赖于源系统和网络,因此在监控检测源系统和数据湖的SDI层的数据一致性,可以快速给问题定界定位。 |
DGC命名规范检测 |
|
DGC是数据治理中心,尤其是数据开发模块,数据的ETL脚本的逻辑和任务调度编排均在DGC上。因此,一个规范统一的命名规范显得尤为重要,统一而规整,加强数据治理的专业性。 |
脚本规范检测 |
|
脚本承载着数据ETL的逻辑,定期运行。增强脚本的可读性,有助于数据开发阶段的人员定位问题、交流以及后期的运维。 |
DGC作业监控 |
|
作业运行时长的影响因素包含计算资源的影响和处理数据的影响,因此,当作业运行时间波动很大时,表明计算资源或者表数据有问题。例如,临时表没有清理,表数据发散等等,到最后都会造成重大问题。本功能模块可以在这些bug产生较小的影响情况下发现并及时修改。 |
- 表命名规范检查
- 在“作业管理”下选择“实施质量检查作业”页签,在“数据模型设计”下选择“表命名规范”,添加监控对象。如,本实践需要检查目标端MRS Hudi的表命名是否符合规范,则可选择该数据连接。
图34 添加监控对象
解决方案工作台为每类实施质量检查作业预置通用的检查规则,如上图中表命名规范检查作业,解决方案工作台预置了部分规范标准,用户可在【规则配置】里根据需要修改或新增规则。
- 添加采集信息,对需要进行规范检查的DB、Schema进行配置,配置规则名根据需要选择解决方案工作台预置的或新增的规范标准。
图35 添加采集信息
- 预览监控对象配置信息,并将该信息复制到5中的配置文件application.properties内,运行探源工具,获取监控信息。
图36 预览监控对象配置信息
- 查看检查结果。
若运行探源工具的服务器可访问公网,则检查结果可在线上报,点击界面右侧的刷新按钮即可查看;若运行探源工具的服务器仅能在内网运行,可通过【导入】的方式将探源工具获取的结果进行导入。本实践通过导入的方式进行离线导入。
图37 探源工具运行结果
图38 导入检查结果
- 在“作业管理”下选择“实施质量检查作业”页签,在“数据模型设计”下选择“表命名规范”,添加监控对象。如,本实践需要检查目标端MRS Hudi的表命名是否符合规范,则可选择该数据连接。
- 附加字段规范检查
与表命名规范检查一样,可以添加需要监控的对象后配置需要采集信息的数据库、表,用户可根据需要修改/新增附加字段规范。同样,本功能模块需要运行探源工具获取检查结果。
图39 探源工具运行结果
图40 查看检查结果
- 源系统和SDI层数据一致性检查
若在完成CDM作业一键生成后开启了同步生成质量检查作业,则此处会同步生成检查作业;用户也可以根据需要自己添加监控对象。同样,本功能模块需要运行探源工具获取检查结果。
图41 源系统和SDI层数据一致性检查作业
图42 探源工具检查结果
图43 检查结果
- DataArts Studio作业命名检查
检查DataArts Studio作业是否符合项目定义的规范。
- 编辑作业命名规范。解决方案工作台预置了批处理作业和实时检查作业的检查规范,用户可以根据需要修改。
- 新建监控对象。选择本账号下要检查的DataArts Studio实例。
图44 添加监控对象
- 点击刷新按钮,查看结果结果。
图45 查看检查结果
- DataArts Studio作业节点命名检查
检查DataArts Studio作业中的作业节点(CDM JOB、MRS Kafka等)命名是否符合项目定义的规范。同样,用户可根据需要修改解决方案工作台预置的节点命名检查规范后,添加指定的监控对象进行检查。
图46 作业节点命名检查
- DataArts Studio脚本命名检查
检查DataArts Studio脚本命名是否符合项目定义的规范。
图47 脚本命名检查
- DataArts Studio环境变量命名检查
图48 环境变量命名检查
- DataArts Studio数据连接命名检查
检查DataArts Studio数据连接(Oracle、MRS Hudi、Hive、DWS等)命名是否符合项目定义的规范。
图49 数据连接命名检查
- 脚本规范检测
检查DataArts Studio脚本是否符合项目定义的规范。
图50 添加脚本检测规范
图51 查看检查结果
- DataArts Studio作业监控
图52 作业监控配置
图53 作业监控结果
基础资源开通
基础设施部署作业支持对方案设计中涉及的云服务资源进行手工部署/在线化部署。本次方案中的部署架构设计为手工部署,因此需要手工开通资源。
- 在“作业管理”下选择“基础设施部署作业”页签,新建部署作业,新建时可与需求关联起来。本实践中的基础资源开通与交付需求创建中的“构建智慧门店数据中台”需求关联。
图54 新建部署作业
- 点击【资源变更】,开通资源。
图55 资源变更
- 在弹窗中填写资源部署详情,支持上传附件。
图56 资源部署详情
- 完成后点击【确定】即可。
实施进度及附件管理
- 实施责任人“解决方案工作台Trial_TE”对实施进度进行管理,支持将需求实施的交付件上传到对应的需求记录上。
图57 更新进度
- 针对不同需求的实施进度,更新记录后可提交审核,由实施审核责任人“解决方案工作台Trial_TD”进行审核。
- 实施审核责任人收到审核待办,可对需求进行审核。
图58 实施管理审核
- 支持多个实施责任人并行进行交付作业实施,各责任人按实际情况更新实施进度并提交审核;
- 支持空间内成员下载实施详情中的附件。
自动发送周报
在项目进行过程中,可通过解决方案工作台配置周报自动发送,通知项目组相关成员项目进展和风险。
- 项目负责人(如项目经理“解决方案工作台Trial_PM”)在“实施管理”中选择“周报管理”功能。
图59 周报管理入口
- 配置周报发送信息。
表3 周报发送配置 参数
说明
是否自动发送
必选项。开关打开代表自动发送,提交之后会立即发送一次,之后按照设定的频率定期发送;关闭代表手动发送,提交之后只会立即发送一次,不会定期发送。
发送频次
打开自动发送之后必选项。包含每周和每月。
发送时间
选择发送频次后必选项。发送频次为每周,则发送时间为周一至周天的整点;发送频次为每月,则发送时间为每月1日至31日的整点。
邮件接收人
必填。您也可以下拉选择空间成员,只有已经在解决方案工作台空间订阅了邮件的账号才能够接收到周报邮件,没有订阅则不会接收到邮件;您也可以输入邮箱,发送给指定邮箱人员。
邮件抄送人
必填。您也可以下拉选择空间成员,只有已经在解决方案工作台空间订阅了邮件的账号才能够接收到周报邮件,没有订阅则不会接收到邮件。您也可以输入邮箱,发送给指定邮箱人员。
项目背景
选填。
本周工作进度
必填。总结本周工作进度。
下周工作计划
必填。输入下周计划。
添加自定义工作项
选填。自定义添加的工作项。
图60 配置周报信息
- 相应人员接收到邮件通知。
图61 邮件通知