我应该在旧计算机上使用 SSD 还是 HDD 进行“交换”

Val*_*lov 9 linux performance ssd hard-drive swap

介绍

让我们想象一些速度不是一个因素的环境。就我而言,我将一台非常旧的计算机用作“服务器”,其中包含很多愚蠢的东西(个人实验室)。更重要的是资源的数量,而不是它们的速度。

我们可以在哪些硬件上使用它

我的“服务器”是 4 GB RAM DDR2 800Mhz 和 Intel Pentium CPU x86_64(有两个内核)。所以主板不支持超过 4 GB 的 RAM。

控制“交换”

它是一个 Linux“服务器”,上面安装了 docker,因此每个应用程序都运行到具有 RAM 和 Swap 限制的容器中。

还有一个神奇的变量:

vm.swappiness
Run Code Online (Sandbox Code Playgroud)

swappiness 参数配置您的系统将数据从 RAM 交换到交换空间的频率。

题?

HDD 和 SSD 有生命周期。如果我们将它用于“交换”,则它是一种高读/写操作。当然,它不是生产“服务器”,但也不是台式机/个人电脑。无论如何,打破硬件对每个人来说都是一个糟糕的情况,特别是当它已经老了并且他们生命中的大部分时间都结束了。

那么哪个更好呢?HDD 真的会很慢而且没用,或者 SSD 的寿命会比 HDD 短吗?

Gom*_*dor 20

SSD 绝对是任何系统的类固醇。甚至已经被判处报废的机器也会被它复活。另一方面,工厂规范确实表明它们的统计寿命小于 HDD 的统计寿命。但是今天,即使是最便宜的 SSD 也有 3 年的保修期。我怀疑任何人都可以预见 3 年后我们将使用什么样的小工具,这很公平。当然,在那个时间范围内它仍然可能会崩溃,但是,我们都必须知道,如果你只有一个实例,没有备份,那么你已经没有了,无论你有 HDD 还是 SSD。

我想你已经猜到了我的想法是什么:除非我有一些 RAID 必须购买相同类型的 HDD,否则我会购买 SSD(嗯,我做到了)。

  • 小心,通常是“3 年或 X 盘操作保证”之类的 (9认同)

Jon*_*nno 13

您的问题指出速度不是一个因素,但资源才是。在这种情况下,HDD 为您提供比目前市场上任何 SSD 都大得多的 GB 空间。如果您追求纯资源,HDD 目前将是您的最佳选择,具体取决于您认为需要多少额外资源。但是,我不确定您的意思是否真的如此,因为在错误的设置中,速度差异可能非常显着。


现在,就可靠性而言,这很难说。首先,您实际上并未说明您计划进行哪些可能需要交换分区的资源密集型操作。交换分区将仅用于超过 4GB 的 RAM,因此除非您正在运行的操作持续导致 >4GB RAM 被重写,否则您可能根本不会在 SSD 块上导致任何 PE 循环,这些是我们通常的指标SSD 多久会出现故障。HDD 需要考虑机械因素。即使读取硬盘驱动器也会导致磁头搜索,如果您还将驱动器用作普通存储设备以及交换内存,则可能会搜索很多。这将对驱动器造成额外磨损。

其次,SSD 现在比第一次实施时更可靠(不幸的是,几年后它们被认为不可靠),其中大多数很容易超过机器的正常寿命。同样,很难准确说出设备的使用寿命(制造商会提供MTTF 和 MTBF 平均值,但总体而言,这些数据具有误导性,只能给您一个模糊的统计概念),但有一个指标可以为您提供更好的主意是提供的保修期,现在 SSD 的保修期通常比 HDD 长(图我应该引用一个消息来源 -三星为 SSD 提供最少 36 个月的保修期,最少为 HDD 提供 24 个月的保修期)。


让我们考虑速度一个因素。首先,您的主板处于具有 DDR2 RAM 的时代,可能只有 SATA2 控制器,因此,无论如何,您可能会遇到许多 SSD 的最大吞吐量的瓶颈。当然,SSD 的主要优点是对 HDD 的极低延迟和高 IOPS,如果您将其纯粹用作交换驱动器,这将非常重要。

当然,swap 绝对不是真正 RAM 的替代品,也无法接近 RAM 的速度,即使在 DDR2 速度下也能达到。如果将 SSD 与 RAM 进行比较,则 SSD(见鬼,甚至是一组 RAID 条带 SSD)看起来非常慢。与 SSD 相比,HDD 看起来非常慢。如果您必须使用交换来弥补 RAM 的不足,SSD 至少会给您一个弥补速度下降的机会。

在我看来,最好的情况是:

  1. 升级机器以允许更多、更快的 RAM。
  2. 使用 SSD 作为专用交换分区。
  3. 使用 SSD 作为共享交换和引导/数据分区。
  4. 使用 HDD 作为专用交换分区。
  5. 使用 HDD 作为共享交换和引导/数据分区。

如果您的情况是 2 或 4,那么可靠性无论如何都不应该成为问题,因为您不会丢失任何实际数据,并且设备应该有足够长的保修期来覆盖您,直到您可以选择最佳选择实际上有更多的内存。


Jou*_*eek 5

最大的问题是“这是否支持 AHCI” - 您需要它以获得最佳性能和修剪工作等。即使没有它,SSD 也比旋转的防锈驱动器快 - 但它不是一个明显的选择。

确实想要一个 SSD,并且将其用于交换应该会有所不同。AHCI 支持应该在获得 SSD 方面取得平衡。

有趣的是,虽然我没有性能数据,但我尝试了一个几乎没有缓存的低端ssd(一个运行硅运动控制器的 120gb 'king dian')。它的 MLC(寿命略长)和性能明智——它甚至可以让你在内存不足的系统上运行 Windows 10。也就是说,如果你没有 AHCI,你的最大速度是有限的(在戴尔 mini10 上试过更好的驱动器,它只运行兼容模式,但效果不佳)。考虑到 SSD 现在大约 30c a gb,嗯,如果它很重要,请备份它,然后恢复或获取备用。还要考虑比 SSD总是具有更好的随机访问速度。

我几乎厌倦了指出 SSD 磨损并不常见 - 您的控制器故障的可能性更大。我在这里的回答涵盖了所有这些。SSD 很少磨损。如果您担心,只需多花一点钱即可获得更好的 SSD。任何组件都可能随机出现故障。SSD 磨损人们担心的方式是可取的,因为您会收到足够的警告。具有控制器故障的 SSD 或 HDD 或具有突然头部崩溃或类似问题的 HDD不会。将任何存储视为随时可能发生故障的东西。

我也认为这是一台较旧的机器。现代“nuc”级机器可能具有相当的性能(或在某些方面更好)、节省电力并且可能更易于维护。我建议将 SSD 作为渐进式新构建的第一部分。考虑到这台机器很可能......超过十年的历史,电容器之类的东西可能会出现故障。我怀疑即使是廉价的 SSD 也可能比您的主板更耐用。如果不出意外,请考虑看看是否有人拥有一台配备 DDR3 的机器,他们想要摆脱廉价的 ;p。也就是说,我已经升级了 core 2 时代的笔记本电脑,即使在吱吱作响的旧机器上,速度差异也很大。它们几乎也是最早支持 AHCI 的系统。

我还建议不仅将 SSD 用于交换 - 获得一个合理大小的驱动器(无论如何都很难找到小于 120gb 的任何东西)并将您的 docker 容器存储在它上面也很有意义。

不会弄乱swappyness。您希望使用尽可能多的 ram,并且您的系统知道何时不分页。