【发布时间】:2012-03-21 05:01:36
【问题描述】:
我正在生成一个大小约为 250MB 的字节数组。然后使用 Java 应用程序中的标准 JDBC 代码将其插入到远程 Microsoft SQL Server 的表中。
我的第一个设置 - 应用程序在一个 Amazon EC2 实例上运行,Microsoft SQL Server 在一个单独的 Amazon EC2 实例上运行。在这种情况下,INSERT 语句起作用 - pass。
我的第二个设置 - 应用程序在我的笔记本电脑上本地运行,数据库托管在 Amazon EC2 实例上。此处连接正确,但在线
pstmt.executeQuery(1, byteArray);
即使在半小时后,程序也会继续运行而不会终止 - 失败。
为了检查我是否真的能够从本地机器访问远程数据库并将数据插入到远程数据库中,我编写了一个简单的应用程序来将一个整数插入到表中 - pass。
我怀疑由于我没有非常快的互联网连接,我的数据上传失败。无论如何可以加快从 JDBC 到远程 SQL Server 数据库的数据传输。
我曾考虑增加 SQL Server 上的数据包大小 - 但我不确定这是否正确,因为它在使用另一个 Amazon EC2 实例运行相同的应用程序时有效 - 只是在从本地实例运行时不行的应用程序。为团队中的每个开发人员运行 Amazon EC2 实例是一项昂贵的提议。
【问题讨论】:
-
如果您正在考虑远程上传大块数据,我肯定会考虑对上传进行分块并使其可恢复...希望您的会话在混乱的互联网连接中长时间保持不间断是乐观
标签: sql-server-2008 jdbc large-data