交换存储

今日, NVIDIA宣布要收购对象存储SwiftStack。

人工智能和对象存储,能擦出什么样的火花?

来源:极客网 作者:服务器托管 浏览量:157 更新:2020-04-23

背景:今日, NVIDIA宣布要收购对象存储SwiftStack。

正文:

每当看到人工智能(也即AI),我们通常会想到机器人、自动化、图像语音或视频识别、算法等高大上的黑科技。而对象存储则给人一种低调、海量的感觉。是什么原因,让这两者相遇,并擦出了火花?

什么是对象存储

对象存储是自包含、自愈合的智能存储设备,具有容量大、速度快、扩展灵活的特点。每一个对象除了存放数据本身之外,还存放了唯一标识符和数据的元信息,例如创建的日期和时间,属主,大小,索引,保留周期,QoS等。对象本身使得数据的组织得到了简化,避免了传统存储文件目录树形结构的复杂。对象的存放是扁平化地方式保存在bucket(桶)中的,变得更简单。而且对象的元信息,也方便了检索。

拿生活中常见的例子来比喻,当图书馆购进新的纸质书籍需要存放时,需要按照图书分类法(按照图书的内容、形式、体裁和读者用途等进行分类),清楚地知道大类、子类和更详细的分类,才能找到合适的位置上架。文件存储的数据存放就类似图书分门别类地存放,如下图。

类比:文件存储的数据存放方式就像图书分类

当我们逛超市需要存包的时候,尽管有那么多储物柜,但是大家都觉得存取包很简单。存的时候,按一下存包按键,啪的一声,一个柜子打开,同时你会得到包含二维码的纸条,你把包放到柜子里,但是不用记住柜子的位置和编号,潇洒的离开。当你取包的时候,你刷一下二维码,也是啪的一声,放包的柜子自动打开,所存物品唾手可得。对象存储的数据存放方式就和超市存取包很类似,存储对象的唯一标识符就相当于那个二维码。

类比:对象存储的数据存放方式就像超市存包

下图是对象存储的一些特点。

对象存储特点

不过,我们需要注意的是,文件存储和对象存储有着各自适用的场景。下图列出了分布式文件存储和分布式对象存储的区别:

分布式文件存储与分布式对象存储的区别

当文件数量级过亿的时候,文件目录树形结构会对数据的读写造成巨大的挑战,例如在linux中如果用ls查看文件,可能都要等待几十分钟以上。但是,量级没有如此之大时,因为过去的使用习惯,以及相对成熟的生态,使用文件存储还是不错的选择。

如何避免错误理解对象存储

当我们谈对象存储时,需要注意讨论的是存储接口,还是内部数据组织形式。

1)实际上,directadmin汉化,讨论对象存储大多数是指存储接口,是否支持RestFul或S3,也即对象接口的形式来访问存储空间。

2)少数情况下,对象存储指存储设备的内部数据组织形式。在数据猛增的背景下,越来越多的存储设备内部采用对象存储的这种内部数据组织形式。例如VMware vSAN,其实是是一种基于服务器端存储的共享分布式对象存储系统,只不过存储接口主要采用的是SCSI方式;或者具备高可靠、高性能、高安全和易管理的浪潮AS13000,如下图。

浪潮AS13000G5的对象存储功能

AI与对象存储

在许多人的印象中,AI需要大量的算力,是计算密集型的典型应用。而对象存储大多时候用于海量非结构化数据的存放,备份归档,云存储、企业云盘、文档影像或视频的存储等。从存储特征来看,对象存储的延迟可能较难满足AI的性能需求;从使用习惯来看,大多数AI用户都是采用文件接口。

实际上,有计算,就会有存储,只是或多或少,或快或慢,或过渡或长期保存的区别。

在微信公众号浪潮存储《2020:下一个十年,存储发展的趋势是什么》上篇也即鉴往事篇 一文中,曾提到:

AI所需存储,可以分为准备、训练、推理和归档等阶段,每个阶段的IO特征不一样,对于存储的要求也不一样。例如,在推理阶段,IO的特征是读写混合,并且要求存储的延时低,能快速响应。

下图列出了AI各个阶段的IO特征,及其对存储的要求。

AI各个阶段的IO特征及存储需求

部分文章来源与网络,若有侵权请联系站长删除!