38 | 文件系统与对象存储
该思维导图由 AI 生成,仅供参考
异常处理才是存储的业务逻辑
- 深入了解
- 翻译
- 解释
- 总结
对象存储是非结构化数据的理想存储方式,相较于分布式文件系统,它更适合处理海量小文件。与传统文件系统不同,对象存储采用键值存储的方式,摒弃了目录结构的概念,使得请求能够快速定位到特定存储机器上,从而转化为单机问题。七牛云存储作为对象存储的代表,不仅是简单的分布式存储,还考虑了网络问题和多媒体处理,提供了上传下载加速和多媒体处理功能。因此,七牛云存储可以被理解为对象存储加上传下载加速和多媒体处理的综合解决方案。 在文章中,作者深入探讨了存储成本与持久性之间的平衡关系。他指出对象存储对单位存储成本极其敏感,并分析了存储密度和冗余度对持久性的影响。作者通过定性分析,阐述了存储密度对系统的可用性和可靠性的影响,以及集群规模对持久性的影响。最后,作者总结了对象存储的演进历史,强调了对象存储的重要性和敏感性,并展望了下一讲的内容。 总的来说,本文深入浅出地介绍了对象存储的核心话题,涉及了存储成本、持久性和集群规模等关键概念,为读者提供了对对象存储技术的全面了解和思考。
《许式伟的架构课》,新⼈⾸单¥68
全部留言(27)
- 最新
- 精选
- Geek_88604f说到hdfs的文件块,首先看看为什么用块来管理而不用文件。因为块有如下优势:单文件的大小不会受到单节点容量的限制,文件的不同的部分可以存储到不同的节点上;容易对数据进行备份提高容错能力,可以按快来备份;可以按照块来并发处理提高吞吐量。从整体上来看简化了存储系统的设计,一是按照块来设计可以很容易地估算出一个节点可以存出多少文件块;二是方便元数据管理,元数据可以和文件块分开存储,我理解桌面存储系统下的树形结构是做不到的。 那么块设置过小有什么不良影响呢?大概有以下几个影响:文件过小导致磁盘随机寻址操作变多,从而影响磁盘效率;网络开销也随之增大;元数据增多Namenode很快达到瓶颈;处理任务的task不断的启动、销毁,效率低下。 但是也不能一味的往大里设置,过大也会带来不良影响:数据块越大数据加载时间越长,系统恢复过程也越长;监控方面的预设时间间隔和数据量有关;数据块越大对算法也是一个挑战。 需要特别说明的是当文件大小小于块大小时,它占用的空间是小文件的实际大小,并非快的大小。hdfs对小文件是做了一些优化的,例如:hadoop archive、sequence file、combinefileinportformate。
作者回复: 多谢补充
2019-09-0532 - Geek_88604f非结构化和结构化数据的键值存储,实现机制上往往有极大的差异。主要体现在哪些方面,许老师?
作者回复: 主要还是因为值大小差异非常大,导致两者优化目标不同。对象存储的第一优化目标是低成本,结构化键值存储的优化目标是高iops,方向完全不同。
2019-09-0312 - Han老师,mysql等关系数据库的索引都是基于文件,那这种数据库底层实现都是基于操作系统的文件系统吗?
作者回复: 是基于文件系统,而且很多时候都是基于file mapping技术(其实就是虚拟内存管理那一套)。
2020-06-069 - 安排对象存储底层实现时还会经过操作系统自带的文件系统吗?还是说对象存储操作的直接是裸盘?相当于自己重新实现了文件系统功能?
作者回复: 对象存储有一些是基于裸盘,有一些基于文件系统。推荐是前者。
2019-09-066 - EidLeung“第一,HDFS 的 block 大小为 64M,如果文件不足 64M 也会占用 64M。”这句话有问题吧,HDFS的问题是文件的元数据存储在内存中,因此不适合小文件。不足64M(现在好像是128M了吧)的小文件在HDFS中存储只是在磁盘多了一些元数据信息而已,文件大小还是原来的大小啊。
作者回复: 多谢补充,对hdfs的近况了解的确不多
2019-09-034 - yga假设集群总的容量规模不变,但我们不是增加单台机器的磁盘数量,而是增加磁盘的密度。比如,我们把单盘容量增加一倍,那么我们集群的磁盘数也减少一半。这样我们的修复时长 T0 会变成 4T0(修复时间和要修复的数据量成正比,和集群可用的磁盘数成反比)—— T0怎么变成4T0?修复时间和数据量成正比,和集群可用磁盘数成反比。为什么呢,希望老师能解答
作者回复: 因为磁盘容量变大一倍,要修复的数据量变大一倍,而系统的总磁盘数减半,所以最终修复时间需要4倍。
2019-09-063 - zhuyc对象存储消除了结构化的关系和影响,那么对象间的关系,例如 原图与缩略图 的关系,是维护在另一个系统中吗?
作者回复: 通过命名对应,或者在另外的关系型存储中记录
2019-09-132 - 安排结构化数据和非结构化数据啥区别啊?表结构就是结构化数据吗?
作者回复: 主要是数据类型不一样。非结构化数据主要是图片、视频、应用日志等。表结构是结构化的。
2019-09-062 - 有铭老师,你提到七牛云的对象存储是没有目录这个概念的;我记得阿里的oss是有的,也就是说,两者的实现原理并不一样?
作者回复: 阿里也没有,目录是模拟出来的,这一点所有对象存储都一样。在七牛之间中也可以模拟出目录概念,但是它和真实的目录差别非常大。
2019-09-0332 - coyang在分布式系统中维护文件系统的目录树结构,会遭遇诸多难题。所以 HDFS 想把 Master 扩展为分布式的元数据集群并不容易。->GlusterFS就是分布式的元数据集群,没有master,active/standby的概念。实现也很复杂。许老师能不能说一下未来分布式存储的趋势?个人感觉分布式文件系统还会长期保留来适应老的application迁移到分布式系统不用做任何改变。
作者回复: 是的,老 application 不消亡,文件系统在服务端就会一直存在。
2019-09-041