2. DAS,NAS,SAN在数据库存储上的应用
一. 硬盘接口类型
1. 并行接口还是串行接口
(1) 并行接口,指的是并行传输的接口,比如有0~9十个数字,用10条传输线,那么每根线只需要传输一位数字,即可完成。
从理论上看,并行传输效率很高,但是由于线路上的物理原因,它的传输频率不能太高,所以实际的传输速度并不和并行度成正比,甚至可能更差。
(2) 串行接口,指的是串行传输的接口,同样是0~9十个数字,用1条传输线,那么需要传输10次,才可以完成。
从理论上看,串行传输效率不高,但是由于它的数据准确性,高频率的支持,使得传输速度可以很高。
(3) 并行连接线和串行连接线(IDE/SATA)
目前,计算机的外部接口大多被串行接口取代,比如:USB,1394,COM等等,都是串行接口。而硬盘的外部接口也已经被串行接口(SATA/SAS)占领。
2. 硬盘接口类型
按硬盘接口协议/规范可以分为2类:ATA和SCSI。使用了某种接口的硬盘就称为XXX硬盘。
2.1 ATA接口协议
(1) IDE接口
IDE接口也称为PATA(Parallel ATA)接口,也就是并行ATA接口。以前的PC机大多用的这种接口的硬盘。
(2) SATA接口
SATA(Serial ATA)接口,串行ATA接口,这类硬盘,转速通常不太高,容量大,目前PC机或者IOPS要求不是太高的存储多使用这种接口的硬盘。
(3) IDE和SATA硬盘接口图示

2.2 SCSI接口协议
(1) SCSI接口
通常所说的SCSI,是一种并行接口,早期的计算机外设(打印机,扫描仪等等),也大多使用这种接口。现在使用这种接口的硬盘已经很少。

(2) SAS接口
SAS(Serial SCSI)接口,串行SCSI接口,这类硬盘,转速高,IOPS高,适用于OLTP系统的存储。
另外,SAS的接口技术已经可以兼容SATA,也就是说:如果主板上有个SAS接口,是可以接SATA硬盘的,但是反之不行。从图片上看,SAS和SATA接口有点相似。

二. 存储方案
所谓的存储方案,就是用单独的软硬件将磁盘/磁盘组管理起来,供主机使用。
目前的外挂存储解决方案主要分为三种:
(1) 直连式存储 (DAS:Direct Attached Storage)
(2) 网络存储设备 (NAS:Network Attached Storage)
(3) 存储网络 (SAN:Storage Area Network)
存储方案内部使用的硬盘,多为SATA/SAS,经过串联/RAID之后,对主机提供访问接口。
1. DAS
直接连接存储 (DAS:Direct Attached Storage),是指将存储设备通过SCSI接口或FC接口直接连接到一台计算机上。DAS不算是网络存储,因为只有它所挂载的主机才可访问它。
也就是说,服务器发生故障时,连接在服务器上的DAS存储设备中的数据暂时不能被存取。

DAS设备示例:

2. NAS
网络连接存储 (NAS:Network Attached Storage),是指将存储设备通过标准的网络拓扑结构(例如以太网),连接到一群计算机上。NAS有文件系统和IP地址,可以类似的理解为网上邻居的共享磁盘。

NAS设备示例:

3. SAN
存储区域网络(SAN:Storage Area Network),目前的SAN存储有2种:一是基于光纤通道的FC SAN;二是基于以太网的IP SCAN(也就常说的iSCSI)。
FC SAN通过光纤交换机连接到主机(HBA卡),也就是说可以连接到光纤交换机的主机都可以访问这个存储;
iSCSI作为共享于以太网络上的存储则更类似于NAS。

FC SAN设备示例:

IP SAN 设备示例:

三. 在数据库存储上的应用
三种存储方案的比较,如图:

