Informatica面试例子_第1页
Informatica面试例子_第2页
Informatica面试例子_第3页
Informatica面试例子_第4页
Informatica面试例子_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、informatica学习笔记1:update as insert 问:要求实现每天抽取数据,而且是如果有改变才抽取更新,没有就不更新,因为源表中有最后修改时间的字段,我让它和 session上次运行时间比较来解决是否抽取,但问题是有的表中没有主键,我该怎么实现更新呢?有主键的我在workflow的 mapping 里面勾上了update else insert 那没主键的用update as insert 行么?还有 update as insert 什么意思啊,能解释的形象点么?答:update as insert 就是语句一:update tab_name set c1= value1

2、,c2 = value2 where c_prikey = value_pri 语句二:insert into tab_name values(*) 当在tab_name的 c_prikey找到有等于value_pri的,就执行语句一把所有对应的记录update 。当没有匹配的,就执行语句二。你可以 powercenter的 source defination中的自己定义主键,也可以直接override update sql,可以不用理会真实表结构中是否有主键informatica学习笔记2:客户端连接服务器问:我通过客户端连接到服务器,做了一个workflow ,运行的时候出现错误,说是服务

3、器连接不上repository server和 infomatic server他俩的 port 是不是要一样还是不需要?答:看看 server 的配置 .我想可能是没有配置好. 问:repository server服 务 起来 了 ,就是informatica server起 不来 了 ,在配 置 的 时候 , 是informatica server的 ip 解析不出来 ,怎么才能把那个地址和主机对应起来答:1.直接写 ip 2.编辑客户端的%windows%/system32/drivers/etc/hosts文件,把ip 与名字的对应关系加进去,客户端这台机器就可以自己解析了3.找 d

4、ns 或者什么解析服务器搞定。问:informatica server装在 unix 操作系统下, 能不能找到配置informatica server的配置文件对应的是那一个文件. 答:unix 下缺省是pmserver.cfg ,可以用pmconfig 这个命令行工具修改配置文件,也可以直接打开编辑。如果不是缺省的配置文件名可以通过, ps -efl|grep pmserver看看是哪个文件名。问:谢谢 ,pmserver.cfg这个文件中的配置信息我看过了,里面设置的都是repository server ip:和 port:6001, 怎么找不到配置的informa

5、tica server的 ip:和port:4001我是想知道这个信息在配置文件中能找到吗? 答:这个是在workflow manager里面注册的。双击server 名字就看得到了。问:是的, 我在 workflow manager里看到过 ,只要在那里注册好了就行了吗,我想它应该存放在什么位置所以想搞清楚 ,还是谢谢你 . 答:他存放在策略库的opb_server_info表里面,呵呵。你也可以试试看直接改数据库。不过直接改数据库这种事情要悄悄的干,被david 知道了要打pp 的。informatica学习笔记3:workflow 问题问:创建一个工作流从一个txt

6、 文件到目标表,是不是要定义.par 参数文件有没有谁有这方面的资料教程, 给我发一份, 非常感谢! 我创建了一个, 运行的时候出错了: (server10) start workflow: request acknowledged (server10) start workflow: error: error in starting execution of workflow id = 8 wf_s_m_test. please check the server log for more information. 答:没必要非得定义参数文件,直接在session 中,指定路径和文件名就行.如

7、果是同结构批量的文件 ,可以用 file list 功能 . 参数文件也能作,相对来说是在外部控制路径和文件名,比较动态了 . 那个错 ,不是让你去看server log 吗. 去看看了 . window 平台 ,default 去看事件管理器informatica学习笔记4:folder 权限的问题问:informatica用不同的用户创建的不同的folder ,互相看不见是什么原因那?答:保护机制的作用,建folder 的时候,在安全选项里可以设置!把 read 权限赋给repository user就可以了也有可能是启用了version control 的原因informatica学习笔

8、记5:建立 repositories的时候出错问:我的 infromatica是安装在英文版的windows 环境下的, matadata要放在 oracle9i 中,可是当我在建立repository的时候怎么也连接不上我的oracle9i数据库,而我用其他方式连接数据库是畅通的,在windows 的事件查看中看到如下信息:(368|752) failure in running command-line request type100401 pmrepagent create -r tcs -t oracle -u informatica -c oradb -d ms1252 -h tcs

