现有小文件,数量几亿甚至上百亿,目录深度较深,数据量大概是100TB,采用哪种存储架构存储比较合适?

现有小文件,数量几亿甚至上百亿,目录深度较深,数据量大概是100TB。不知道采用哪种存储架构存储比较合适,还得要考虑备份。显示全部

现有小文件,数量几亿甚至上百亿,目录深度较深,数据量大概是100TB。
不知道采用哪种存储架构存储比较合适,还得要考虑备份。

收起
参与58

查看其它 16 个回答Seaskyblue的回答

SeaskyblueSeaskyblue医疗行业解决方案架构师联想凌拓科技有限公司

一方面看存储产品参数,最重要的还是实测。
100TB容量不算大,所以楼主的业务存储选型难度在于海量的小文件和目录深度。

NAS是一个最直觉的存储选项。NAS存储选型建议如下
1、看厂商公布的NAS存储产品单一命名空间下支持的容量和文件数量,然后做一个简单的除法,就可以推断出NAS存储对小文件的支持程度。当然能够实测是最好的。
2、首选集中式NAS存储,分布式NAS慎选。因为分布式存储目前只有副本和纠删码两种数据保护技术。副本对小文件性能好,但是3副本带来的容量放大,直接反应在采购成本和运维成本上。纠删码的容量效率高,但是对小文件的读写性能总是要做取舍,大多数情况下都是采用利用归并写来打包小文件提高写性能,代价就是读性能的损失。
3、可选项:如果有数据备份需求,需要考察存储自身是否支持海量小文件NAS备份。
4、高目录深度带来的访问性能下降,在当下还是NAS文件系统自身的技术限制,不是采用高端硬件就能彻底解决的。对于这样的业务场景,要么通过业务规划让目录深度变小,要么就是选用对象存储,因为对象存储是没有目录深度的概念的。

对象存储的技术特性适合海量小文件的业务场景,对象存储选型建议:
1、只能通过API来访问对象数据(需要业务端的适配)。
2、不适合频数据需要繁修改的业务。
3、避坑建议:最好通过测试来验证对象存储一个bucket,在性能不出现大幅下降前提下,能够实际存储的小文件数量。相信我,这是一个巨坑。
4、可选项:数据备份。对象存储是通过开启版本功能和bucket复制功能来近似实现数据备份。但是大多数情况下是依靠对象存储自身架构来实现更高的数据持久性保障,而不做数据备份。毕竟,对象存储更多保存的是很少变化的数据。

硬件生产 · 2020-12-06
浏览5635

回答者

Seaskyblue
医疗行业解决方案架构师联想凌拓科技有限公司
擅长领域: 存储灾备分布式系统

Seaskyblue 最近回答过的问题

回答状态

  • 发布时间:2020-12-06
  • 关注会员:19 人
  • 回答浏览:5635
  • X社区推广