Java批处理事务处理-数据库查找缓存

Java批处理事务处理-数据库查找缓存,java,database,caching,Java,Database,Caching,我有一个在java上运行的批处理应用程序,它处理传入的文本文件,验证它,并将记录存储到DB。 作为验证的一部分,批处理将检查该记录是否存在于数据库中的特定表中。如果不存在,则跳过输入记录并处理下一条记录 输入记录批处理文件包含数百万条记录,表也包含数百万条记录。因此,验证过程会运行很长时间,以验证每个记录是否存在于数据库中。 我正在寻找一个解决方案来简化缓存或任何其他可能的解决方案 由于在内存中缓存数百万条记录将是一项开销,是否有其他解决方案可以在不影响性能的情况下缓存这些记录 有没有更好的缓存

我有一个在java上运行的批处理应用程序,它处理传入的文本文件,验证它,并将记录存储到DB。 作为验证的一部分,批处理将检查该记录是否存在于数据库中的特定表中。如果不存在,则跳过输入记录并处理下一条记录

输入记录批处理文件包含数百万条记录,表也包含数百万条记录。因此,验证过程会运行很长时间,以验证每个记录是否存在于数据库中。 我正在寻找一个解决方案来简化缓存或任何其他可能的解决方案

由于在内存中缓存数百万条记录将是一项开销,是否有其他解决方案可以在不影响性能的情况下缓存这些记录

有没有更好的缓存框架可以解决这个问题


使用带有普通JDBC代码的核心java,没有hibernate或其他框架。数据库是oracle。

您能否在插入的表和正在检查的列之间创建外键关系?如果RI异常失败,请尝试插入并捕获该异常。这将导致尝试将所有记录插入数据库,并导致大量异常。目的是减少数据库命中率。只需忽略无效的记录。