9、-china.db -o 9999 -h tcs-china.db -o 5001 -k 2082340862. error is an error occurred while creating the repository. 答:建 repository在repository server administration console里面可以找到active log的,可以看看出错信息,出错多的好像都是插入一个long 的值,通常建策略库出问题都是字符集捣的鬼,几个地方要注意数据库的字符集,系统nls_lang环境变量,操作系统的缺省字符集 (windows 在地区设置里面看,还有缺省输入

10、法也可能影响),理论上不同的字符集只要是可转换的,都是可以的,不过弄成一样的比较简单了。问:谢谢 guruhao 的提示和帮助, 我决定将oracle 和 informatica重新安装一下再来测试一次,我的操作系统的缺省字符集(windows 在地区设置里面)是 china 系统 nls_lang环境变量是n/a 答:这一段都是正常的,drop table不成功,属于建库之前清理表的动作,还要往后,大约在中间的位置。有个真正的插入数据的错,你最好设置一下nls_lang使之与 oracle server的字符集相匹配。it should be oracle characterset is n

11、ot same in oracle server and client. informatica学习笔记6:建立 workflow 的问题问:我用 powercenter8建立一个 mapping后,在 workflow manager中建立了workflow ,但是运行这个workflow 时却提示以下错误信息: could not start execution of this workflow because the current run on this integration service has not completed yet 我检查了一下: server 中的各服务已经正常

12、启动了,但是就是运行时出现这种情况,请问是什么原因导致的?以及怎样解决呢?各位知道的就请说一下吧。答:该错误应该是说你建的这个workflow 正在运行,且还没有结束,因而你不可以再次启动该工作流。你可以通过monitor 观察一下。问:该错误应该是说你建的这个workflow 正在运行,且还没有结束,因而你不可以再次启动该工作流。你可以通过monitor 观察一下。但是我在monitor 中又看不到任何的session 在运行啊答:将你的 informatica server在 service 里重新启动后再运行看看(问:过一阵子之后再运行就正常了。不知道为什么?怪怪的)informatic

13、a学习笔记7:workflow 执行报错问:我在执行某个workflow 的时候报了如下错误:fatal error : unexpected condition in file /u05/bld65_64/pm713n/server/dmapper/widget/wjoiner.cpp line 3176. contact informatica technical support for assistance. aborting this dtm process due to an unexpected condition. 请问各位这是什么原因?我看了一下日志文件,好像是初始化的过程都还

14、没有结束就报错了。答:this error occurs when the joiner transformation in the mapping has become corrupted. to resolve this do one of the following: 1. delete and re-create the joiner transformation. 2. export and import the mapping replacing the mapping when importing it. 谢谢! !找到原因了,原来是某一个字段的连接线没有连上导致的错误。可是我有

15、个疑问,为什么有的控件出现这种情况的时候就没有问题呢?informatica学习笔记8:提示 joiner 输入字段没有排序问:我们这里是异地开发,从北京拿过来的mapping ,在那里都可以跑通,而且没有任何问题,但是怎么拿到我这里就提示joiner 输入字段没有排序呢?问题可能发生在什么地方呢?答:你的 join 控件应该是来自同一个数据源的,你在 join 控件前增加一个sorter 控件, 将 join 的输入数据源排序。informatica学习笔记9:import 一系列 mapping 问:求教,要import 一系列 mapping ,但是 codepage不一致,应该怎么调整

16、?答:codepage 不一致 ,一定得改 .反正一个xml,只需要改两个地方.如果 xml 很多 ,写一个小程序,会方便点 .如果少 ,手工改一下就好了. 一系列的xml? 是指很多 ,是吗 ? 1.建议你在导出时,用 rep manager, 将很多对象打一个包导出. 2.pmrep 命令行 ,有个 object import 功能 ,写一个批量的 .bat 导了informatica学习笔记10 :复制数据库的问题问:请教各位大侠:我要用powercenter复制一个数据库,源库是一个sql server的数据库,目标库是db2 数据库,请问怎么做?答:一个表一个表的做。如果想一次复制所

17、有表,干脆用sql server的 dts 好了。如果是整个库的话,不如用 db import/export了. etl 强调的是t. informatica学习笔记11: informatica services不能启动问:环境:在 一 台 机 器 上 安装 了informatica services client oracle 10g ( 作 为repository)。informatica的版本是 8.1.1 ,启动 informatica services时没有错误,但是过几分钟就停了。日志信息catalina.out如下:2006-1 1-28 16:12:46 org.apache

18、.coyote.http11.http11protocol init 信息 : initializing coyote http/1.1 on http-6001 2006-1 1-28 16:12:46 org.apache.catalina.startup.catalina load 信息 : initialization processed in 1234 ms 2006-1 1-28 16:12:46 org.apache.catalina.core.standardservice start 信息 : starting service catalina 2006-1 1-28 16:

