我有400万条记录需要每天从源到目标加载数据,我们每天都在做截断。这需要9个小时,因为有10个表每天加载400万条记录数据。 你能否告诉我如何改善表现?感谢
答案 0 :(得分:0)
您有两种选择:
使用一些简单的JDBC连接设置可以提高速度。
g Measurement mean
1 a X1 1.5
2 a X2 7.5
3 a X3 13.5
4 b X1 3.5
5 b X2 9.5
6 b X3 15.5
7 c X1 5.5
8 c X2 11.5
9 c X3 17.5
应在连接的PDI中输入这些选项。双击连接转到“选项”并设置这些值。
一起使用,useServerPrepStmts=false
rewriteBatchedStatements=true
useCompression=true
和useServerPrepStmts=false
将在客户端上“伪造”批量插入。具体来说,插入语句:
rewriteBatchedStatements=true
将被重写为:
INSERT INTO t (c1,c2) VALUES ('One',1);
INSERT INTO t (c1,c2) VALUES ('Two',2);
INSERT INTO t (c1,c2) VALUES ('Three',3);
第三个选项`INSERT INTO t (c1,c2) VALUES ('One',1),('Two',2),('Three',3`);
压缩客户端和MySQL服务器之间的流量。
最后,您可以将输出步骤的副本数增加到2,以便有两个线程插入数据库。
希望它有所帮助!