繁体   English   中英

读取文件的最快方法

[英]Fastest way to read a file

我的应用程序当前实现一个FileSystemWatcher对象,以监视用于创建文件(Input.xml)的目录(C:\\ Incoming)。

我目前正在使用Streamreader对象将文件读入我的应用程序,但是考虑到数据将用于在SQL Server数据库中执行操作,因此我担心性能。

将文件读入内存的最快方法是什么(或者我已经在使用它了)?

您正在使用标准方法执行任务。

如果您需要将数据(即大数据)加载到数据库中,则瓶颈将在代码和数据库之间,除非您使用BULK INSERT技术,而不是一张一行地插入行。 具体取决于特定的数据库服务器。 但是,如果文件相对较小,则不必担心,在这种情况下,负载将更均匀地分布。 即使那样,我也不会在乎磁盘访问的速度。

开始阅读文件之前,请确保已完全写入文件。 例如,尝试先将其打开以进行独占阅读。 如果通过重命名操作(而不是通过创建操作)使您可以访问文件,这确实有所帮助,尤其是在您希望有许多文件到达的情况下,因为服务器端不必忙于等待文件完全完成书面。 基本上,这意味着该文件应首先写入一个您不关注的文件名。

.NET也有SqlBulkCopy

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM