zoukankan      html  css  js  c++  java
  • 海量网络存储系统原理与设计(一)

    摘自http://book.51cto.com/art/201004/196313.htm

     揭开存储系统的抽象"外壳",可以发现计算机系统中存储系统具有层次性的结构,存储系统根据和CPU的距离可分为多个层次,每层存储器的数据存取时间、数据传输带宽和容量是不同的。

    1. 第0层一般是指处理器内部的寄存器组和一级、二级cache,第一层是指主板上的cache和随机存储器,这两层构成第一级存储,也被习惯称为主存储器。CPU可以通过指令直接访问主存储器中的数据。

    2. 第二层是外存储器,相对于主存储器,二级存储系统不能直接被CPU访问,必须通过输入/输出(I/O,Input/Output)通道进行存取并且提供大容量和非易失的数据存储能力,典型的二级存储设备就是磁盘。

    3. 第三级存储往往通过mount和dismount操作连接到计算机系统中,它们具有离线存储的特征,典型第三级存储设备是磁带库。

    第0层的存取时间以纳秒计算,其容量为KB级;而第二层的存取时间以毫秒计算,其容量为TB级。存储系统层次化的主要原因在于满足成本约束的情况,平衡存储容量和性能,得到容量接近最下层而性能接近最上层。存储空间层次化的不利之处在于必须设计复杂的数据管理机制保证数据正确的在不同层次间上下流动。

    网络存储系统出现和发展以前,存储系统主要为单个计算机系统提供存放数据的功能,由于存取过程的指令通过CPU发出,因此存储子系统往往依附于CPU和内存子系统为核心的主机系统,提供低速、大容量(相对于内存系统而言)和非易失的基本存储功能,其数据整个存取过程基本上由主机的操作系统控制,这种存储系统称之为DAS结构(Direct-Attached Storage)。事实上,在这种结构中存储系统数据管理和组织功能由本机操作系统实现。在使用存储系统方面也分为两种方式:

    1. 一种是存储子系统作为层次内存结构的第三级载体,实现和内存交换页的虚拟内存器功能,页的大小是固定的,虚拟内存模块通过在磁盘上开辟一段连续空间保存置换出内存的页;

    2. 另一种方式就是通过文件系统管理和存取磁盘系统上的数据,其基本方式是通过文件目录树的方式组织数据,而文件通过相应的文件分配表记录数据在磁盘上的物理存放。

    在充分吸收网络技术的基础上,具有大容量可共享可扩展的网络存储系统应运而生。这种存储系统具有高性能的处理部件、高速的内外部传输部件和大容量、可扩展的存储能力,事实上它已经成为提供大容量数据存储服务的独立计算机系统。

  • 相关阅读:
    PHP+VUE实现前端和后端数据互通(宝塔面板)
    PHP上传图片
    GIT常用命令
    基于Postman中的报错
    VUE项目Eslint报错
    git配置:本地仓库提交到远程仓库
    mybatis基础
    Json验证数据
    Json 三种格式数据解析
    Ajax 实现数据异步传输
  • 原文地址:https://www.cnblogs.com/AllanDragoon/p/3186470.html
Copyright © 2011-2022 走看看