- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是来自 teradata 网站的示例 jdbc FaSTLoad 程序的链接:http://developer.teradata.com/doc/connectivity/jdbc/reference/current/samp/T20205JD.java.txt
它只插入一行,所以我通过替换以下代码修改它以插入 500K 行:
pstmt.setInt(1, 1);
pstmt.setString(2, strBuf);
pstmt.addBatch();
batchCount++;
与:
for (int i = 0; i < 500000 ; i ++ ) {
pstmt.setInt(1, i);
pstmt.setString(2, strBuf);
pstmt.addBatch();
batchCount++;
}
当然失败了,因为java内存不足。
所以 FaSTLoads jdbc 无法上传 500K 行非常简单的数据。 .因为 addBatch()
方法在某些时候会抛出 outOfMemory
异常。
但我读到 FaSTLoad 能够上传数百万行! ! !但是我在任何地方都找不到任何真实的例子。如何克服 outOfMemory
java 异常?
任何人都可以展示一个使用 jdbc
和 FaSTLoad
(不是 FaSTLoadCSV!)上传假设 1M 行的示例吗?
附言:
1) xmx
堆空间的增加达不到目的,因为每增加一个addBatch()
方法都会执行得更慢,并且额外的堆有限制(通常是 4 g )
2) 我不需要 FaSTLoadCSV
,因为它在 ttu 14 之前不支持文本限定符并且还有其他问题
最佳答案
您必须 setAutoCommit(false)
然后简单地 executeBatch
多次,例如在每 50,00 或 100,000 个 addBatch
之后,在您用完内存之前。最后,您提交
。
参见 Speed up your JDBC/ODBC applications在 developer.teradata.com 上
关于java - Teradata-jdbc : What's the point of using FaSTLoad if java has memory limitations?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26684648/
我尝试上传 3MB 非常小的 csv 文件,包含 30,000 行和 4 列。我花了一个多小时 cUrl = "jdbc:odbc:DSN; TYPE=FASTLOAD" ; Connection c
我的连接字符串如下所示 String cn = "jdbc:odbc:DSN";效果很好。但是,当我尝试将其修改为String cn = "jdbc:odbc:DSN, TYPE=FASTLOAD";
我正在尝试将数据插入到 teradata 表中。我在 Spark 数据框中有数据。我想使用 JDBC 驱动程序将这个包含超过 2500 万条记录的数据框插入到 Teradata 表中。 我该怎么做?
我最近从 Teradata 转移到 ParAccel,并在 SAS 环境中使用我的 BI DBMS。 Teradata 有一个名为 FastLoad 的实用程序用于快速、更高效地加载大型数据集。我经常
这是来自 teradata 网站的示例 jdbc FaSTLoad 程序的链接:http://developer.teradata.com/doc/connectivity/jdbc/referenc
我花了相当多的时间研究使用 Teradata FaSTLoad 上传 csv 文件的合理方法,但文档简短、有限且不清楚。 给定一个 csv,你如何将它上传到给定的数据库? 最佳答案 我创建了一个 Gi
我是一名优秀的程序员,十分优秀!