【杂记】数据存储架构

1. 存储分类

        随着主机、磁盘、网络等技术的发展,对于承载大量数据存储的服务器来说,服务器内置存储空间,或者说内置磁盘往往不足以满足存储需要。因此,在内置存储之外,服务器需要采用外置存储的方式扩展存储空间。

  • 按照存储服务方式:直连存储(DAS)、网络直连存储 (NAS)、和存储区域网络(SAN)
  • 按照物理存储形态:块存储、文件存储、对象存储、表格存储

        块存储和文件存储是我们比较熟悉的两种主流的存储类型,而对象存储(Object-based Storage)是一种新的网络存储架构,基于对象存储技术的设备就是对象存储设备(Object-based Storage Device)简称OSD ;其中本质是一样的,底层都是块存储,只是在对外接口上表现不一致,分别应用于不同的业务场景。

 

 

 参考文献:网络存储结构简明分析—DAS、NAS和SAN 三者区别 - 飞雪飘鸿-熊伟 - 博客园

2. 存储特性

2.1 存储架构

2.1.1 直接附加存储设备

        DAS(Direct Attached Storage) 这是最简单的存储类型,我们的个人电脑都属于这种,就是磁盘(或磁盘阵列RAID或者磁盘簇)直接接在主机的总线上 。常见的DAS协议是SCSI和SATA,磁盘是管理DAS的主要单位。

  • 优点
    • DAS购置成本低,配置简单,使用过程和使用本机硬盘并无太大差别,对于服务器的要求仅仅是一个外接的SCSI口,因此对于小型企业很有吸引力。
  • 缺点 
    • 服务器本身容易成为系统瓶颈
    • 服务器发生故障,数据不可访问,数据备份操作复杂
    • 对于存在多个服务器的系统来说,设备分散,不便管理
    • 多台服务器使用DAS时,存储空间不能在服务器之间动态分配,可能造成相当的资源浪费

2.1.2 网络附加存储服务器

        NAS(Network Attached Storage)是专用数据存储服务器,包括存储器件和内嵌系统软件,可跨平台文件共享功能。客户通过远程过程调用访问网络连接存储,如UNIX系统的NFS或 Windows 机器的 CIFS。远程过程调用通过IP网络(通常为向客户传输数据的局域网 LAN)的TCP或UDP来进行,特点是性价比高。它主要通过NFS或CIFS命令集访问数据,以文件为传输协议,通过TCP/ IP实现网络化存储,扩展性好、价格低、用户易管理。目前在教育、政府、企业等数据存储应用较广。典型设备有,FTP、NFS服务器。文件系统是管理NAS的主要单位。

  • 优点
    • 克服文件无法共享的问题,共享方便
    • NAS作为瘦服务器系统,易于安装和部署,管理使用也很方便
    • 随便1台机器就可以,不需要专用的SAN网络,因此对硬件要求很低,软件成本也不高
  •  缺点
    • 由于NAS的协议开销高、带宽低、延迟大,不利于在高性能集群中应用
    • 由于存储数据通过普通数据网络传输,因此易产生数据泄漏等安全问题
    • 由于存储数据通过普通数据网络传输,因此易受网络上其它流量的影响
    • 存储只能以文件方式访问,而不能像普通文件系统一样直接访问物理数据块,因此会在某些情况下严重影响系统效率,比如大型数据库就不能使用NAS

 2.1.3 专用存储区域网络

        SAN(Storage Area Network)实际是一种专门为存储建立的独立于TCP/IP网络之外的专用网络。简而言之,它是通过光纤通道连接到一群计算机上 , 建立专用于数据存储的区域网络;在SAN的环境系统中,管理员可以把一组硬盘或者这组硬盘的某部分组成逻辑单元(LUN:Logic Unit),因此相对于外界来说,LUN就是像一块硬盘。

  • 优点
    • 随着存储容量的增长,SAN允许企业独立地增加他们的存储容量
    • 允许任何服务器连接到存储阵列,不管数据放在哪里,服务器都可以直接存取所需的数据
    • SAN具有更高的带宽。除了FC连接,还有ISCSI以及SAS接口,容易实现物理分离的存储
  • 缺点
    • 价格昂贵。不论是SAN阵列柜还是SAN必须的光纤通道交换机价格都是十分昂贵的
    • 需要单独建立光纤网络,异地扩展比较困难

  •  NAS与SAN的分析与比较

        我们把网络存储比喻成一个仓库,红色小人表示数据连接,大家看到左边NAS结构中,SMB协议就是该仓库的管理员(兰色小人),每个连接都需要确认,由内部人员进入仓库获得资源后转交个请求人,内部人员的数量有限,不能满足过多的负载。而在右边SAN结构中(FC-SAN和IP-SA N 都是这样机理),没有内部服务人员,仓库的使用不需要过多的管理,每个连接请求通过一种有效的有秩序的规定来进行数据的交换,在这种“秩序”下,“仓库”可以为用户提供最大限度的服务。

