尊敬的所有哈布罗居民!
我们为开发人员打开了
RDTEX公司的第一个博客,其中包含生活技巧。 我们希望其中一位读者能够利用它们。
在将数据从一个系统传输到另一个系统,然后在俄罗斯联邦一家领先的银行之一中进行报告构建的项目中,发明了生命黑客。
使用的技术:
数据源系统-Oracle RDBMS(版本11.2.0.4.0)
数据接收器系统-RDBMS Oracle(版本11.2.0.4.0)
集成总线-Informatica(版本10.1.1)
在执行大型集成项目期间,我们遇到以下问题:
1. Informatica Power Center中SQ [Source Qualifier]的使用效率低下在Informatica Power Center中使用SQ [Source Qualifier]时,显示了对输入字符数的限制。 允许的最大字符数为32767。下图显示了不合理使用Source Qualifier的示例:
图1 SQ Informatica Power Center的屏幕截图此屏幕快照显示空格占用了字符空间,因此复杂的SQL查询无法完全满足要求(即,将它们插入Source Qualifier时会被截断)。
下图显示了Source Qualifier的正确用法(更改以红色突出显示):
图2来自SQ Informatica Power Center的屏幕截图,带有修改后的查询转到下一行,对齐费用为第N个字符,删除该字符后,我们就可以容纳所有SQL代码。
2.无限大数的错误转换无限数量的文件以以下格式上传到Oracle数据库:
1267650600228230000000000000000
并且它们应该以以下格式加载:
1267650600228229401496703205376
即 值从某个数字位置开始四舍五入。
我们提供以下解决方案:
在Informatica Power Center中开发映射时,将在某个阶段立即设置字段格式(例如字符串),以确保这些值肯定会变大,而同时:
- 如果使用十进制格式,并且值最多可以包含28个字符,则需要在Workflow Manager的工作流属性中启用“属性”→“启用高精度”→“是”。
- 如果我们使用双精度格式,则在这种情况下,超过15个字符(例如20个字符)的值可以属于此属性,则该值将被截断为15个有效数字,其余部分为零(0)(即最后5个字符为零) ) 在这种情况下,最好放下字符串格式,然后将大小增加到所需的大小(例如string20)。
如果总结一下该工具的使用,则可以区分以下
优点 :
- 该工具可方便地传输以TB为单位计算的大量数据(例如,高达25-30 tb),尤其是在您需要以最少的转换次数(几乎一对一)传输数据时;
- 自动“拉动”属性(“传播属性”选项),以及在映射内“突出显示”(从何处和何处提取数据)的可能性;
- 选择ETL工具和ELT工具的操作模式的能力(取决于特定的IT项目)。
对于图片的客观性要注意几点:
- 缺乏“复杂”的数据转换逻辑;
- 从工具本身的支持和对单个转换逻辑的理解的角度来看,它不如某些竞争对手(例如Oracle Data Integrator)。