【问题标题】:Perl DBI - Loading into SQL ServerlPerl DBI - 加载到 SQL Server
【发布时间】:2011-06-19 15:07:58
【问题描述】:

我必须每天将一个大小约为 50MB 的文本文件加载到数据库中。我正在使用 Perl DBI 使用插入语句将文件加载到 SQL Server 中。它的性能不是很好,我想知道是否有更好/更快的方式从 DBI 加载到 SQL Server。

【问题讨论】:

  • 你没有说文件是如何处理的,但是 SQL Server 有一个不错的 ETL 工具——我想他们现在把它叫做集成服务。

标签: sql sql-server perl load dbi


【解决方案1】:

您可能应该使用BULK INSERT 语句。没有理由你不能从 DBI 运行它。

【讨论】:

    【解决方案2】:

    在执行大型INSERT/UPDATE 操作时,禁用目标表上的任何索引、进行更改并重新启用索引通常很有用。这样,索引只需重建一次,而不是在每个INSERT/UPDATE 语句运行后重建它们。

    (这也可以通过将原始表复制到未索引的临时表,在临时表上执行您的工作,添加索引,删除原始表并重命名临时表来替换它,从而以零停机时间的方式应用.)

    【讨论】:

      【解决方案3】:

      另一种加快速度的方法(如果尚未完成)是使用prepared statements and bind-values

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-23
        • 2017-01-20
        • 2012-01-26
        • 2015-09-28
        • 2016-10-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多