首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在JDBC中处理非常大的数据处理的最佳设计

在JDBC中处理非常大的数据处理的最佳设计
EN

Stack Overflow用户
提问于 2017-02-24 03:49:58
回答 1查看 1.1K关注 0票数 2

我正在调用一个web服务,它可以返回非常大的数据量(>100 K记录= 200 MB)。我也必须将这些数据插入Server。我有以下问题。

  1. 我知道这取决于服务器资源,但是在运行时我应该在任何java结构中存储多少数据(Collection -有4,5个字符串成员,每个成员长度都< 255),这有一个大概的建议吗?我已经在每个电话中使用了50,000条记录(我不知道它需要多少内存).
  2. 然后,我使用使用JDBC的1000批处理大小将这些数据上传到数据库。这种做法正确吗?如果我使用JPA而不是JDBC,会有什么好处吗?
  3. 还有任何标准的设计来处理这个问题吗?我可以考虑将web服务调用分解为有限大小的页面,然后使用Java来处理它们。这个方向对吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2017-02-24 04:10:49

首先,是一个能够返回非常大数据量的的web服务是不够的,能够返回非常高数据量的web服务总是、,而X%的时间等可以帮助设计一个更好的系统。

使用web服务来交换如此大量的数据是不可取的,因为它也给物理网络基础结构带来了压力,但我想服务不是您系统的一部分。

您的应用程序将非常不可靠的数据量,每次命中,你也将需要一个非常快的网络,以获得该数量的数据。

现在说到你们的观点,

1.您已经猜对了,这都取决于服务器资源。有些应用程序可能对一组中的100万条记录感到舒服,而在某些地方,很少有数千条记录可能太多。您必须记住heap space和操作系统强加的限制。总而言之,这是一个非常特定的应用程序。

收集的目的也扮演了一个角色-是为了查找还是只是为了传递数据的临时存储?多久清洗一次?它是在堆栈上还是作为对象字段?它是装载一次,并在下一次装载前清洗,还是一直在增长?

2.JDBC批处理是一种正确的方法,而不是JPA。

3.如果从web服务读取数据并将数据存储在DB中是工作的主要流程,则Spring 可能更适合您的设计。

希望能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42430436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档