科学数据存储:许多小文件,一个卷或几个?

我有大约8TB的“样本”数据,具有以下特征:

每个样本:一个文件夹中包含5-15GB,包含〜20k个文件和〜10k个子文件夹(2000个顶级,5个包含〜5-2MB数据文件和小设置文件的子级)。

我正在设置运行带有19 TB有效空间(RAID5)的Windows Server 2008 R2的Dell T710服务器,以整合数据。 我以前曾经看到,在专用内部驱动器(NTFS)上打开/浏览/复制具有大约1.5TB这种types的数据的计算机时,显着的减速。

每个样本将被复制到此服务器进行存储,但分析将在别处发生(从服务器复制数据)。 所以现在的数据没有每天变化,只是新的数据。

什么是最好的驱动器configuration来处理这种types的数据? 驱动器是GPT,目前有EFI,MSR,70 GB系统分区和空的19 TB数据分区。

  • 一个大的19 TB容量
  • 几个较小的卷(less碎片?)

build议创build一个每个样本的zip压缩包并将其存储起来? 我会对此犹豫不决,因为用户直观地理解文件夹,腐败对档案有更糟的影响 – 在极端情况下,我们可以承受一些损坏的子文件夹(或多或less的样本像素),但会损坏整个样本档案会不好。

单个RAID-5卷中的19TB非常大。 你没有提到你在这个卷中有多less个磁盘,但是在戴尔T710中,我认为你很可能每个磁盘的磁盘容量超过1TB。 我觉得RAID-5的成员很大。 如果这是一个单一的RAID-5跨度对我来说更加可怕。 (我不喜欢大于5或6个磁盘的磁盘空间, 尤其是在磁盘空间很大的情况下)。

除了selectRAID-5之外,以我的经验来说,这是相当大数量的要求NTFS处理的文件。 你可以做的任何事情来减less存储文件的数量将有助于性能。 如您所描述的那样压缩“样本”会大大减less您要求NTFS处理的文件数量。 根据数据压缩程度的不同,通过networking传输文件也可以显着提高性能。

在我看来,你不应该担心数据的“腐败”。 如果您没有足够的信心认为您的备份系统和主存储器不会破坏文件,那么您应该集中精力强化这些“基础”组件。 RAID-10或RAID-50将是加强主存储的好的第一步。 既然你不谈论你如何做备份,我真的不能说这个。

编辑:

我对RAID-5的可用性保持警惕。 关于这个的开创性文章是为什么RAID 5在2009年停止工作 。 要点在于较大磁盘上的误码率使统计上不可能的大型RAID-5卷的重build成为可能。

如果你有另一个数据副本,那么这可能不是一个问题。 您应该考虑RAID-5卷的完整损失是什么。 你将能够启动一个新的卷,并继续工作,而你从场外复制的数据重新复制? 在工作可以重新开始之前,您是否需要等待一些数据的复制? 如果有空闲时间,成本是多less?

如果您有很多小文件,则会丢失磁盘空间。 原因是你的文件系统的块大小。 我的第一个build议是使用Linux系统进行长期支持。 而我的第二个build议是保存文件而不压缩文件系统,因为理解系统比丢失一些字节要重要得多。 我有与基因组数据(鸟枪分析仪)相同的问题。 我的第三个build议是使用RAID10或RAID50。