(文章来源:DOIT)
纵观存储技术的发展,从1957年开始发明硬盘,1970年代发明 SAN(Storage Area Network),1980年代发明 NAS(Network Attached Storage),再到2006年发明 Object Storage。从中可以看出,存储技术是不断向上和应用结合的过程,但是这些技术并不是代次的替换,而是场景的扩展,因此即使到现在硬盘、SAN、NAS 技术依然广泛部署在对应场景中。技术发展的过程中,关注技术出现的时间线,可以发现,大约每隔10年就会有新技术的出现。现在是2019年,距离对象存储技术产生已经13年过去了,下一个在存储发展趋势的技术会是什么呢?这也是本次交流想和大家一起探讨的关键点。
第一,存储的部署和服务场景不同。SAN(块存储) 和 NAS(文件存储)都是面向数据中心内访问的设备,而对象存储产生的目的根本就不是在数据中心内使用,而是面向互联网、移动互联网(3G、4G、5G)而产生的,为大量使用的网页、视频、图片、音频、文档访问而设计。但在它产生后,为做前向兼容,特别是公共云上被同 Region 内的 ECS(ElasTIc Compute Service) 访问的场景,也提供了内网 VPC(Virtual Private Cloud) 访问能力。
-第二,存储的使用者不同。块存储的使用者是机器,它映射 LUN(Logical Unit Number) 给机器,被机器识别为盘,然后创建文件系统、数据库。NAS 的使用者是办公账号,如 AD(AcTIve Directory) 和 LDAP(Lightweight Directory Access Protocol) 账号,该账号登陆 NAS 设备的 IP(Internet Protocol) 地址就可以访问共享文件夹,用于办公场景;同时,为了兼容机器的访问,也可以让 AD 中的机器访问 NAS。对象存储的使用者是云账号或者社交账号,通过该账号成功登陆云服务后就可以存储数据了,为了兼容历史应用,对象存储也兼容 AD 账号接入,以及支持 ECS 关联 RAM(Resource Access Management) 角色的机器访问。
第三,访问协议不同。SAN(块存储) 和 NAS(文件存储) 是基于数据中心内的协议,如 FC、iSCSI、NFS、CIFS、SMB 协议。而对象存储是基互联网访问协议,如基于 HTTP/HTTPS 的 S3(Simple Stoage Service)/OSS(Object Storage Service) 访问接口。
总结下各存储的特点,关键在交互模式上的差别。SAN 是典型的机机交互模式,NAS 是人机交互模式,对象存储是移动互联网交互模式。SAN 的机机交互最简单,就是要求盘时延低、带宽大;NAS 的人机交互需求多,就像人管理图书那样会分门别类(目录)和书名(文件名)、重命名、移动,还有复杂的权限、配额管理等;对象存储的移动互联网交互模式,上面会通过互联网应用对外服务,可以做的比人机交互更简单,因此可采用平坦的名字空间来管理对象,从而没有 NAS 场景下大目录、海量小文件的管理难题。不同的交互模式,大大影响了存储背后的设计哲学,它也是系统设计的源头和根本。
SAN 存储,本质是一块盘。机器使用快存储,就是一个盘、线性地址空间,在它之上装文件系统、数据库、虚拟机等后,才能让应用更好的使用。它的基础功能特点,就是基本读写访问的稳定性,然后是数据保护的高级特性,之上就是性价比设计。在未来发展趋势上,全闪存化是稳定、低时延的明显公共需求,而专有云会因性价比需求特别关注重删、压缩技术,公共云则因d性伸缩的特质会更关注按需获取、可承诺的SLA能力。
NAS 存储,本质是 企业员工+IP地址+共享文件夹。其典型场景就是企业办公、媒体编辑、高性能计算等,在AI训练中也广泛使用 NAS。它的功能特点主要是围绕目录、文件等基础特性设计,然后是数据保护的高级特性,以及性价比设计。这和 SAN 存储很相像,所以在企业存储领域会把 SAN 和 NAS 融合设计,叫做统一存储。未来,专有云会基于性价比考虑,把硬盘和 Flash 做混合介质设计,支持压缩,支持更高的带宽能力;而公共云上,稳定、低时延的SLA,d性、伸缩始终是关键趋势。
对象存储,本质是 云账号通过互联网(或移动互联网)访问网络内容。目前,广泛使用的短视频、图片、音乐等,后面支撑的就是对象存储技术,它为应用提供了全局、全网共享的数据大池子,非常适合做为互联网内容的底层平台。它的功能特点和 SAN/NAS 不同,强调底层 HTTP 稳定性,以及数据的持久度、高可用性,之上更关注数据生命周期管理,因为对象存储会保存10年甚至更多的历史数据,如何用**生命周期**策略来管理众多历史数据是关键。
基于存储技术和趋势的分析,阿里云存储采用了融合架构实现,也是 SDS(Software Define Storage软件定义存储) 架构实现。最底层是基础设施团队提供的通用服务器、网络构建的高性能集群。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)