精华内容
下载资源
问答
  • 对象存储(云存储)概述

    万次阅读 多人点赞 2019-03-08 17:54:09
    NAS与SAN概述1、NAS(Network Attached Storage)优点局限2、SAN(Storage Area Network and SAN Protocols)优点局限对象存储的特性1、优秀的扩展性2、基于策略的自动化管理3、多租户技术扩展知识:多租户技术介...

    三种存储形态

    在这里插入图片描述

    三种存储形态和存储架构示意图

    1、块存储

      块存储我们简单的理解就是一块一块的硬盘,直接挂载在主机上,在主机上我们能够看到的就是一块块的硬盘以及硬盘分区。从存储架构的角度而言,块存储又分为DAS存储(Direct-Attached Storage,直连式存储)和SAN存储(Storage Area Network,存储区域网络)。

    2、文件存储

      文件存储,我们指的是在文件系统上的存储,也就是主机操作系统中的文件系统。我们知道,文件系统中有分区,有文件夹,子文件夹,形成一个自上而下的文件结构;文件系统下的文件,用户可以通过操作系统中的应用程序进行打开、修改等操作,如打开word、编辑word。从架构上来说,文件存储提供一种NAS(Network Attached Storage,网络附属存储)架构,使得主机的文件系统不仅限于本地的文件系统,还可以连接基于局域网的共享文件系统。

    3、对象存储

      对象存储是面向对象/文件的、海量的互联网存储,它也可以直接被称为“云存储”。对象尽管是文件,它是已被封装的文件(编程中的对象就有封装性的特点),也就是说,在对象存储系统里,你不能直接打开/修改文件,但可以像ftp一样上传文件,下载文件等。另外对象存储没有像文件系统那样有一个很多层级的文件结构,而是只有一个“桶”(bucket)的概念(也就是存储空间),“桶”里面全部都是对象,是一种非常扁平化的存储方式。其最大的特点就是它的对象名称就是一个域名地址,一旦对象被设置为“公开”,所有网民都可以访问到它;它的拥有者还可以通过REST API的方式访问其中的对象。因此,对象存储最主流的使用场景,就是存储网站、移动app等互联网/移动互联网应用的静态内容(视频、图片、文件、软件安装包等等)。

    对象存储

    对象存储需求

      随着互联网,Web应用创建出数百亿的小文件;人们上传海量的照片、视频、音乐,Facebook每天都新增数十亿条内容,人们每天发送数千亿封电子邮件。据IDC统计未来在10年间数据将增长44倍,到2020年全球数据将增加到35ZB,其中80%是非结构化数据,且大部分是非活跃数据。

      面对如此庞大的数据量,仅具备PB级扩展能力的块存储(SAN)和文件存储(NAS)显得有些无能为力:通常块存储(SAN)的一个LUN容量仅数TB。单个文件系统最优性能情况下支持的文件数量通常只在百万级别。人们需要一种全新的架构的存储系统,这种存储系统需要具备极高的可扩展性,能够满足人们对存储容量TB到EB规模的扩展的需求。

      2006年Amazon发布AWS, S3 服务及其使用的REST、SOAP访问接口成为对象存储的事实标准。Amazon S3成功为对象存储注入云服务基因。

    对象存储含义

      存储局域网(SAN)和网络附加存储(NAS)是目前两种主流网络存储架构,而对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备(Object-based Storage Device)简称OSD。总体上来讲,对象存储(Object-Based Storage, OBS)综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的分布式数据共享等优势,提供了具有高性能、高可靠性、跨平台以及安全的数据共享的存储体系结构。
      对象存储核心是将数据通路(数据读或写)和控制通路(元数据)分离,并且基于对象存储设备(OSD)构建存储系统,每个对象存储设备具有一定的智能,能够自动管理其上的数据分布。

      对象存储是一种基于对象的存储设备,具备智能、自我管理能力,通过web服务协议(如:REST、SOAP)实现对象的读写和存储资源的访问。

      对象存储系统包含两种数据描述:容器(Bucket)、对象(Object)。容器和对象都有一个全局唯一的ID。对象存储采用扁平化结构管理所有数据,用户/应用通过接入码(AccessKey)认证后,只需要根据ID就可以访问容器/对象及相关的数据(Data)、元数据(metadata)和对象属性(Attribute)。

    对象存储与传统网络存储的区别

      对象存储在很多重要方面与SAN和NAS迥然不同,对存储管理员而言最显著的区别在于对象存储没有LUNs,卷以及RAID等要素。对象数据不是存储在固定的块,而是在大小可变的“容器”里。鉴于元数据(metadata)和数据本身可通过传统数据访问方法进行访问,对象存储允许数据被直接访问。此外,支持对象级和命令级的安全策略设置。


    扩展知识:NAS与SAN概述

    1、NAS(Network Attached Storage)

      NAS(Network Attached Storage:网络附属存储)按字面简单说就是连接在网络上,具备资料存储功能的装置,因此也称为“网络存储器”。它是一种专用数据存储服务器。它以数据为中心,将存储设备与服务器彻底分离,集中管理数据,从而释放带宽、提高性能、降低总拥有成本、保护投资。其成本远远低于使用服务器存储,而效率却远远高于后者。
      它采用NFS或CIFS命令集访问数据,以文件为传输协议,通过TCP/IP实现网络化存储,可扩展性好、价格便宜、用户易管理,如目前在集群计算中应用较多的NFS文件系统,但由于NAS的协议开销高、带宽低、延迟大,不利于在高性能集群中应用。

    优点

      NAS产品是真正即插即用的产品。NAS设备一般支持多计算机平台,用户通过网络支持协议可进入相同的文档,因而NAS设备无需改造即可用于混合Unix/Windows NT局域网内。   
      NAS设备的物理位置同样是灵活的。它们可放置在工作组内,靠近数据中心的应用服务器,或者也可放在其他地点,通过物理链路与网络连接起来。无需应用服务器的干预,NAS设备允许用户在网络上存取数据,这样既可减小CPU的开销,也能显著改善网络的性能。

    局限

      NAS没有解决与文件服务器相关的一个关键性问题,即备份过程中的带宽消耗。与将备份数据流从LAN中转移出去的存储区域网(SAN)不同,NAS仍使用网络进行备份和恢复。NAS 的一个缺点是它将存储事务由并行SCSI连接转移到了网络上。这就是说LAN除了必须处理正常的最终用户传输流外,还必须处理包括备份操作的存储磁盘请求。
      由于存储数据通过普通数据网络传输,因此易受网络上其它流量的影响。当网络上有其它大数据流量时会严重影响系统性能;由于存储数据通过普通数据网络传输,因此容易产生数据泄漏等安全问题;
      存储只能以文件方式访问,而不能像普通文件系统一样直接访问物理数据块,因此会在某些情况下严重影响系统效率,比如大型数据库就不能使用NAS。

    2、SAN(Storage Area Network and SAN Protocols)

      存储区域网络(Storage Area Network and SAN Protocols,简写SAN,即存储区域网络及其协议)是一种高速网络或子网络,提供在计算机与存储系统之间的数据传输。存储设备是指一台或多台用以存储计算机数据的磁盘设备,通常指磁盘阵列。存储区域网络能够使用多种技术,这就使得系统间的数据备份、操作、文件转移和数据复制很容易实现重定向。

    优点

      SAN提供了一种与现有LAN连接的简易方法,并且通过同一物理通道支持广泛使用的SCSI和IP协议。SAN不受现今主流的、基于SCSI存储结构的布局限制。特别重要的是,随着存储容量的爆炸性增长,SAN允许企业独立地增加它们的存储容量。 SAN的结构允许任何服务器连接到任何存储阵列,这样不管数据置放在那里,服务器都可直接存取所需的数据。因为采用了光纤接口,SAN还具有更高的带宽。 因为SAN解决方案是从基本功能剥离出存储功能,所以运行备份操作就无需考虑它们对网络总体性能的影响。SAN方案也使得管理及集中控制实现简化,特别是对于全部存储设备都集群在一起的时候。最后一点,光纤接口提供了10公里的连接长度,这使得实现物理上分离的、不在机房的存储变得非常容易。

    局限

      成本和复杂性,特别是在光纤信道中这些缺陷尤其明显。使用光纤信道的情况下,合理的成本大约是1千兆或者两千兆大概需要五万到六万美金。从另一个角度来看,虽然新推出的基于iSCSI的SAN解决方案大约只需要两万到三万美金,但是其性能却无法和光纤信道相比较。在价格上的差别主要是由于iSCSI技术使用的是现在已经大量生产的吉比特以太网硬件,而光纤通道技术要求特定的价格昂贵的设备。

    对象存储的特性

      对象存储是一种基于对象的存储设备,具备智能、自我管理能力,通过web服务协议(如:REST、SOAP)实现对象的读写和存储资源的访问。

      对象存储系统包含两种数据描述:容器(Bucket)、对象(Object)。容器和对象都有一个全局唯一的ID。对象存储采用扁平化结构管理所有数据,用户/应用通过接入码(AccessKey)认证后,只需要根据ID就可以访问容器/对象及相关的数据(Data)、元数据(metadata)和对象属性(Attribute)。

    在这里插入图片描述

    对象存储数据组织示意图

      对象存储对外提供更抽象的对象接口,而不是SCSI或文件接口。与SAN存储以逻辑扇区为单位的较细粒度的固定IO(512B~4KB)不同,对象存储IO粒度更有弹性,支持几个字节(B)到数万亿字节(TB)范围内的任意对象大小,使得业务可根据需要灵活的分割数据。

      对象存储以对象ID为基础,扁平化的管理所有对象和桶,根据对象ID便可直接访问数据,解决了NAS复杂的目录树结构在海量数据情况下的数据查找耗时长的问题,这使得对象存储具备极强的扩展性,能够轻松实现单一名字空间内支持百亿级文件的存储。

      在重复数据删除,绿色节能等特性基础上,为了更好的满足海量数据存储和公众云服务需求,对象存储系统还包括如下一些关键特性:

    1、优秀的扩展性

      扁平化的数据结构允许对象存储容量从TB级扩展到EB级,管理数十个到百亿个存储对象,支持从数字节(Byte)到数万亿字节(TB)范围内的任意大小对象,解决了文件系统复杂的iNode的机制带来的扩展性瓶颈,并使得对象存储无需像SAN存储那样管理数量庞大的逻辑单元号(LUN)。对象存储系统通常在一个横向扩展(或网格硬件)架构上构建一个全局的命名空间,这使得对象存储非常适用在云计算环境中使用。某些对象存储系统还可支持升级、扩容过程中业务零中断。

    2、基于策略的自动化管理

      由于云环境中的数据往往是动态、快速增长的,所以基于策略的自动化将变得非常重要。对象存储支持从应用角度基于业务需求设置对象/容器的属性(元数据)策略,如数据保护级别,保留期限,合规状况,远程复制的份数等。这使得对象存储具备云的自服务特征同时,有效的降低运维管理的成本,使得客户在存储容量从TB增长到ZB时,运维管理成本不会随之飙升。

    3、多租户技术

      多租户特性可以使用同一种架构,同一套系统为不同用户和应用提供存储服务,并分别为这些用户和应用设置数据保护、数据存储策略,并确保这些数据之间相互隔离。

    扩展知识:多租户技术介绍

    多租户架构浅析

      多租户技术(英语:multi-tenancy technology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。

      云计算可以划分为以下几个层次的服务——IaaS、PaaS和SaaS,而今天我们今天讲的多租户架构就是一种常见的 SaaS 软件架构模式。多租户技术是实现如何在多用户环境下(此处的多用户一般是面向企业用户)共用相同的系统或程序组件,并且可确保各用户间数据的隔离性。 简单讲:在一台服务器上运行单个应用实例,它为多个租户(客户)提供服务。从定义中我们可以理解:多租户是一种架构,目的是为了让多用户环境下使用同一套程序,且保证用户间数据隔离。那么重点就很浅显易懂了,多租户的重点就是同一套程序下实现多用户数据的隔离。

    对象存储结构

    Alt

    对象存储结构

      对象存储结构由 对象、对象存储设备、元数据服务器、对象存储系统的客户端 四部分组成。

    1、对象(Object)

      对象(Object)是系统中数据存储的基本单位,一个对象实际上就是文件的数据和一组属性信息(Meta Data)的组合,每个对象是数据和数据属性集的综合体,数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。在传统的存储系统中用文件或块作为基本的存储单位,块设备要记录每个存储数据块在设备上的位置。对象维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。对象的大小可以不同,可以包含整个数据结构,如文件、数据库表项等。在存储设备中,所有对象都有一个对象标识,通过对象标识OSD命令访问该对象。通常有多种类型的对象,存储设备上的根对象标识存储设备和该设备的各种属性,组对象是存储设备上共享资源管理策略的对象集合等。

    在这里插入图片描述

    传统块存储和对象存储示意图

    在这里插入图片描述

    对象存储中对象(Object)的组成

    2、对象存储设备

      每个OSD都是一个智能设备,具有自己的存储介质、处理器、内存以及网络系统等,负责管理本地的Object,是对象存储系统的核心。OSD同块设备的不同不在于存储介质,而在于两者提供的访问接口。OSD的主要功能包括数据存储和安全访问。目前国际上通常采用刀片式结构实现对象存储设备。OSD提供三个主要功能:

    1. 数据存储。OSD管理对象数据,并将它们放置在标准的磁盘系统上,OSD不提供块接口访问方式,Client请求数据时用对象ID、偏移进行数据读写。
    2. 智能分布。OSD用其自身的CPU和内存优化数据分布,并支持数据的预取。由于OSD可以智能地支持对象的预取,从而可以优化磁盘的性能。
    3. 每个对象元数据的管理。OSD管理存储在其上对象的元数据,该元数据与传统的inode元数据相似,通常包括对象的数据块和对象的长度。而在传统的NAS系统中,这些元数据是由文件服务器维护的,对象存储架构将系统中主要的元数据管理工作由OSD来完成,降低了Client的开销。

    在这里插入图片描述

    传统模型与OSD模型示意

    3、元数据服务器(Metadata Server,MDS)

      MDS控制Client与OSD对象的交互,为客户端提供元数据,主要是文件的逻辑视图,包括文件与目录的组织关系、每个文件所对应的OSD等。主要提供以下几个功能:

    1. 对象存储访问。MDS构造、管理描述每个文件分布的视图,允许Client直接访问对象。MDS为Client提供访问该文件所含对象的能力,OSD在接收到每个请求时将先验证该能力,然后才可以访问。
    2. 文件和目录访问管理。MDS在存储系统上构建一个文件结构,包括限额控制、目录和文件的创建和删除、访问控制等。
    3. Client Cache一致性。为了提高Client性能,在对象存储系统设计时通常支持Client方的Cache。由于引入Client方的Cache,带来了Cache一致性问题,MDS支持基于Client的文件Cache,当Cache的文件发生改变时,将通知Client刷新Cache,从而防止Cache不一致引发的问题。

    4、对象存储系统的客户端(Client)

      为了有效支持Client支持访问OSD上的对象,需要在计算节点实现对象存储系统的Client。现有的应用对数据的访问大部分都是通过POSIX文件方式进行的,对象存储系统提供给用户的也是标准的POSIX文件访问接口。接口具有和通用文件系统相同的访问方式,同时为了提高性能,也具有对数据的Cache功能和文件的条带功能。同时,文件系统必须维护不同客户端上Cache的一致性,保证文件系统的数据一致。文件系统读访问流程:

    • 1)客户端应用发出读请求;
    • 2)文件系统向元数据服务器发送请求,获取要读取的数据所在的OSD;
    • 3)然后直接向每个OSD发送数据读取请求;
    • 4)OSD得到请求以后,判断要读取的Object,并根据此Object要求的认证方式,对客户端进行认证,如果此客户端得到授权,则将Object的数据返回给客户端;
    • 5)文件系统收到OSD返回的数据以后,读操作完成。

    对象存储应用场景

      通常,无论是虚拟主机还是独立云主机,作为个人网站都会把所有的图片都存储在空间里,这样有一下几个问题:

    1. 随着网站的运行,图片越来越多,会导致主机的空间使用越来越多;
    2. 图片的增多会导致网站页面打开速度越来越慢,因为越来越多的图片需要从服务器上下载到本地浏览器的缓存目录,这样需要越来越多的宽带,而虚拟主机或云主机通常的宽带都是限定的;
    3. 网站迁移的成本越来越大。

      如果使用了云存储,这样可以把图片存储在第三方,所有的图片都不会再消耗虚拟主机的宽带资源和磁盘资源,保证网站访问速度不受影响,迁移网站只需要迁移数据库和基本程序文件即可,基本上几十M就可以打包所有的文件,所以云存储的好处显而易见。

    • 应用场景一:

      如果您的网站有大量的图片,如果都存储在本地,需要大量的磁盘空间,虽然现在磁盘空间的价格已经很低,但是用户访问却需要大量的宽带,超过10G的图片,主机宽带10M是不够的,而10M的云主机每年的价格8000左右,随着年限的增长,云主机需要的硬件和宽带需求会越来越多,那么网站基本成本支出也会越来越搞,如果把所有的图片都存储在云存储里,每年主机成本可以降低2/3,甚至更多。

    • 应用场景二:

      视频存储的问题,可以选择把视频存储在专门的视频网站,比如优酷,腾讯视频,爱奇艺等,但是这样的问题是,所有的视频都会被视频网站加上播放前的贴片广告,这样其实非常不友好,给客户看的视频,还要先看几十秒甚至2分钟广告,这有点尴尬了,但是如果放网站上,会出现磁盘和宽带不足的情况,如果上传到云存储上,设置好伪静态和防止BT软件下载,这样就非常好了。

    • 应用场景三:
        电商、互联网金融、在线教育等行业的Web和移动应用,架构里有数据库、应用服务器、负载均衡的应用,另外还需要存储比如商品图片,互联网金融行业的用户证件照,在线交易视频等文件等,需要存储,此前的做法是搭建文件服务器,文件服务器的扩展性、并发性都有问题,这时候就需要用到对象存储。

    • 应用场景四:
        企业网盘,其后端就是对象存储。企业遍布各地的各个部门文档都在用企业网盘,分享和管理文件,企业网盘可以非常容易地分享给特定的个人,群组或部门。企业网盘是单独的市场,与个人网盘有很大区别,企业对访问权限认证的管理更细致,数据管理要求更高。

    还有很多的应用场景,此处不一一列举。

    划重点(∩_∩)



    本人程序媛一枚,因为离港澳较近,周末兼职港澳人肉代购。

    欢迎各位大佬添加本人微信,还会经常有点赞活动送价值不菲的小礼品哦。

    即使现在不需要代购,等以后有了女(男)朋友、有了宝宝就肯定会需要的喽。

    动动手指头,扫码一下,就当是对本博文的支持嘛,也是对一个平凡、勤劳、勇敢、秀外慧中等等优点的程序媛莫大的支持哈。

    在这里插入图片描述

    http://www.chinastor.com/a/jishu/OSD.html
    https://blog.csdn.net/liuaigui/article/details/17973039
    https://www.wopus.org/tools/4868.html
    http://storage.chinabyte.com/145/12496645.shtml

    展开全文
  • 对象存储

    2014-10-14 14:29:00
    对象存储系统(Object-Based Storage System)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。 传统块存储与对象存储...

    这里又单独说一下对象存储,主要借鉴百度百科,对对象存储有了一点认识

    首先,

    对象存储系统(Object-Based Storage System)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。

    传统块存储与对象存储结构对比示意图:

    对象存储主要由对象(object),对象设,备(Object-based Storage Device),文件系统组成。

    (1)对象:包含了文件数据以及相关的属性信息,可以进行自我管理

    对象存储的基本单元。每个Object是数据和数据属性集的综合体。数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。在传统的存储中,块设备要记录每个存储数据块在设备上的位置。Object维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。Object的大小可以不同,可以包含整个数据结构,如文件、数据库表项等。

    (2)对象设备:一个智能设备,是Object的集合

    每个OSD都是一个智能设备,具有自己的存储介质、处理器、内存以及网络系统等,负责管理本地的Object,是对象存储系统的核心。OSD同块设备的不同不在于存储介质,而在于两者提供的访问接口。主要提供数据存储和安全访问。OSD使用Object对所保存的数据进行管理。它将数据存放到磁盘的磁道和扇区, 将若干磁道和扇区组合起来构成Object,并且通过此Object向外界提供对数据的访问。每Object同传统的文件相似,使用同文件类似的访问接 口,包括Open、Read、Write等。但是两者并不相同,每个Object可能包括若干个文件,也可能是某个文件的一部分,且是独立于操作系统的。 除了具体的用户数据外,OSD还记录了每个Object的属性信息,主要是物理视图信息。将这些信息放到OSD上大大减轻了元数据服务器的负担,增强了 整个存储系统的并行访问性能和可扩展性。(因为可以直接和客户端进行数据传输了。)

    (3)文件系统:文件系统运行在客户端上,将应用程序的文件系统请求传输到MDS和OSD上,元数据服务器(Metadata Server,MDS)。系统提供元数据、Cache一致性等服务文件系统对用户的文件操作进行解释,并在元数据服务器和OSD间通信完成所请求的操作。现有的应用对数据的访问大部分都是通过POSIX文件方式进行的,对象存储系统提供给用户的也是标准的POSIX文件访问接口。同时,文件系统必须维护不同客户端上Cache的一致性,保证文件系统的数据一致。

    文件系统访问过程:

                  (1)客户端应用发出读请求;
                  (2)文件系统向元数据服务器发送请求,获取要读取的数据所在的OSD;
                  (3)然后直接向每个OSD发送数据读取请求;
                  (4)OSD得到请求以后,判断要读取的Object,并根据此Object要求的认证方式,对客户端进行认证,如果此客户端得到授权,则将Object的数据返回给客户端;
                  (5)文件系统收到OSD返回的数据以后,读操作完成。
     

    (4)元数据服务器 (Metadata Server)

    为客户端提供元数据,主要是文件的逻辑视图,包括文件与目录的组织关系、每个文件所对应的OSD等。在传统的文件系统中,元数据由本机或者文件服务器负责维护,每次对数据块的操作都要获取元数据。在对象存储系统中,由于每次操作只有一次对元数据的访问,具体的数据传输都由OSD和客户端通过直接连接进行,大大减少了元数据的操作,降低了元数据服务器的负担,从而为系统的扩展提供了可能性。
    特点:
           (1)客户端采用Cache来缓存数据
           (2)当多个客户端同时访问某些数据时,MDS提供分布的锁机制来确保Cache的一致性。
           (3)为客户端提供认证
           (4)为了增强系统的安全性,MDS为客户端提供认证方式。OSD将依据MDS的认证来决定是否为客户端提供服务。
    (5)网络连接
    为客户端提供认证,为了增强系统的安全性,MDS为客户端提供认证方式。OSD将依据MDS的认证来决定是否为客户端提供服务。网络连接是对象存储系统的重要组成部分。它将客户端、MDS和OSD连接起来,构成了一个完整的系统。

    转载于:https://www.cnblogs.com/zmlctt/p/4024361.html

    展开全文
  • 对象存储概述

    2020-07-30 20:55:59
    前言 今天碰巧看到一篇介绍对象存储概念的博客,感觉整体写的还行。现在做个简单的笔记,其中修改了原文的部分内容和结构。...总体上来讲,对象存储综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NA...

    前言

    今天碰巧看到一篇介绍对象存储概念的博客,感觉内容通俗易懂。现在做个简单的笔记,其中修改了原文的部分内容和结构。

     

    对象存储概述

    什么是对象存储? 

    相对于存储局域网(SAN)和网络附加存储(NAS)网络存储架构,对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备(Object-based Storage Device)简称 OSD。总体上来讲,对象存储综合了 NAS  SAN 的优点,同时具有 SAN 的高速直接访问和 NAS 的分布式数据共享等优势,提供了具有高性能、高可靠性、跨平台以及安全的数据共享的存储体系结构。

     

    对象存储架构

    核心是将数据通路(数据读或写)和控制通路(元数据)分离,并且基于对象存储设备构建存储系统,每个对象存储设备是智能的,能够自动管理其上的数据分布。对象存储结构由对象存储设备、元数据服务器、对象存储系统的客户端部分组成。 

     

    对象 

    对象是系统中数据存储的基本单位,每个 Obeject 是数据和数据属性集的综合体,数据属性可以根据应用的需求进行设置,包括数据分布、服务质量等。在传统的存储系统中用文件或块作为基本的存储单位,块设备要记录每个存储数据块在设备上的位置。Object 维护自己的属性,从而简化了存储系统的管理任务,增加了灵活性。Object 的大小可以不同,可以包含整个数据结构,如文件、数据表项等。在存储设备中,所有对象都有一个对象标识,通过对象标识 OSD 命令访问对象。通常由多种类型的对象,存储设备上的根对象标识存储设备和该设备的各种属性,组象是存储设上共享资源管理策略的对象集合等。 

     

    对象存储设备 

    每个 OSD 都是一个智能设备,具有自己的存储介质、处理器、内存以及网络系统等,负责管理本地的 Object,是对象存储系统的核心。OSD 同块设备的不同不在于存储介质,而在于两者提供的访问接口。OSD 的主要功能包括数据存储和安全访问、目前国际上通常采用刀片式结构实现对象存储设备。OSD 提供三个主要功能: 
    (1) 数据存储OSD 管理对象数据,并将它们放置在标准的磁盘系统上,OSD 不提供接口访问方式,Client 请求数据时用对象ID、偏移进行数据读写。 
    (2) 智能分布OSD 用其自身的 CPU 和内存优化数据分布,并支持数据的预取。由于 OSD 可以智能地支持对象的预取,从而可以优化磁盘的性能。 
    (3) 每个对象数据的管理OSD 管理存储在其上对象的元数据,该元数据与传统的 inode 元数据相似,通常包括对象的数据块和对象的长度。而在传统的 NAS 系统中,这些元数据是由文件服务器提供的,对象存储架构将系统中主要的元数据管理工作由 OSD 来完成,降低了 Client 的开销。 

     

     

    元数据服务器(Metadata Server,MDS) 

    MDS 控制 Client  OSD 对象的交互,为客户端提供元数据,主要是文件的逻辑视图,包括文件与目录的组织关系、每个文件所对应的 OSD 等。主要提供以下几个功能: 
    (1) 对象存储访问MDS 构造、管理描述每个文件分布的视图,允许 Client 直接访问对象。MDS  Client 提供访问该文件所含对象的权限,OSD 在接收到每个请求时先验证该权限,然后才可以访问。 
    (2) 文件和目录访问管理MDS 在存储系统上构建一个文件结构,包括限额控制、目录和文件的创建和删除、访问控制等。 
    (3) Client Cache一致性为了提高 Client 性能,在对象存储系统设计时通常支持 Client  Cache。由于引入 Client 方的 Cache,带来了 Cache 一致性的问题,MDS支持基于 Client 的文件 Cache,当 Cache 的文件发生改变时,将通知 Client 刷新Cache,从而防止 Cache 不一致引发的问提。 

     

     

    对象存储系统的客户端

    为了有效支持 Client 支持访问 OSD 上的对象,需要在计算节点实现对象存储系统的 Client。现有的应用对数据的访问大部分都是通过 POSIX 文件方式进行的,同时为了提高性能,也具有对数据的 Cache 功能和文件的条带功能。同时,文件系统必须维护不同客户端上 Cache 的一致性,保证文件系统的数据一致。文件系统访问流程: 
    (1) 客户端应用发出读请求; 
    (2) 文件系统向元数据服务器发送请求,获取要读取的数据所在的 OSD; 
    (3) 然后直接向每个 OSD 发送数据读取请求; 
    (4) OSD 得到请求后,判断要读取的 Object,并根据此 Object 的认证方式,对客户端进行认证,如果客户端得到授权,则将 Object 的数据返回给客户端; 
    (5) 文件系统收到 OSD 返回的数据以后,读操作完成。

     

     

    对象存储文件系统的关键技术 

    分布元数据 

    (1) 为计算结点提供一个存储数据的逻辑视图(Virtual File System,VFS层),文件名列表及目录结构。 
    (2) 组织物理存储介质的数据分布(inode层)。对象存储结构将存储数据的逻辑视图与物理视图分开,并将负载分布,避免元数据服务器引起的瓶颈(如NAS系统)。元数据的 VFS 部分通常是元数据服务器的 10% 的负载,剩下的 90% 工作(inode部分)是在存储介质块的数据物理分布上完成的。在对象存储结构,inode 工作分布到每个智能的 OSD,每个 OSD 负责管理数据分布和检索,这样 90% 的元数据管理工作分布到智能的存储设备,从而提高了系统元数据管理的性能。另外,分布的元数据管理,在增加更多的 OSD 到系统中时,可以同时增加元数据的性能和系统存储容量。

     

    并发数据访问

    对象存储体系结构定义了一个新的、更加智能的磁盘接口 OSD。OSD 是与网络连接的设备,它自身包含存储介质,如磁盘或磁带,并足够的智能可以管理本地存储的数据。计算结点直接与 OSD 通信,访问它存储的数据,由于 OSD 很智能,所以不需要文件服务器的介入。如果将文件系统的数据分布在多个 OSD 上,则聚合I/O速率和数据吞吐率将线性增长,对绝大多数 Linux 集群应用来说,持续的I/O聚合带宽和吞吐率对较多数目的计算结点是非常重要的。对象存储结构提供的性能非常好,如 ActiveScale 对象存储文件系统的带宽可以达到 10GB/s。

     

    转载自:https://blog.csdn.net/liuaigui/article/details/17973039

    展开全文
  • COS对象存储

    2020-12-31 18:51:20
    最近公司有用到COS对象存储,接下来和大家一起聊聊对象存储,实际上存储这一块在我之前的博客中有提到,博客中讲述了分布式文件系统存储、块存储和对象存储的相关工作原理及三者之间的区别,大家感兴趣的话可以去看...


    前言

    最近公司有用到COS对象存储,接下来和大家一起聊聊对象存储,实际上存储这一块在我之前的博客中有提到,博客中讲述了分布式文件系统存储、块存储和对象存储的相关工作原理及三者之间的区别,大家感兴趣的话可以去看一看我这篇博客《Ceph分布式存储》

    一、COS概述

    COS 对象存储是在云上提供无层次结构的分布式存储产品,为用户提供单价较低且快速可靠的数据存储方案。COS 以冗余的方式跨多个可用区存储用户数据,并允许多个不同的客户端或应用程序线程同时对这些数据进行读或写操作。同时可通过云服务器实例或互联网使用 Web API 接口存储和检索数据。

    1、对象存储和文件存储的区别?

    • 对象存储

      无目录层次结构、无数据格式限制,可存储任意数量的数据,存储桶空间无容量上限,无需分区管理。数据支持高可用架构部署,设计保障数据最终一致性,不支持文件锁等特性。API 使用 HTTP/HTTPS 的协议访问,并提供 SDK 和工具等方式与业务集成,上传到 COS 的对象可通过 URL 地址直接访问或下载。

    • 文件存储

      使用常用的网络文件传输协议,可创建文件系统并实现大规模扩展,需挂载在云服务器中使用。文件存储可为网站、在线发行、存档各种应用存储。 计算吞吐量高,具有极高的可用性和持久性,也适用于并发较高或需要共享存储的需求。

    2、对象存储和云硬盘的区别?

    • 对象存储

      对象存储具备无文件系统、目录结构、文件数量和空间上限的特性,需通过 Web API 接口管理和访问存储,提供了 SDK 和工具等集成,可以不依托云服务器单独使用。对象存储支持大规模数据的访问,但不适合毫秒级响应或随机读写的场景。

    • 云硬盘

      云硬盘需要搭配云服务器,使用文件系统分区或格式化后,才可以被挂载使用。根据云硬盘不同的类型,针对不同的性能指标提供了区别 IOPS 和吞吐性能的产品,可满足单机使用的不同场景。

    3、应用场景

    对于COS对象存储来说,它又可分为:标准存储、低频存储、归档存储。

    • 标准存储

      标准存储(默认)适用于实时访问大量热点文件、频繁的数据交互等业务场景。

    • 低频存储

      低频存储数据取回会产生费用,适用于较低访问频率(例如平均每月访问频率1到2次)的业务场景。

    • 归档存储

      归档存储提供了最低的存储单价,但读取数据时需要较长解冻时间,因而适合需要长期保存数据的业务场景。

    二、基本概念

    • 存储桶(bucket):是对象的载体,可理解为存放对象的“容器”。
    • 对象(Object):是对象存储的基本单元,可理解为任何格式类型的数据,例如图片、文档和音视频文件等。
    • 地域(Region):是腾讯云托管机房的分布地区,对象存储 COS 的数据存放在这些地域的存储桶中。
    • 访问域名(Endpoint):对象被存放到存储桶中,用户可通过访问域名访问和下载对象。

    三、COS优点

    • 稳定持久

      腾讯云对象存储提供数据跨多架构、多设备冗余存储,为用户数据提供异地容灾和资源隔离功能。

    • 安全可靠

      COS 提供防盗链功能,可屏蔽恶意来源的访问;支持数据 SSL 加密传输,控制每个单独文件的读写权限。

    • 成本最优

      使用 COS,无需传统硬件的采购、部署和运维,节省了运维工作和托管成本。

    • 简单易用

      COS 提供图形化程序、命令行工具、协议工具等多种途径对存储对象进行批量操作,让使用更为简单。

    • 接入便捷

      COS 提供丰富的 SDK 接入工具,简单且可靠,同时COS 提供无缝迁移工具进行迁移和接入。

    • 服务集成

      COS 支持与其他腾讯云产品联动,包括 CDN 加速、数据万象图片处理、音视频转码、文件预览等组件。

    四、COS管理

    4.1 基本概念

    • 存储桶(bucket):是对象的载体,可理解为存放对象的“容器”。
    • 对象(Object):是对象存储的基本单元,可理解为任何格式类型的数据,例如图片、文档和音视频文件等。
    • 地域(Region):是腾讯云托管机房的分布地区,对象存储 COS 的数据存放在这些地域的存储桶中。

    4.2 基本操作

    1、创建存储桶

    我们需要创建一个用于存放对象的存储桶:

    (1)在对象存储控制台左侧导航栏中单击【存储桶列表】,进入存储桶管理页。

    (2)单击【创建存储桶】,输入以下配置信息,其他配置保持默认即可。

    • 名称:输入存储桶名称。名称设置后不可修改。
    • 所属地域:存储桶所属地域,选择与您业务最近的一个地区,例如广州地域。
    • 访问权限:存储桶访问权限,此处我们保持默认为“私有读写”。

    (3)单击【确定】,即可创建完成。

    2、上传对象

    从本地选择文件上传到存储桶:

    (1)单击存储桶名称,进入存储桶列表页。

    (2)选择【上传文件】–>【选择文件】,选择需要上传至存储桶的文件,上传相应的文件。

    (3)单击【上传】,即可将对应的文件上传至存储桶。

    3、下载对象

    将云上数据下载到本地:

    (1)单击文件 exampleobjext.txt 右侧的【详情】,进入对象属性页。

    (2)在【基本信息】配置项中,单击【下载对象】即可下载,或单击【复制临时链接】至浏览器下载该对象。

    以上操作均有腾讯云文档提供,操作并不难,也不是重点,重点的是搞清COS对象存储的工作原理,以及与块存储、文件系统存储之间的区别以及优缺点。

    五、COSBrowser

    COSBrowser 是腾讯云对象存储 COS 推出的可视化界面工具,可实现对 COS 资源的查看、传输和管理。COS 对象存储使用的工具有很多,比如:COSCMD、COS Migration等。目前 COSBrowser 有桌面端和移动端两种,本次主要讲桌面端的相关操作及功能。

    5.1 登录界面

    COSBrowser 桌面端仅支持云 API 密钥进行登录使用,API秘钥可在COS实例中获取,软件登录界面如下所示:

    在这里插入图片描述

    上图中 SecretID 和 SecretKey 可在 COS 对象存储控制台中创建并获取,如下图所示:

    在这里插入图片描述

    5.2 基本功能

    • 创建/删除存储桶
    • 查看存储桶详情
    • 添加访问路径
    • 上传文件/文件夹
    • 下载文件/文件夹
    • 删除文件/文件夹
    • 复制粘贴文件

    功能还有很多,以上只列举一部分功能,更多功能可查阅官方文档。

    COS 对象存储使用的工具还有很多,比如:COSCMD、COS Migration、FTP Server、COSFS、Hadoop等工具,实际上不管用哪种工具,其基本的操作和功能都差不多。

    六、FAQ

    1、COS数据误删问题

    • 问题描述:

      对象存储 COS 的数据冗余存储机制是针对服务器等硬件出现故障时需要数据恢复的场景进行设计的。如果主动对 COS 的数据手动删除或进行配置删除后,删除后的数据将无法恢复。

    • 解决方案

      (1)对存储桶文件做定时备份操作:

      • 使用 COSCMD 工具将 COS 内对象下载至本地或第三方服务器。
      • 使用 COS Migration 工具或者跨地域复制功能实现同地域或跨地域的存储桶数据备份。
      • 定期使用 COS API、SDK,将数据备份到 COS 的其他存储桶。
      • 使用版本控制保存您的历史版本数据。

      (2)使用 COS 权限管理:

      • 读写权限分离,对于只需要读数据的业务、只使用具有读权限的子账号或临时密钥进行访问。
      • 存储桶(Bucket)权限分离,针对不同的业务,只授权对应业务范围内的存储桶、目录和操作权限。
      • 不使用主账号访问 COS。
      • 使用临时密钥访问 COS。
      • 妥善保管数据访问的凭据,如腾讯云账号密码、CAM 子账号访问凭据、腾讯云 API 密钥等。

    2、API接口调用

    • 问题描述:

      在调用 API 接口时,出现“Request has expired”等错误信息。

    • 解决方案

      出现该提示,存在两种可能:

      (1)一是因为您发起请求的时间超过了签名的有效时间;

      (2)二是您本地系统时间和所在时区的时间不一致。

      针对第一种可能,可重新获取有效的请求签名再进行 API 操作。若是第二种可能,将你本地系统时间按照所在时区的时间进行校正。

    参考资料:腾讯云文档-COS对象存储

    <点击跳转至开头>

    展开全文
  • 什么是对象存储

    2021-01-28 09:59:59
    对象存储概述 什么是对象存储(OSD)? 存储局域网(SAN)和网络附加存储(NAS)是目前两种主流网络存储...总体上来讲,对象存储综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的分布式数据共享等优势,提供
  • 什么是对象存储(OSD)? 存储局域网(SAN)和网络附加存储(NAS)是我们比较熟悉的两种主流网络存储架构,而对象存储(Object-based Storage)是一种新的网络存储架构,...对象存储优点: 总体上来讲,对象存储同兼具
  • 基础知识块级概念文件级概念物理块与文件系统之间的关系块存储、文件存储、对象存储存储优点缺点文件存储优点缺点对象存储相关问题为什么对象存储兼具块存储与文件存储的好处,还要使用块存储或文件存储呢?...
  • 大话存储系列13——对象存储

    千次阅读 2013-03-19 06:21:58
    对象存储系统(Object-Based Storage System)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。 传统块存储与对象存储...
  • 本文详细介绍了Ceph对象存储的基本概念,使用以及其优点。Ceph对象存储是Ceph集群的标配,在生产上基本是通过Ceph对象存储来存储文件的,这是因为其读写性能良好有共享性并且可以通过HTTP协议的接口操作。其原理就是...
  • 1. 块存储 主要给虚拟机用的,包括数据库,将裸磁盘空间映射给主机使用。 创建虚拟机的时候create image,其实是直接将一块磁盘的一部分空间...3. 对象存储 综合1,2的优点。K、V模式。但是需要部署管理软件。支持p...
  • 对象存储优点 可扩展性高:对象存储能够扩展数十乃至数百EB的容量,能够充分利用高密度存储; 效率高:扁平化结构,不受复杂目录系统对性能的影响; 无需迁移:对象存储是一种横向扩展系统,随着容量的增加,数据...
  • 文件存储 设备:FTP、NFS服务器 特点:一个大文件夹,大家都可以获取文件 优点:可以共享 ...对象存储 设备:swift,键值存储 特点:具备块存储的高速以及文件存储的共享等特性 优点:速率快,共享方
  • 对象存储优点 对象存储的应用场景 对象存储 我们知道,在很长的一段时间里,这三种架构几乎统治了数据存储市场。所有行业用户的数据存储需求,都是在这三者中进行选择。 然而,随着时代的发展,一种新的...
  • 块存储 如磁盘阵列、硬盘 主要是将裸磁盘的空间映射给主机使用,...对象存储 结合块存储和文件系统存储的优点,具备块存储的读写高速,也具备文件存储的共享特性,提供了具有高性能,高可靠性,跨平台以及安全的数..
  • 对象存储的新认识

    2014-10-27 09:45:00
    对象存储系统(Object-Based Storage System)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。 传统块存储与对象存储...
  • 七牛云对象存储入门

    2020-02-29 22:14:14
    本文选用七牛云对象存储来实现图片存储。主要优点是,便宜,新用户还送一个月的免费测试,足够我们学习使用。
  • 优点:读写速度快(带宽和IOPS);缺点:太过于底层,不利于扩展,不能被共享; 其次,与块存储对应的是文件存储。文件存储可以分为本地文件存储和网络文件存储。 本地文件存储:ext3,ext4,NTFS
  • 优点 调用方便,直接调用变量名字即可 缺点 一个变量只能储存一个值 数组: 优点 一数组可以储存多个值  缺点 调用较为麻烦,要调用须输入数组名+“[下标]” 转载于:...
  • 优点: 和本地硬盘一样,直接使用缺点: 数据不共享对象存储: 一个对象我们可以看成一个文件, 综合了文件存储和块存储的优点优点: 速度快,数据共享缺点: 成本高, 不兼容现有的模式下面我们这里讨论ceph集群的对象存储...
  • 相信大家对云存储的优点都已经有所了解,例如云存储支持按需使用,按需付费,不必承担多余的开销,也无需增加额外的硬件设施或配备...一般云存储会分几种类型:对象存储(冷、热数据存储)、块存储、表格存储等,今天...
  • 对象存储(Object Storage)是综合了NAS和SAN的优点,同时具有SAN的高速直接访问和NAS的数据共享等优势,提供了高可靠性、跨平台性以及安全的数据共享的存储体系结构。 典型应用:网盘、云存储。 上篇文章也讲到了...
  • 深入浅出:对象存储

    2018-03-25 23:40:00
    云存储已经成为业界最为火热的概念之一,未来是云时代,没有存储设备,一切都将存储在云中,而Dropbox、Box云存储厂商更是验证了这一点。...现在我们就来看看现在市场上热度较高的对象存储。  浅出:什么是对...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,616
精华内容 1,046
关键字:

对象存储优点