19、12:46 org.apache.catalina.core.standardengine start 信息 : starting servlet engine: apache tomcat/5.0 2006-1 1-28 16:12:46 org.apache.catalina.core.standardhost start 信息 : xml validation disabled 2006-1 1-28 16:12:47 org.apache.catalina.core.standardhost getdeployer 信息 : create host deployer for direc

20、t deployment ( non-jmx ) 2006-1 1-28 16:12:47 org.apache.catalina.core.standardhostdeployer install 信息: processing context configuration file url file:c:informaticapowercenter8.1.1servertomcatconfcatalinalocalhostadminconsole.xml java.lang.unsatisfiedlinkerror: d:informaticapowercenter8.1.1serverbin

21、pmjrepn.dll: ? ? 前几天一直运行正常,请问各位高手,该问题如何解决,谢谢!答:this error will occur when there is there is an incompatible xerces-c_2_4_0.dll file on the windows machine. to resolve this do the following: stop the informatica services windows service. go to the c:winntsystem32 directory. rename the xerces-c_2_4_0.

22、dll file to xerces-c_2_4_0.old.dll. copy the xerces-c_2_4_0.dll file in theserverbin directory to the c:winntsystem32 directory. is the informatica installation directory. re-start the informatica services windows service. try it again, please let me know the result. informatica学习笔记12 :从 mysql 抽取数据的

23、字符集问题问:我们的 source 数据库是mysql, 字符集是 utf8. 现在要用 informatica从中抽取数据并生成文本,用于下一步的etl 处理。 informatica server的 code page 是 iso 8859-1. 结果中文字符总是抽取不成功。请问如何处理才能正确抽取中文字符?答:informatica server的 code page是 iso 8859-1 , 你得改成unicode 的模式 ,才可以比较适合作转换 .你在 workflow manager中的那个odbc 的连接 ,应该也有codepage的设置吧 .改改试试 . 问:informat

24、ica server的 code page是 iso 8859-1 , 你得改成unicode 的模式 ,才可以比较适合作转换 .你在 workflow manager中的那个odbc 的连接 ,应该也有codepage的设置吧 .改改试试 . 谢谢斑竹。问题是我没办法去改informatica server的配置。如果就用当前配置,有可能做到正确抽取中文么?能够做一些编码的转换来实现么?答:乱码 ,就找几个点的码制设定了. 源就那样了 , etl 服务器上配的odbc, 可能会有codepage 相关 ; 再就是 etl 服务器 , 你已设为iso 8859-1, 如果不对中文数据作转换,应

25、该不会乱; workflow manager中,配置odbc 我忘了是不是也有code page 设定了 .就这么几块 .你分开检查一下了. 你用个什么工具,通过系统odbc去访问一下 ,如果看到的不是乱码,再从后面几点排这个错了. (修改了连接mysql 的 odbc, 加上stmt=set names utf8 就好了,谢谢斑竹! )informatica学习笔记13 :没有 lincense导致的问题问:各位兄弟们帮忙看一下,informatica的问题,我使用的是6 版本,目标数据库是oracle 10g,在安装好,配置好的时候,执行workflow 的时候报这样的错误cmn_1022

26、 database driver error. cmn_1022 microsoftodbc driver manager data source name not found and no default driver specified database driver error. function name : connect database driver error. function name : connect database error: failed to connect to database using user test_loc and connection stri

27、ng 2. 答:你用的是odbc. 是 unix 下,还是 window? 为什么不用oracle native driver? 这个看起来 ,像是你在系统建的odbc, 没有找到 . 你在系统的odbc, 建立一个连接 ,例如 : odbc_ora_hr ,测试一下 ,看是不是能连接到远程的oracle server. 你在 workflow manager中,建立 odbc 时,那个 connectstring 写上这个名字.odbc_ora_hr 如果在系统的odbc 是通的 ,应该就可以了吧. 问:odbc 用的是 informatica自带的 odbc 安装的,

28、用的是window 的,我也想用oracle 的驱动,但是我没有oracle 的 lincense key ,我只有 odbc 的所以只能用odbc 的了,系统 odbc配置的图和workflow manager中配置 odbc 的图和你说的一样,配置好后,报的错误还是一样的,急死了答:问题解决了 ,是 key 有问题 ! 艾!没有informatica的 lincense informatica学习笔记14 :lookup 中自定义 sql 有问题powercenter 7.1 windows平台source table w_test_fs target table w_test_f 源表和