2.2 存储类型

2.2.1 块存储

         块存储我们简单的理解就是一块一块的硬盘,直接挂载在主机上,在主机上我们能够看到的就是一块块的硬盘以及硬盘分区。从存储架构的角度而言,块存储又分为直连式存储和存储区域网络两类。典型设备:磁盘阵列、硬盘,例如:磁盘阵列里面有5块硬盘,然后可以通过划逻辑盘、做Raid、或者LVM等方式逻辑划分出N个逻辑的硬盘。但是逻辑盘和物理盘是两个完全不同的概念。假设每个硬盘100G,共有5个硬盘,划分为逻辑盘也为5个,每个100G,但是这5个逻辑盘和原来的5个物理盘意义完全不同了。

         例如第一个逻辑盘第一个20G可能来自物理盘1,第二个20G来自物理盘2,所以逻辑盘是多个物理盘逻辑虚构出来的硬盘。接着块存储会采用映射的方式将这几个逻辑盘映射给主机,主机上面的操作系统会识别到有5块硬盘,但是操作系统是无法区分到底是物理盘还是逻辑盘,它一概就认为只是5块裸的物理硬盘而已,跟直接拿一块物理硬盘挂载到操作系统没区别,至少操作系统感知上没有区别的。在此方式下,操作系统还需要对挂载的裸硬盘进行分区、格式化后,才能使用,与平常主机内置的硬盘无差异。

  • 优点
    • 这种方式的好处当然是因为通过了Raid与LVM等手段,对数据提供了保护
    • 可以将多块廉价的硬盘组合起来,称为一个大容量的逻辑盘对外提供服务,提高了容量
    • 写入数据时,由于多块磁盘组合出来的逻辑盘,所以几块硬盘并行写入的,提升读写效率
    • 块存储采用SAN架构组网,传输速度和封装协议原因,使得传输速度和读写效率得到提升
  • 缺点 
    • 采用SAN架构组网,需要额外为主机购买光纤通道卡,还要购买光纤交换机,造价成本高
    • 主机之间数据无法共享,在服务器不做集群的情况下,块存储裸盘映射给主机,在格式化使用后,对于主机来说相当于本地盘,那么主机A的本地盘根本不能给主机B去使用,无法共享数据
    • 不利于不同操作系统主机间的数据共享:因为操作系统使用不同的文件系统,格式化后,不同的文件系统间的数据是共享不了的。 例如一台win7,文件系统是FAT32/NTFS,而linux是EXT4,EXT4是无法识别NTFS的文件系统的

参考文献:块存储、文件存储、对象存储意义及差异 - hukey - 博客园

2.2.2 文件存储

        文件存储,我们指的是在文件系统上的存储,也就是主机操作系统中的文件系统。我们知道,文件系统中有分区,有文件夹,子文件夹,形成一个自上而下的文件结构;文件系统下的文件,用户可以通过操作系统中的应用程序进行打开、修改等操作,如打开word、编辑word。从架构上来说,文件存储提供一种NAS架构,使得主机的文件系统不仅限于本地的文件系统,还可以连接基于局域网的共享文件系统。主要操作对象是文件文件夹,数据组织方式是目录树;文件系统的接口基于POSIX,涉及的文件相关的接口包括:LOOKUP/ACCESS/READ/WRITE/CREATE /REMOVE /RENAME等。文件夹相关的接口包括:MKDIR/RMDIR/READDIR等;

参考文献:什么是文件存储NAS - 文件存储 NAS - 阿里云

2.2.3 对象存储

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

参考文献:对象存储(云存储)概述_大圣即大盗-CSDN博客_对象存储

2.2.4 特点区别

猜你喜欢

转载自blog.csdn.net/qq_32643313/article/details/123105986