Ank*_*pta 11 storage filesystems compression log-files
假设您面临着价值 25 TB 的未压缩日志文件,并且您可以随意使用 20 个具有 25 TB 集体免费存储容量的商品盒。
你将如何存储这些?
a) 使用哪个分布式文件系统?
b) 哪种压缩/解压格式/算法?
c) 日志文件大小为 1MB 到最大 7MB 所有文本和大量空白
d) 用法是 a) 人们想要比以前更多的最新日志文件,所以使用什么缓存系统 b) 人们只会读取日志文件而不删除它们 c) 人们想要针对日期范围列出日志文件
e) 商品盒上运行的操作系统为Linux,
f) 至于备份,我们有一个存储阵列来处理这个问题。因此存在从阵列恢复数据的能力。
我不希望他们直接访问文件系统。我该怎么办 ?我如何为他们提供基于 REST 的 API?
请给你 2 美分,你会怎么做?
安库尔
我不是分布式文件系统忍者,但在将尽可能多的驱动器整合到尽可能少的机器中后,我会尝试使用 iSCSI 将大部分机器连接到一台主机。在那里我可以将事情整合到一个容错存储中。优选地,在机器内(如果驱动器断电)和机器之间(如果整机断电)容错。
我个人喜欢 ZFS。在这种情况下,内置压缩、重复数据删除和容错功能会有所帮助。但是,我确信还有许多其他方法可以压缩数据,同时使其具有容错性。
希望我有一个真正的交钥匙分布式文件解决方案来推荐,我知道这真的很麻烦,但我希望它指向正确的方向。
编辑: 我还是 ZFS 和设置 iSCSI 的新手,但回忆起在德国看到 Sun 的一段视频,他们展示了 ZFS 的容错能力。他们将三个 USB 集线器连接到计算机,并在每个集线器中放置了四个闪存驱动器。然后为了防止任何一个集线器关闭存储池,他们制作了一个 RAIDz 卷,由每个集线器的一个闪存驱动器组成。然后他们将四个 ZFS RAIDz 卷条带化在一起。这样只有四个闪存驱动器用于奇偶校验。接下来当然是拔掉一个集线器,这会降低每个 zpool 的性能,但所有数据都可用。在此配置中,最多可能会丢失四个驱动器,但前提是任意两个驱动器不在同一个池中。
如果此配置与每个盒子的原始驱动器一起使用,那么将保留更多驱动器用于数据而不是奇偶校验。 我听说FreeNAS 可以(或将能够)通过 iSCSI 以“原始”方式共享驱动器,所以我认为 Linux 也可以这样做。正如我所说,我仍在学习,但从驱动器奇偶校验的角度来看,这种替代方法比我之前的建议浪费更少。当然,它将依赖于使用 ZFS,我不知道是否可以接受。我知道,如果您将不得不构建/维护/修复某些东西,通常最好坚持您所知道的,除非这是一种学习经验。
希望这更好。
编辑:做了一些挖掘并找到了我谈到的视频。他们解释在集线器上传播 USB 闪存驱动器的部分从 2 分 10 秒开始。该视频是为了演示他们的存储服务器“Thumper”(X4500) 以及如何将磁盘分布在控制器之间,因此如果您的硬盘控制器出现故障,您的数据仍然会很好。(我个人认为这只是极客玩乐的视频。我希望我自己有一个 Thumper 盒子,但我妻子不喜欢我在房子里运行托盘搬运车。:D 那是一个大盒子。)
编辑:我记得遇到过一个名为OpenAFS的分布式文件系统。我没有尝试过,我只阅读了一些关于它的内容。也许其他人知道它在现实世界中的处理方式。