29、目标表中都有字段col1 和 col2, 这两个字段可以看作是联合主键吧建了个unique index mapping流程大概说一下1.从源表取数据select fs.col1,fs.col2,fs.xxx,. from w_test_fs fs 2.建 lookup( 从 w_test_f) , in 的字段就是上面select 出来的 col1 和 col2, 比较字段是w_test_f中的 col1 和 col2, 取出 w_test_f 中的主键select f.row_id,f.col1,f.col2 from w_test_f f, w_test_fs fs where f.col

30、1=fs.col1and f.col2=fs.col2 3.建 filter, 把 lookup 找出的 lookup_row_id和步骤 1 选出的字段传给此filter filter 条件是 isnull(lookup_row_id) 4.进入目标表现在的问题是:源表和目标表数据条数是一样多了(之前跑过,那时目标表是空的) 就是说对于col1 和 col2来说,两个表是一样的用 sql 可以验证select fs.* from w_test_fs fs where (select f.row_id from w_test_f f where f.col1=fs.col1 and f.col

31、2 = fs.col2) is null; 执行这条sql 查出 0 条记录但我运行上面的mapping 还是有数据流过filter 遇到过有部分数据流过(filter起了部分作用 )、也遇到过数据全部流过(filter没起作用 ) 当然对应的 mapping是不一样的我上面的mapping只是个例子规则是一样的请问大家遇到过或者有什么建议没有?答:已找到部分原因lookup 中自定义sql 有问题informatica学习笔记15 :infopower 如何实现增量抽取?问:在 informatica powercenter中如何实现增量抽取?我想了一下使用时间戳,但是这个时间戳如何去使用不

32、是很明白,希望各位高人在这边能指点一下,如果有例子更好,在这里先谢谢了!答:有时间戳就直接用呗,总有个办法记录上次抽取的时间的,也有办法设置本次的截止日期然后where timestamp last_time and timestamp to_date ($lastupdatedatetime) and sales.sales_datetime store values across rows。想了想,在 aggregator里面用 cume 遇到不同的group by 条件后,应该是可以自动清0 的,所以还是用cume 简单些。我觉得cume 能实现 , 实在不行 ,一次只处理一年的(这样考

33、虑的东西少,最简单 ),用参数控制一下 where 子句 .实在不行 ,可以考虑 ,将地区 ,年,月,合成一个字段 .这个咋都能作. 能作的方法有多种.但我觉得这种最简单. 问:我现在目前就是只处理一年的,上午我试了下,用 cume 是可以的做的,但是以后肯定是不止一年的数据。还有 david 说:” 把地区,年,月合成一个字段,这咋都能作“ ,我有点不理解,能具体一点点吗?答:字符串与呀 . 我觉得还是一年一年处理比较好. 你可以作一个session, 用参数来控制where 子句 ,每次作一年的.你用外部一个程序控制改变这个参数 ,并多次执行 (pmcmd ). 这样比较简单 . 我知道把

34、地区,年,月合成一个字段是字符串与,我的意思是说:把地区,年,月合成一个字段后,在我做累积sum 的时候怎么来用,为什么这样就可以” 咋都能作 “ 了?不好意思,刚刚没讲清楚。再用 cume 呀. informatica学习笔记18 :pc8.1 运行出错问::confused: 版本 pc8.1 用了一个最简单的例子,就源和目标的一个一一映射。应该说不会是流程的问题和参数设置问题。运行后错误日志如下:message: * fatal error : unexpected condition in file zeusbuilderproductionviewpowrmartcommonodlo

35、racle8oradriver.cpp line 241. contact informatica technical support for assistance. aborting this dtm process due to an unexpected condition. * 怀疑是不是pc8.1 文件被破坏了,请各位高手指点一下可能会是什么问题?答:你的这个问题 ,不是找到原因了吗.减小 sorter 的 cache 或增大swap space. 看着像是odbc 方面的问题。两个建议:1.重启机器,试一下。有时安装完,没有重启,有些变量没有生效,会报这类问题。2. 请用datadirect odbc,重新导入源和目标结构,再作一个简单的例子,试一下。问:建议:1,我的pc8 已经安装很久了(不过lisence还没过期,改过系统时间啦),所以呢机器已经重起很多次啦,应该不是这个问题2,源和目标也重新导过,一样报错,另外我不管哪个task 都是报这一样的错,所以应该不是某个组件的参数设置不合理(最后一次做的一个mapping根本就没有用到转换组件)还有一点,我现在用的是pc8.1.0 版本,但之前在这个知识库里还原进来的是pc8.1.1 的.rep文件,所以我怀疑是不是版本不兼容,但是今天

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论