我有一个流程,最初将生成 3-4 百万个 PDF 文件,并以 80K/天的速度继续。它们每个都非常小(50K),但我担心的是如何管理我生成的文件总量以便于查找。一些细节:
- 生成文件后,我将运行一些其他步骤,并且将有一些服务器参与,因此我需要在生成文件时注意它们。
- 生成后,这些文件将通过我编写的查找过程可用。本质上,我需要根据每个文件唯一的订单号来提取它们。
- 在任何时候,现有的订单号可能会被重新提交,并且生成的文件将需要覆盖原始副本。
最初,我计划将这些文件全部写入 NAS 上的单个目录,但我意识到这可能不是一个好主意,因为它们有数百万个,Windows 可能无法非常优雅地处理百万个文件查找。我正在寻找一些建议:
- 一个文件夹可以吗?这些文件永远不会被列出——它们只会使用 System.IO.File 和我已经确定的文件名来检索。
- 如果我创建一个文件夹,我是否可以使用 System.IO.DirectoryWatcher 监视新文件,即使有这么多文件,还是会因为有这么多文件而开始变得迟缓?
- 是否应该将它们作为 BLOB 存储在 SQL Server 数据库中?因为我需要通过参考值来检索它们,所以这可能更有意义。
谢谢你的想法!