上周,我们将大约1400万个文件从本地文件共享转移到Azure文件共享。我们使用了AzCopy和Robocopy。
遗憾的是,一些Robocopy任务在飞行中被杀死(服务器关闭)。因此,一些文件在Azure和on-prem中具有相同的大小和相同的时间戳,但它们在Azure中被损坏(全是零)。
我们现在必须根据内容来比较prem和Azure中的所有文件,而不是根据大小和日期。
按内容比较文件的最快方法是什么?Windows的fc是一个选项,但是它看起来不够快。
多谢!
Robocopy不是罪魁祸首,AzCopy才是。
我结束了:
- 加载数据库中的所有文件名。
- 创建一个PowerShell脚本,计算每个文件在本地和Azure上的哈希值。
- 当哈希值相同时,文件被标记为已处理。
- 如果不相同,则再次复制文件。然后验证哈希值,并在数据库中标记文件。
我在4个VM上启动了大约14个这样的脚本,每个脚本负责数据库的一个子集。
它花了大约一个月的时间来完成。平均文件大小约为2mb。
希望有帮助。