1. DAS
可作为本机的外挂硬盘,不过现在单块磁盘的空间已经很大,如果几个T的空间,直接在主机里插硬盘就可以实现了,不需要外挂。
2. NAS
由于它的文件系统特性,加上以太网网线传输,更像是我的电脑-网上邻居-共享磁盘,访问方式也是类似:\\NAS01\BACKUP\database_name.bak。更多的是作为文件共享、备份、归档所用,比如数据库的历史备份/异地备份文件。
3. SAN
FC SAN使用光纤传输,是一个高速的共享存储,数据库的任何东西都可以放在上面,还有就是在做集群时(failover clustering) 作为仲裁盘;
iSCSI的传输速率要低于FC SAN,目前在我们的环境中还没有直接使用iSCSI做数据库存储,通常是用在类似NAS的地方。
2. DAS,NAS,SAN在数据库存储上的应用的更多相关文章
- DAS,NAS,SAN在数据库存储上的应用
DAS,NAS,SAN在数据库存储上的应用 一. 硬盘接口类型1. 并行接口还是串行接口(1) 并行接口,指的是并行传输的接口,比如有0~9十个数字,用10条传输线,那么每根线只需要传输一位数字,即可 ...
- (4.15)存储DAS,NAS,SAN在数据库存储上的应用
关键词:存储,硬盘接口类型,磁盘类型,网络类型,DAS,DNS,SAN 转自:http://blog.51cto.com/qianzhang/1254617 一. 硬盘接口类型 1. 并行接口还是串行 ...
- [PS相关]DAS,NAS,SAN三种存储技术比较
随着数据量一直在快速增长,存储技术也在快速的更新以满足需求和推动创新.当存储被提到的时候,它不仅仅局限于存储容量,还有其他的需求比如数据保护,数据备份,数据访问速度等等. NAS-网络存储设备(Net ...
- [转载]存储基础:DAS/NAS/SAN存储类型及应用
这篇文章转自博客教主的一篇博客存储基础:DAS/NAS/SAN存储类型及应用, 他是在张骞的这篇博客DAS,NAS,SAN在数据库存储上的应用上做了部分修改和补充. 一. 硬盘接口类型 1. 并行 ...
- 存储与服务器的连接方式对比(DAS,NAS,SAN)
存储分类简介 磁盘存储市场上,存储分类根据服务器类型分为:封闭系统的存储和开放系统的存储,封闭系统主要指大型机,AS400等服务器,开放系统指基于包括Windows.UNIX.Linux等操作系统的服 ...
- RAID在数据库存储上的应用-转
随着单块磁盘在数据安全.性能.容量上呈现出的局限,磁盘阵列(Redundant Arrays of Inexpensive/Independent Disks,RAID)出现了,RAID把多块独立的磁 ...
- 1. RAID在数据库存储上的应用
随着单块磁盘在数据安全.性能.容量上呈现出的局限,磁盘阵列(Redundant Arrays of Inexpensive/Independent Disks,RAID)出现了,RAID把多块独立的磁 ...
- RAID在数据库存储上的应用
随着单块磁盘在数据安全.性能.容量上呈现出的局限,磁盘阵列(Redundant Arrays of Inexpensive/Independent Disks,RAID)出现了,RAID把多块独立的磁 ...
- (4.14)存储:RAID在数据库存储上的应用
关键词:(4.14)存储:RAID在数据库存储上的应用 转自:http://blog.51cto.com/qianzhang/1251260 随着单块磁盘在数据安全.性能.容量上呈现出的局限,磁盘阵列 ...
随机推荐
- js获取上一个兄弟元素
需要用到的两个属性:previousSbiling和previousElementSibling previousSibling:获取元素的上一个兄弟节点:(既包含元素节点.文本节点.注释节点) pr ...
- zmq 自动绑定socket
def auto_bind(socket): """ auto bind zmq socket :param socket: socket instance :retur ...
- Java程序读取Properties文件
一.如果将properties文件保存在src目录下 1.读取文件代码如下: /** * 配置文件为settings.properties * YourClassName对应你类的名字 * / pri ...
- 【一个小功能】点击图标/链接发起QQ临时会话
有时候,我们需要实现在网页上点击一个QQ图标来实现QQ临时会话,这样不用添加好友,也能满足及时沟通的需求. 实现方案比较简单,只是为a标签修改href属性,代码如下 <a href=" ...
- 【LeetCode题解】3_无重复字符的最长子串(Longest-Substring-Without-Repeating-Characters)
目录 描述 解法一:暴力枚举法(Time Limit Exceeded) 思路 Java 实现 Python 实现 复杂度分析 解法二:滑动窗口(双指针) 思路 Java 实现 Python 实现 复 ...
- Java设计模式学习记录-抽象工厂模式
前言 上篇博客介绍了简单工厂模式和工厂方法模式,这次介绍抽象工厂模式,抽象工厂模式和工厂方法模式的区别在于需要创建对象的复杂程度上. 抽象工厂模式 抽象工厂模式是围绕着一个超级工厂创建其他工厂.这个超 ...
- ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(4)- 漂亮的登录界面
前言 这一讲,给大家添加登录页面 实现 添加Login的Index视图 @{ Layout = null; } <!DOCTYPE html> <html class="l ...
- .17-浅析webpack源码之compile流程-入口函数run
本节流程如图: 现在正式进入打包流程,起步方法为run: Compiler.prototype.run = (callback) => { const startTime = Date.now( ...
- sql语句将查询的结果拼接成字符串
表样: sqlserver: --方法1 DECLARE @STR VARCHAR(8000) SELECT @STR=ISNULL(@STR+',','')+userID FROM (SELECT ...
- 37.Linux驱动调试-根据oops的栈信息,确定函数调用过程
上章链接入口: http://www.cnblogs.com/lifexy/p/8006748.html 在上章里,我们分析了oops的PC值在哪个函数出错的 本章便通过栈信息来分析函数调用过程 1. ...