首先NAS存储和对象存储最大的区别在于底层数据存放方式,NAS一定是有文件系统在底层支撑,对象会扁平化一些;那么NAS存储支持对象S3协议,在某些场景下兼容性会有优势,比如HDFS原生的支持,此时整个数据对于NAS协议、HDFS协议和S3协议之间的互通就会是一个非常方便的使用场景了,在这个场景下,一个NAS存储一套数据可以将收集、分析、处理、结果和归档各个阶段的使用需求完整支持;相比NAS支持S3协议这种偏标准化的使用方式,对象存储本身更注重于应用的强结合,目前对象存储也都能支持不同的NAS协议,只是更多使用语意转换的方式来实现,所以在某些时候兼容性略有差异,对象存储除了架构上的优势,另一个层面就是api丰富和开放性好,比如可以附加处理非结构化数据的标签、解压缩、OCR等等功能,在内部的数据流动分层上相比NAS会更多样和灵活些。
收起“对象”和“文件”一样,都包含数据,但是对象之下不会再有层级,一个对象不可能属于另一个对象。在对象存储服务里,每一个对象被分配到一个唯一的标识,我们通过这个唯一标识去访问对象。
“对象存储”比“文件存储”的内涵更加丰富,除了文件,程序运行中的所有非结构化数据都可以扁平化的存储在对象存储服务中,我们不需要像文件系统中那样记住每个文件所在的文件夹,物理地址等信息,只要通过被分配的唯一标识访问即可。
"对象存储"以扁平化的方式构建对象,这种特性在海量数据存储时就比较有优势,它不存在文件系统中的目录深度问题,所以访问不管多久以前的数据,都能达到一个比较好的效率。
收起