GBase 8a
性能调优
文章

JDBC批量insert性能差的问题分析

发表于2024-02-29 14:11:2066次浏览0个评论


JDBC批量insert性能差的问题分析

    1.问题现象
    某客户遇到通过jdbc连接到数据库批量写入数据时,反馈数据为逐条提交,性能非常差。
    
    2.相关脚本
    
    
    3.问题分析过程
    3.1.检查客户脚本,未发现问题。
    3.2.经检查jDBC驱动连接数据库的URL串,发现客户在URL中未配置参数rewriteBatchedStatements=true。
    客户增加该参数后进行验证,发现还是逐条提交。
    3.3.检查集群版本,发现客户现场版本为V95。而在V95版本里,原有的auto_commit设置不能单独生效,需要和参数_t_gcluster_oldtransaction_support_set_autocommit一起使用才生效。
    3.4.客户执行如下参数后进行验证,数据写入1000条的时候4秒左右,恢复正常。
    set global _t_gcluster_oldtransaction_support_set_autocommit=1;
    后面让客户把该参数配置到集群管理节点的配置文件中,以便重启集群生效。

----调整---------------

原因总结:

 1)后面验证发现与集群版本和参数都没有关系。

 2)具体原因为,调用jdbc驱动连接数据库时,对表中字段中有关键字select 需要用双引号引起来

 

评论已关闭