java – 在SQL中将非常大量的记录插入到表中的最快方式
发布时间:2020-12-14 16:34:01 所属栏目:Java 来源:网络整理
导读:问题是,我们从 Java应用程序中将大量记录(超过一百万)插入到单个表中.这些记录是由Java代码创建的,它不是从另一个表移动,所以INSERT / SELECT将不会有帮助. 目前,我的瓶颈是INSERT语句.我正在使用PreparedStatement来加快进程,但是在普通服务器上每秒不能获
问题是,我们从
Java应用程序中将大量记录(超过一百万)插入到单个表中.这些记录是由Java代码创建的,它不是从另一个表移动,所以INSERT / SELECT将不会有帮助.
目前,我的瓶颈是INSERT语句.我正在使用PreparedStatement来加快进程,但是在普通服务器上每秒不能获得超过50个recods.表完全不复杂,没有定义索引. 这个过程需要太长时间,而且花费的时间会产生问题. 我可以做些什么来获得最大速度(每秒INSERT)? 数据库:MS SQL 2008.应用程序:基于Java,使用Microsoft JDBC驱动程序. 解决方法
使用
BULK INSERT – 它是专为您正在要求的设计,并显着提高插入速度.
另外,(为了防止你真的没有索引),你可能还需要考虑添加一个索引 – 一些索引(大多数是主键上的索引)可以提高插入的性能. 您应该能够插入记录的实际速率将取决于确切的数据,表结构以及SQL服务器本身的硬件/配置,因此我无法真正给您任何数字. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |