2 qq 27704633 qq_27704633 于 2017.09.12 15:37 提问

java中对数据进行对比,数据可能会达到千万级 50C

现在有一个需求,需要对两部分数据进行对比,一部分是财务数据,
一部分是另外一个系统导出数据,将两边数据进行对比,简单来说就是看看财务的流水是否能和系统内的数据对上账,其中需要根据每条记录去对比,数据
很可能会达到千万级,求各位大神给点思路,小子非常感谢

5个回答

qq_27704633
qq_27704633   2017.09.12 16:29

没人自己顶上去,各位大神给点意见指导指导

qq_22590821
qq_22590821   2017.09.12 16:38

分而食之,一口吃下个大胖子;
可以先按照时间段来分段对比,这样能保障不宕机;
时间上可以使用多线程来处理,分别取出不同时间段来进行对比;
这只是一个思路;

qq_35498454
qq_35498454   2017.09.12 16:40

http://blog.csdn.net/yun0000000/article/details/52758098 和这个类似,稍微改一下就行

m0_38124502
m0_38124502   2017.09.13 10:54

可以解决。简单说一下思路,首先保证一类数据文件有顺序,另一类数据文件有序无序都行。采用二分比对,从无序文件中直接读取一条记录,
读取的记录,直接和有序文件进行比较,此时因为有序文件是有序的,又因为采用二分比对,时间上可以忽略不计,千万级记录一会就比对完了。

qq_28766327
qq_28766327   2017.09.14 12:18

数据库操作最好批量进行,数据库连接什么的很耗时。连接次数过多,浪费时间。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们的问题的解决方法 续集
【C#】对“xxxx::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用。
类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们的问题的解决方法
2017年大数据哪些趋势可能会影响到你呢?
修改已存在数据的表结构可能会遇到的问题:
注意数乘可能会引发数据的溢出
超强数据恢复(格式化100%也可恢复)360可能会报毒,但绝对没毒!!!!
SYD8801 UART使用说明【uart轮发数据代码实现】【 uart中断发数据代码实现】【RFSleep函数对串口的影响】【中断中调用串口打印函数有可能会造成死机】
在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。