ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 定制化的Informatica自动迁移工具

定制化的Informatica自动迁移工具

原创 Linux操作系统 作者:zhgazn 时间:2013-06-06 22:06:11 0 删除 编辑
问题描述:一个大公司的数据仓库, 如果选择infomratica作为一个ETL工具平台,在多个项目同时做开发的时候,经常对于informatica的平台支持团队,需要花费很多的时 间和精力做informatica mapping/workflow的迁移。因此如何通过开发一些自动化的工具来实现informatica的迁移是一个很有创新的方式。

         解决方案:我们知道informatica有些pwcmd命令可以通过写Unix shell或者windows bat文件来实现调用,而我们的解决方案的核心就是通过调用PWCMD函数和命令来实现。

         首先,我们定义好这个解决方案的整体架构,假设informatica平台是在unix下搭建;因此我们根据已有的条件将解决方案分成前台与后台,整体架构如下:

Front-end:

       在这个解决方案中,我们推荐使用java来作为前台的编程语言,因为它可以跨平台。通过java开发web页面并给予适当的权限控制,可以实现每个项目的 开发人员自助的方式来安排自己的mapping/workflow的迁移。同时java通过JDBC访问我们的repository得到 informatica的metadata;当然我们还需要在metadata db里面创建2个表来实现schedule。

Back-end:

        在后台,我们开发4个组件,关键的组件是通过shell脚本调用PMCMD;当然要实现自动化,其他两个组件也必不可少,一个是准备组件,另一个是 schedule组件,当然为了是我们的系统有很好的容错性,我们第四个组件就是error handle组件。下面是后台的组件架构图:

下面详细介绍一下四个组件的工作流程:

首先,第一个组件是准备组件,负责把前台开发人员输入的schedule信息转换成控制文件。

第二个组件,schedule工具,分成两个部分,一个是schedule的server,负责调度job;另一个是schedule的node, 负责job执行。

第三个组件,是开始执行迁移工作,通过shell脚本调用informatica的pmcmd来实现mapping/workflow的metadata从开发库往其他库迁移。

最后一个组件,是负责error handle,如果在迁移或者调度job过程中,发生错误,需要把error message记录下来。

通过实施这个方案,可以帮助informatica支持团队节省迁移的工作量,大约提高了15%的生产率。

注释:Copyright owned by author

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/647161/viewspace-763307/,如需转载,请注明出处,否则将追究法律责任。

上一篇: DW2.0系统架构(I)
下一篇: DW2.0和统计分析
请登录后发表评论 登录
全部评论

注册时间:2013-06-05

  • 博文量
    16
  • 访问量
    56695