不断处理大量读取/写入/删除时的硬盘可靠性

不断处理大量读取/写入/删除时的硬盘可靠性

除了存储大量照片外,我的 Web 应用程序还需要不断读取、写入和删除大量临时文件,用于各种功能。其中一些临时文件可能非常小,而另一些则可能非常大(1 GB 以上)。我在 Linux 上运行。

这种不断的读取/写入/删除是否会增加驱动器故障的风险?为了确保实际照片的安全,我倾向于将照片存储在一个驱动器上,并为临时文件设置另一个驱动器……但这是否有点过头了?

谢谢你,布莱恩

答案1

与不使用硬盘相比,使用硬盘肯定会增加其损坏的风险……

然而,由于驱动器可能会损坏反正,我建议您针对您感兴趣的实际数据制定一些备份策略。备份到第二个驱动器或使用 RAID 是常见的策略;根据风险,您可能希望备份到其他位置。在我看来,有了适当的备份,就不需要暂存盘了。

答案2

您可能需要考虑将这些文件存储在 tmpfs 挂载上(在 raid 支持的块设备上具有大小合适的交换区域)。这可以使所有小的临时文件都快速运行(因为它们不会进入磁盘)并避免磁盘磨损。

如果您考虑系统的可靠性,您会有某种类型的 UPS 设置,这样您就可以清除临时文件以避免任何数据丢失。

答案3

您需要设置 RAID 阵列,这样即使丢失了一个驱动器,您的系统仍可保持在线,直到该驱动器被替换。除此之外,您还需要某种备份解决方案,这样即使丢失了 RAID 阵列,您仍可拥有一份数据副本(尽管有些旧)。

答案4

如果您担心照片的安全,则需要一个好的备份方案。无论是创建镜像(rsync?)到外部驱动器还是设置每晚运行的备份磁带方案,这些都应该足以保证数据安全。它还可以确保数据实际上是备份的,而不是可用的(这是 RAID 所做的)。如果您弄乱了照片或损坏了照片,RAID 会很乐意毁掉任何恢复的机会。

持续使用会加速硬盘的损坏吗?我认为会穿驱动器会稍微磨损一点,但您通常遇到的驱动器故障是由于盘片不断旋转。无论您是否使用驱动器,都是如此;只要有电,除非磁盘进入省电模式或计算机处于睡眠状态,否则它就会旋转并磨损驱动器。真正的问题是,如果您让驱动器闲置几年,它可能不会再次开始旋转,因此您仍然会丢失数据。

这仍然取决于你正在做什么。我的意思是,如果你有一个 64 位操作系统和一个大容量的 RAM,你可以在 RAM 中创建一个多 GB 的临时驱动器,并用它来交换。你也可以使用单独的驱动器,但那是为了提高速度,不一定是因为它会杀死驱动器(在这种情况下是异步 I/O)。但如果有自己的驱动器,如果速度足够快,可以满足你的需求,那么对于临时文件来说,就可以了。

归根结底,就是需要一个好的备份方案。我认为驱动器磨损问题有点想太多了。

相关内容