人工智能和对象存储,能擦出什么样的火花
每当看到人工智能(也即AI),我们通常会想到机器人、自动化、图像语音或视频识别、算法等高大上的黑科技。而对象存储则给人一种低调、海量的感觉。是什么原因,让这两者相遇,并擦出了火花?
什么是对象存储?
对象存储是自包含、自愈合的智能存储设备,具有容量大、速度快、扩展灵活的特点。每一个对象除了存放数据本身之外,还存放了唯一标识符和数据的元信息,例如创建的日期和时间,属主,大小,索引,保留周期,QoS等。对象本身使得数据的组织得到了简化,避免了传统存储文件目录树形结构的复杂。对象的存放是扁平化地方式保存在bucket(桶)中的,变得更简单。而且对象的元信息,也方便了检索。
拿生活中常见的例子来比喻,当图书馆购进新的纸质书籍需要存放时,需要按照图书分类法(按照图书的内容、形式、体裁和读者用途等进行分类),清楚地知道大类、子类和更详细的分类,才能找到合适的位置上架。文件存储的数据存放就类似图书分门别类地存放,如下图。
当我们逛超市需要存包的时候,尽管有那么多储物柜,但是大家都觉得存取包很简单。存的时候,按一下存包按键,啪的一声,一个柜子打开,同时你会得到包含二维码的纸条,你把包放到柜子里,但是不用记住柜子的位置和编号,潇洒的离开。当你取包的时候,你刷一下二维码,也是啪的一声,放包的柜子自动打开,所存物品唾手可得。对象存储的数据存放方式就和超市存取包很类似,存储对象的唯一标识符就相当于那个二维码。
类比:对象存储的数据存放方式就像超市存包
对象存储特点
不过,我们需要注意的是,文件存储和对象存储有着各自适用的场景。下图列出了分布式文件存储和分布式对象存储的区别:
分布式文件存储与分布式对象存储的区别
当文件数量级过亿的时候,文件目录树形结构会对数据的读写造成巨大的挑战,例如在linux中如果用ls查看文件,可能都要等待几十分钟以上。但是,量级没有如此之大时,因为过去的使用习惯,以及相对成熟的生态,使用文件存储还是不错的选择。
如何避免错误理解对象存储
当我们谈对象存储时,需要注意讨论的是存储接口,还是内部数据组织形式。
1)实际上,讨论对象存储大多数是指存储接口,是否支持RestFul或S3,也即对象接口的形式来访问存储空间。
2)少数情况下,对象存储指存储设备的内部数据组织形式。在数据猛增的背景下,越来越多的存储设备内部采用对象存储的这种内部数据组织形式。例如VMware vSAN,其实是是一种基于服务器端存储的共享分布式对象存储系统,只不过存储接口主要采用的是SCSI方式;或者具备高可靠、高性能、高安全和易管理的浪潮AS13000,如下图。
AI与对象存储
在许多人的印象中,AI需要大量的算力,是计算密集型的典型应用。而对象存储大多时候用于海量非结构化数据的存放,备份归档,云存储、企业云盘、文档影像或视频的存储等。从存储特征来看,对象存储的延迟可能较难满足AI的性能需求;从使用习惯来看,大多数AI用户都是采用文件接口。
实际上,有计算,就会有存储,只是或多或少,或快或慢,或过渡或长期保存的区别。
我们相信,作为新基建的一部分,包含AI和存储在内的信息基础设施将迎来更好更快的发展。