Sql server 需要更快的方法将大型CSV文件导入Azure SQL Server DB

Sql server 需要更快的方法将大型CSV文件导入Azure SQL Server DB,sql-server,azure,csv,import,Sql Server,Azure,Csv,Import,在以下场景中需要建议: 我们必须将数据从大型CSV文件(>=1GB)导入目标Azure SQL DB 目前正在使用SQL server 2012的“导入和导出数据”实用程序来执行此操作 问题: 1.进口速度很慢。它在5个半小时内导入160万条记录(256MB CSV),这是非常昂贵的wrt时间和成本 是否有加快csv数据加载速度的建议 注: 1.CSV文件在数据中包含(,),并使用(“)作为文本字段分隔符 源具有所有类型的数据-日期、整数、小数 提前感谢!最适合您的方式是使用。它传输大数据的性能

在以下场景中需要建议:

我们必须将数据从大型CSV文件(>=1GB)导入目标Azure SQL DB

目前正在使用SQL server 2012的“导入和导出数据”实用程序来执行此操作

问题: 1.进口速度很慢。它在5个半小时内导入160万条记录(256MB CSV),这是非常昂贵的wrt时间和成本

是否有加快csv数据加载速度的建议

注: 1.CSV文件在数据中包含(,),并使用(“)作为文本字段分隔符

  • 源具有所有类型的数据-日期、整数、小数

  • 提前感谢!

    最适合您的方式是使用。它传输大数据的性能很好

    您可以将csv文件存储到多个日期存储(数据工厂支持):

    然后将csv文件复制到Azure SQL数据库

    您可能需要参考以下教程:

  • 更新:

    您的csv文件包含包含逗号“,”的列数据

    很多人都提出了同样的问题,我也向Azure支持部门寻求帮助,他们的建议与@Jacob H在评论中告诉你的一样:更改csv文件或尝试其他方式


    希望这能有所帮助。

    您能安装SQL实用程序(BCP和SQLCMD)并使用它们吗?您好@JacobH我已经安装了这些实用程序,但问题是BCP不支持数据中的逗号。我的数据可以包含逗号,例如:“first,second”“应作为一列导入。我误解了什么吗?哦,你是对的。除非您可以将分隔符更改为其他内容。您能使用类似Python的东西吗?使用a和插入行将是一个相对较小的脚本。不过,我不知道它能保证改进导入和导出数据实用程序。大容量插入的能力在数量上有所不同,但Python可能会将速度提高到可接受的水平。@User2019我同意Jacob H。我更新了我的答案。如果我的答案对您有帮助,您可以将其标记为答案(单击答案旁边的复选标记,将其从灰色变为填充)。这可能对其他社区成员有益。谢谢。您好@Leon,非常感谢您的检查和回复。不过,由于成本原因,我们希望避免数据工厂,可以检查更改分隔符,但csv是一种基本且广泛使用的格式,数据可以包含逗号也是一种非常常见的情况,不知是否还有其他解决方法?@User2019根据我的经验,没有好的解决办法。无论您是否使用DF,csv列数据都包含逗号“,”,这将导致架构映射错误,可能会获取更多数据或丢失某些列。您可以在堆栈溢出中搜索或搜索此类问题。等待几天,如果仍然没有人能给你任何解决办法,那么希望你能标记它。非常感谢。您好@User2019,如果我的答案对您有帮助,请您将其标记为答案(单击答案旁边的复选标记,将其从灰色切换为填充)。这可能对其他社区成员有益。非常感谢。