POSTGRE数据库同步SQLSERVER数据的同步错误的问题

背景:

本地是POSTGRE数据库,上游是SQLSERVER数据。逻辑是定时取本地最新的时间,去上游取大于该最新时间的数据同步下来。结果发现同步数据不对。

问题1:明明已经从上游取下来了最新数据存到本地了,然后下一次去取数据,用最新时间取上游数据,结果取到了同样的VIN数据下来了。猜想可能是上游数据精确到秒更小的单位了,但是本地又只保存精确到秒,导致不断的取同样的数据下来

问题2:上一轮同步还同步到了2022-01-11的数据,下面不知道为什么拿到了2021-12-24的时间去上游取数据,正确来说应该每次取得本地库最新得数据。怀疑是sqlserver和postgre时间格式有点问题

问题3:程序报内存溢出。估计查询语句执行得有问题,一次性从上游取了2W条数据缓存到本地,然后该程序得内存占用达到了100多M,导致直接内存爆了。

 解决方案:

不用本地数据最新时间去上游取数据了,用自增长ID去上游取,每次将上游得自增长ID存到本地,然后每次取本地最大自增长ID,每次同步100条数据,就最大自增长ID加100,去上游取最大自增长ID到最大自增长ID加100的查询语句取数据下来同步。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值