大数据存储技术基础
一、绪论
1.存储的本质
信息跨越空间的传递——通讯
信息跨越时间的传递——存储
通讯:利用具有跨越空间特性的物理现象 ---声音、光、电
存储:利用具有时间稳态的物理现象 ---物理稳态、磁稳态、半导体稳态
什么是存储?
存储:
·它是数据临时或长期驻留的物理媒介;
·它是保证数据完整安全存放的方式或行为。
计算机存储系统:
指计算机中由存放程序和数据的各种存储设备(介质)、控制部件与接口及管理信息调度的设备(硬件)和算法(软件)所组成的系统。
存储的主要指标:
容量:可以存下多少东西
速度:读写带宽、读写次数/秒(iops)
持久性:数据能够保存多久 大小:体积是多少
方便性:是否方便移动和携带
功耗:消耗能耗高低
性价比:单位价格下主要指标如何,例如速度 、容量等指标;
1.1存储介质的发展历程
(1)存储的历史
象形文字、石刻楔形文字、竹简、纸质印刷
现在进入“磁器时代”,大部分数据都是用硬盘保存,磁盘称为当今世界数据存储的主流技术
存储器设备:计算机系统中的记忆设备,用来存放程 序和数据
(2)存储器的发展
存储器类别:打孔纸卡、穿孔纸带、威廉管、磁鼓、汞延迟线、超声波存储器、铁电存储磁芯、相变存储、可擦除可编程只读存储器、flash、磁阻式随机存取内存
磁芯存储器:核心使用微小的磁环(环),核心通过线程来写入和读取信息。 每个核心代表一点信息。 磁芯可以以两种不同的方式(顺时针或逆时针)磁化,存储在磁芯中的位为零或一,取决于磁芯的磁化方向。 布线被布置成允许单个芯被设置为1或0,并且通过向所选择的导线发送适当的电流脉冲来改变其磁化。 读取内核的过程会导致内核重置为零,从而将其擦除。 这称为破坏性读数。 在不进行读写操作时,即使关闭电源,内核也会保持最后的值。 这使它们成为非易失性的。
1955-1975:磁芯存储器统治了计算机随机存储器(ram)
1964年:静态随机存取存储器(sram)
1969年:英特尔公司开发了第一个256位静态ram
1966年:ibm公司发明了动态随机存取记忆体(dram)
各代ddr的主要改进:
1.sdram:(同步动态随机存储器)
synchronous dynamic random access memory,一个时钟 周期内只传输一次数据,它是在时钟的上升期进行数据传输;
memory工作需要同步时钟,内部的命令的发送与数据的传 输都以它为基准;
动态是指存储阵列需要不断的刷新来保证数据不丢失;
2.ddr:double data rate sdram
一个时钟周期内传输两次数据,它能够在时钟的上升期和 下降期各传输一次数据,称为双倍速率sdram ;
更先进的同步电路,使指定地址、数据的输送和输出主要 步骤既独立执行,又保持与cpu完全同步;
3.ddr2:
在同等核心频率下,ddr2的实际工作频率是ddr的两倍。这得益于 ddr2内存拥有两倍于标准ddr内存的4bit预读取能力 ;
在采用更低发热量、更低功耗的情况下,ddr2可以获得更快的频率 提升,突破标准ddr的400mhz限制 ;
ddr2内存通常采用fbga芯片封装形式,功耗和发热量更小。
4.ddr3:
突发长度(burst length,bl)。ddr3增加了一个4bit burst chop(突发突变)模式;
新增重置(reset)功能,当reset命令有效时,ddr3内存将停止所 有操作,并切换至少量活动状态,以节约电力 ;
寻址时序(timing),ddr2的cl(cas latency)范围一般在2~5 之间,而ddr3则在5~11之间。
5.ddr4:
相比ddr3大的区别有三点:16bit预取机制(ddr3为8bit),同样内核频率下理论速度是ddr3的两倍;更可靠的传输规范,数据可 靠性进一步提升;工作电压降为1.2v,更节能。
相变存储
在1969年charles sie的论文中提出这项存储技术 ;
三星公司成为第一个成为开发出pcram的公司, 美光公司则已经生产出容量为1gb的芯片;
相变内存具有高速存取和非易失的特性
磁阻式随机存取内存mram
1989年:磁阻式随机存取内存mram (magnetoresistiverandom access memory)
mram接近静态随机存储器(sram)的高速读 取写入能力,以及动态随机存储器(dram)的 高集成度
ibm在上世纪八九十年代最早开始研发,但其商业 化的步伐依然没有取得进展,目前仍处于研发阶段
(3)辅存储器的变迁
磁带、 磁盘、软盘、 光盘、固态盘
闪存的主要优点:非易失、体积小、重量轻、低能耗、无噪声、抗震动
我们平时用的固态硬盘(ssd)就是flash组成的磁盘阵列。
(2018年3月,100tb固态硬盘上 市:nimbus data公司的 exadrivedc100系列固态硬盘)
注:内存条一般是用dram技术做成的,而cache一般是用sram做成的
1.2 硬件存储接口技术的发展
总线技术:
system bus :连接cpu 和memory ;
local (i/o) bus :从外部设备搬运数据 ;
bus 指标:
bus width measured in bits ;
bus speed measured in mhz ;
throughput measured in mb/s;
连接协议
1.存储总线接口:ide/ata
· ide:integrated device electronics
· ata指令集(advanced technology attachment:1986 年)
· calledpata:并行的ata80芯数据线
·上世纪90年代最流行的现代硬盘接口之一
·最大:133 mbps,低价格上的好性能
·desktop 和laptop系统
·inexpensive 存储链接interconnect
2.scsi:small computer system interface
scsi:服务器最流行的硬盘接口,1986标准化
·高速数据传输、带宽大、热插拔:320mb/s;连接设备8-16个
·支持多个数据的同时访问
较ide/ata价格昂贵
并行模式scsi
主用在“高端计算” 环境中
3.存储总线接口:sata/ata
sata协议:serial串行ata(ide:并行ata)
·ata指令集,串行线路传输数据,2000年
·传输率高、可靠性强、针脚少(6-8)
·目前最高速率600mb/s
·桌面系统和服务器,稍贵的存储链接:相对ide
sas(serial attached scsi):串行模式scsi接口
·3.0 gbps-6gbps
·高端服务器
4.internal das connectivity examples
主机外连存储设备的构件components
fibrechannel:光纤通道fc
外部存储接口scsi与fc比较
fibrechannel:可支持scsi 指令集
高带宽:2-8gbps
传输距离远:长达150m ~ 50km
确定性低延迟:微秒级端到端 延迟;
低误码率:小于10-12 ;
抗干扰能力强:对电磁干扰有 天然的免疫力
dual-ported drives
scsi :
320mb/s
有限的距离
有限的设备数目: 大8-16
usually limited to single initiator
single-ported drives
fibre channel connectivity
bus 技术-pci
pci:peripheral component interconnect(外设 部件互连)
计算机内的局部并行总线标准
广泛用于当前高档微机和便携式微机。主要用于连接显示 卡、网卡、声卡。主板带有多数量的插槽类型
高速链接微处理器和外部设备
即插即用功能
32/64 bit;133 mb/sec
bus 技术-pcie
pci express: evolved from pci and pci-x™ architectures
高速串行替换协议for pci and pci-x;
高8gb/s总 线带宽
pci express链路是两个设备之间(pci express端口) 的点对点通信通道
implements packet based protocol for information transfer
在物理层面上,一条链路由一条或多条通道组成,包含1 个到32个通道,更精确地包括1,2,4,8,12,16或32个通道
•例如,低速外设(例如802.11 wi-fi卡)使用单通道(×1) 链路,而图形适配器通常使用更宽更快的16通道链路。
pci vs pcie的速度比较
scsi协议结构
1.3 存储系统基本结构形式
存储系统:
1)存储资源组合:提供大容量、高性能、低价格、 高可用、高安全的存储系统为目的
·•存储资源单元:寄存器、sram、dram、flash、硬盘、磁 带、光盘
2)各种层次和规模的组合:大/快/便宜的存储器
经典的组合---cache和vm(虚拟内存)
•cache-:sram与dram的组合
•vm:dram 与disk的组合(看起来又大又快又便宜 的存储器)
存储层次–速度和开销:
磁盘阵列
集成大量廉价的小型磁盘存储器构造出磁盘阵列:
“分块”、“交叉存取”以及冗余容错等技术
容量大、可靠性高、性能高
(个人认为磁盘阵列一般都要附加一个阵列控制器 例如raid controller)
直接附加存储direct access storage
以服务器为中心:存储设备通过总线(scis线等) 直接连接到主机上,受控于主机
·存储设备内部利用scsi总线通道或fc通道、ide接口连接多个磁盘,实现raid技术,形成一个磁盘阵列,从而解决了数据容错、大存储空间的问题
优点:简单、便宜、易于安装部署管理
存储的逻辑卷和文件系统概念
1.块设备
(1)以block为基本读写单位的设备
•磁盘:“block”指sector
•闪存:“block”指page或subpage
•raid:“block”指stride
(2)键盘、鼠标不是块设备,它们以字节流的形式读写
(3)网卡不是块设备,但通过网卡连接的iscsi存储设备是块设备
2.物理卷(physical volume)
将一个块设备划分成几个部分,每部分称作一个物理卷(也称“分区”)
物理卷的引入使大容量块设备的管理更容易
每个物理卷被划分成许多大小一致的physical extents(物理块)
3.卷组(volume group)
大量的物理卷组成一个存储池,叫卷组
•卷组可包含多个块设备上的物理卷
•一个块设备上的物理卷可处于多个卷组中
卷组的引入为可伸缩的存储空间管理提供基础
4.逻辑卷(logical volume)
卷组包含多个物理卷,每个物理卷包含大量physical extents,逻辑卷管理器从这些physical extents拿出一部分组成逻辑卷
•逻辑卷由大量logical extents组成
•逻辑卷的每个logical extent对应物理卷的一个physical extent
•同一逻辑卷的logical extents可来自不同的物理卷,同一物理卷的 physical extents可处于不同的逻辑卷中
每个逻辑卷上安装一个文件系统,逻辑卷通过增加和减少logical extent调整大小,导致文件系统的容量是可伸缩的
推荐阅读
-
Java技术中的三大特性 博客分类: Java Base java基础
-
大数据时代的 9 大Key-Value存储数据库 博客分类: 架构研究
-
成就企业驾驭大数据浪潮 :Sybase数据分析与管理技术之四大法宝 博客分类: SYBASE ASE
-
Android 开发(13)数据存储技术
-
[转]四大架构 博客分类: 架构 业务架构应用架构技术架构数据架构
-
[转]四大架构 博客分类: 架构 业务架构应用架构技术架构数据架构
-
java对象的存储 博客分类: java基础类 java数据存储
-
Oracle存储过程开发 博客分类: SQL技术栈 Oracle数据库存储过程Job定时任务
-
Android数据存储实现的5大方式
-
《PHP核心技术与实践》-PHP与数据库基础