Informatica10.2与GaussDB A8.0对接

举报
输入啥昵称好呢 发表于 2021/01/05 14:23:32 2021/01/05
【摘要】 本文档主要介绍Informatica 与GaussDB A的对接使用,包括使用插件、ODBC与GaussDB A对接。

Informatica10.2与GaussDB A8.0对接方法

1. Informatica 通过插件与GaussDB对接

1.1 了解 PowerExchange for GaussDB A

        PowerExchange for GaussDB A是由GaussDB A 提供的可在ETL工具PowerCenter上使用的插件,可实现数据的快速导入。

        本插件可以将PowerCenter处理好的数据快速导入GaussDB A 8.0数据库。主要原理是把 PowerCenter处理数据写入本地管道,通过调用gaussload工具启动GDS服务,然后将管 道数据传输至GaussDB A数据库DN端,实现了数据快速导入。

        本文档主要介绍Informatica PowerCenter安装和使用。此文档适用于具备数据装载权限 的数据库管理和开发人员,且假设您已掌握以下基本知识:数据库基本理论、 GaussDB A 8.0PowerCenter使用方法。

1.2 安装 PowerExchange for GaussDB A 8.0

1.2.1 安装准备

插件名称:

        GaussDB-8.0.0-REDHAT-x86_64bit-Informatica-plugin.tar.gz

        GaussDB-8.0.0-REDHAT-x86_64bit-gauss-loader.tar.gz

插件位置:

        FusionInsight_MPPDB_8.0.0_RHEL.tar.gz安装包中,FusionInsight_MPPDB/software/components/package/package路径下。

软件环境要求:

        Linux操作系统:支持SUSE Linux Enterprise Server 11 SP1/SP2, x86_64Redhatcentos

        PowerCenter版本:10.2。 工具:必须为系统自带Python2.6版本。

前提条件

  • 本地已成功安装PowerCenter server组件。
  • PowerCenter client端已配置GaussDB A 8.0 ODBC驱动(配置方法见后面章节)。
  • 用户对<PowerCenter Installation Directory>/server/bin目录具有读写执行权限。
  • 需要提前安装gaussload工具,安装步骤如下:

                步骤1:进入gaussload解压目录,执行bash install_gaussload.sh

                步骤2:配置环境变量GAUSS_LOADERS,将$GAUSS_LOADERS/bin加到PATH环境变量中,export PATH=$GAUSS_LOADERS/bin:$PATH

1.2.2安装步骤

步骤1 Informatica Server主机上,解压GaussDB-8.0.0-REDHAT-x86_64bit-Informatica-plugin.tar.gz文件,执行bash install.sh命令,提示安装成功。

步骤2 打开InformaticaB/S管理端"Informatica Administrator",使用域口令登录。

        说明 该管理端的入口在Informatica Server的安装过程中会有提示。一般的URL为: http://10.119.31.38:6008,其中IP地址为Informatica Server所在IP,端口默认为6008。如果在安装 过程中使用的是自定义端口,这里请做相应修改。

步骤3 找到需要配置的PowerCenter存储库服务,在属性页面找到“存储库属性”,点击修 改,如下图。

          

步骤4 PowerCenter的存储库操作模式调整为“独占”模式,这将会重启存储库,请注意。

步骤5 待存储库重启完成后,转到插件页面,点击添加插件图标,如下图:

         

步骤6 在弹出的“PowerCenter存储库服务注册插件”页面,选择步骤1GaussDB-8.0.0-REDHAT-x86_64bit-Informatica-plugin.tar.gz解压出的插件文件 GaussDB_Kernel_Connector.xml

        说明:如果之前注册过该插件,请勾选“更新现有插件注册”,并请同步更新Informatica Server的插件安装包,执行install.sh脚本,见步骤1

 

步骤7 按照之前的步骤,重新将存储库服务的操作模式,调整为“普通”,重启存储库服务,完成。

----结束

 

1.2.3 使用 PowerExchange for GaussDB A

        当需要通过PowerCenterGaussDB A 8.0导入数据时,可以利用PowerExchange for GaussDB A组件实现数据快速导入。

 操作步骤

步骤1 导入GaussDB A 8.0目标表。

        用户可以在设计阶段从GaussDB A 8.0数据库导入目标表,PowerCenter会做数据类型转换,将原始数据类型转换为ODBC数据类型。

        1、点击源或目标,选择从数据库导入,添加GaussDB A 8.0与数据库的DSN连接。

       

        2、选择"PostgreSQL Unicode"选项,点击完成进入"PostgreSQL ANSI ODBC Driver(psqlODBC) Setup"窗口,填写用户名、密码,连接GaussDB A 8.0

       

 

        3、配置好数据源后,选择相应ODBC数据源,输入用户名、密码等信息,点击连接,空白窗口显示表信息,选择要导入的源表或目标表

       

 

步骤配置PowerExchange for GaussDB A 8.0连接

        1、单击连接,选择关系,显示关系连接浏览器窗口

       

        2、单击“新建”,选择PWX GaussMPP,选中确定进入连接对象定义窗口,将跳转至链接配置信息页面

       

        3、输入连接配置信息,详细内容请参见表1-1

       

        表 1-1 PowerExchange for GaussDB A 8.0 连接属性

         

