ODI系列:XML File数据同步问题

ODI为XML数据同步提供了便利,可通过ODI将XML文件数据同步到其他的数据存储中。详细设置操作可见ODI的官方文档。

目前在实现XML数据同步到Oracle数据库的时候,遇到问题:当XML文件数据发生改变时,第一次执行,通常没能获取到实时的数据,即变更后的数据,在ODI同步时,不起作用。

以同步contry.xml为例子:

1、contry.xml文件结构如下

2、XML数据服务器的设置如下:

3、将contry.xml反向后,用ODI查看数据时如下:

4、将contry.xml文件中的loc变成SiChuan后,在ODI模型处查看xml存储,发现数据跟步骤3的一样,即ODI并没有及时将最新的数据反应到模型,跟ODI中对表存储的效果不一样;在接口中第一次执行时,若xml数据发生变更,也会出现此类情况;由此可能导致数据丢失遗漏;

Solution:

经过查阅资料,可通过XML数据服务器的JDBC中追加参数解决。

在JDBC的URL后面,添加上参数dod=yes,即可保证xml文件的数据实时同步。

解决的思路是:

利用了dod参数的原理,dod=yes,可将内存、驱动中的schema清理,上一次的缓存JDBC关闭时,自动会释放,保证了每次读取的数据都是实时最新的,若为大数据量的同步,会导致性能减弱。按照查阅到的资料,dod参数需放到整个url的最末端。I donot know why^^,测试下来,dod放在哪里目前都没影响数据。

相关资料如下:

https://forums.oracle.com/forums/thread.jspa?threadID=638547

http://docs.oracle.com/cd/E15985_01/doc.10136/user/e16274/xml/doc/driver_configuration.htm

 http://docs.oracle.com/cd/E17904_01/integrate.1111/e12644/appendix_xml_driver.htm#CHDICHDB

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值