步骤配置PowerExchange for GaussDB A 8.0会话(Session)属性。 用户可以在映射(Mapping)窗口设置Session属性,配置信息如1-2所示

         

        表 1-2 PowerExchange for GaussDB A 8.0 会话(Session)属性

       

       

       

        ----结束 参数配置成功后,可以执行导入操作,具体使用方法参考参照《PowerCenter用户指 南》文档。

 

2. Informatica通过ODBC方式连接GaussMPP

2.1 Informatica版本

        Informatica Server版本:

       

2.2  配置ODBC驱动

        Informatica利用ODBC方式连接GaussMPP,需要分别配置server端及client端。

2.2.1 server端配置GaussMPP odbc驱动

步骤1  从unixODBC官方网站下载unixODBC-2.3.0.tar.gz,解压、编译、安装;

        tar zxvf unixODBC-2.3.0.tar.gz

        ./configure

        make && make install

步骤2  从FusionInsight_MPPDB_8.0.0_RHEL.tar.gz安装包的解压文件的路径FusionInsight_MPPDB/software/components/package/package下。得到GaussDB-8.0.0-REDHAT-x86_64bit-Odbc.tar.gz驱动包,解压得到psqlodbcw.la, psqlodbcw.so两个文件;

步骤3  以上package路径下解压GaussDB-8.0.0-REDHAT-x86_64bit-Libpq.tar.gz得到libpqlib文件;

步骤4  将$Informatica_intall/ODBC7.1/lib/备份为$Informatica_intall/ODBC7.1/lib.bak,重新建立$Informatica_intall/9.6.1/ODBC7.1/lib/目录,将unixODBC安装得到的/usr/local/lib/libodbc.so.1.0.0so.1.0.0libpq.so拷贝到$Informatica_install/ODBC7.1/lib/目录中,将步骤2解压得到的psqlodbcw.lapsqlodbcw.so拷贝到$Informatica_install/ODBC7.1/lib/目录中。(其实无需备份,直接拷贝到ODBC7.1/lib目录即可)

        将/usr/local/lib目录下的libodbc.so.2.0.0libodbcinst.so.2.0.0拷贝到$Informatica_intall/9.6.1/ODBC7.1/lib/目录中。(/usr/local/lib目录下若没有可搜索系统中其他位置是否有)。

步骤5  修改$Informatica_intall /ODBC7.1/ini文件,添加如下(按照实际填写):

       


2.2.2  客户端配置GaussMPP odbc驱动

步骤1  从FusionInsight_MPPDB_8.0.0_RHEL.tar.gz安装包的解压文件的路径FusionInsight_MPPDB/software/components/package/package下。得到GaussDB-8.0.0-Windows-Odbc.tar.gz驱动包,解压后安装psqlodbc.msi文件和psqlodbc_x64.msi文件,安装psqlODBC成功

步骤2  配置驱动,win64位系统需配置C:\Windows\SysWOW64\odbcad32.exe文件,系统32位系统需配置C:\Windows\System32\odbcad32.exe文件,添加mppdb驱动。

       

点击Test测试连接是否成功。

步骤3  PowerCenter 客户端工具在通过ODBC方式连接到GaussMPP数据库时,可以连接,但是出现以下两处警告,如下图所示:

     

         消除以下两处警告;修改D:\Informatica\9.6.1\clients\PowerCenterClient\client\bin\powrmart.ini,在[ODBCDLL]中添加条目:PostgreSQL=extodbc.dll

2.3  从oraclegaussmpp中导入数据

步骤1 repository manager中创建ORACLE_TO_MPP文件夹;

       

步骤2  在designer中创建源、目标和Mapping

         

        源使用oracle数据库中的bi_sourceemp

        目标指定到mpp中的tmp

        需要提前在mpp中创建空白表

       

步骤3  workflow中指定目标emp的关系连接编辑器,连接字符串连接为gaussdb,与ini文件中名称一致;

       

步骤4  执行会话,结果显示成功, workflow monitor显示如图:

       

步骤5  确认oracledept表的数据

       

步骤6  查看MPPtmp表的数据

       

步骤7  使用Informatica的测试工具,一直是等待状态,没有其他提示

       

 

补充:

  • 客户端如果与服务端不在同一机器上时,客户端(windows)需要安装msi文件,win64位系统需配置C:\Windows\SysWOW64\odbcad32.exe文件,系统32位系统需配置C:\Windows\System32\odbcad32.exe文件,添加mppdb驱动。

       

  • 服务端需配置mpp odbc驱动,所需文件,其中libpq必须,不能缺少;

       

  • 指定源和目标时,目标无需从数据库导入,只要从源数据创建就可以。源使用oracle数据库中的scottdept表,目标指定到mpp中的dept表,需要提前在mpp中创建空白表。

3. 遇到过的问题:

11.2.3中步骤2中无法看到PWX GaussMPP的插件。

解决方法:1.2.2中,卸载其他插件,只安装Gauss的插件后,可以在1.2.3的步骤2中看到该插件。

 

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。