2018年中国CDN行业市场规模及前景分析,CDN技术将整体迎来升级

一、CDN行业定义及产业链分析

CDN,全称 Content Delivery Network,即内容分发网络,是指利用分布在不同区域的节点服务器群组成流量分配管理网络平台,为用户提供内容的分散存储和高速缓存。其原理是通过在现有的 Internet 中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,由缓存服务器为用户提供内容服务,解决网络拥挤的状况,提高用户访问网站的响应速度。

从产业链来看,CDN 上游行业主要包括服务器、存储设备、网络传输设备等硬件设备厂商,以及提供 IDC、网络带宽等相关资源的服务商和运营商。CDN 下游行业为互联网内容服务商,主要包括门户网站、短视频网站、网络直播、企业客户等。门户网站、视频网站、直播网站由于数据资源传输量大、时效性高,成为 CDN 的核心下游用户。

CDN行业产业链结构示意图

资料来源:华经产业研究院整理

二、全球及中国CDN市场规模

数据显示,2019年至2021年,全球CDN市场规模将实现35.16%、29.32%、47.49%的增速,较2016至2018年增速有大幅提升,总体市场规模于2021年达到232亿美元。

2011-2018年全球CDN市场规模

资料来源:公开资料整理

工信部定制“超高清视频产业发展行动计划(2018-2022 年)”推动超高清内容建设和行业应用,直接促进 CDN 行业的发展。因此 CDN行业随着流量快速增长仍处于红利期, 2017 年,中国 CDN 市场容量为 136.1 亿元,同比增长 29.1%。2018年 CDN 市场规模 180亿元,同比增长32.3%,2019 年市场规模预计为250亿元,同比增长 38.89%,保持快速增长。

2011-2018年中国CDN市场规模

资料来源:公开资料整理

三、CDN市场竞争格局

目前 CDN 市场的玩家大致可以分为三类,第一类是以网宿科技、蓝汛、帝联科技等为代表的传统 CDN 服务商,其特点是企业自建服务器,为客户提供专业的 CDN 服务,第二类是云 CDN 服务商,包括阿里云、腾讯云、百度云、 金山云以及天翼云、沃云等运营商云平台,其特点是产品比较全面,CDN 通常与云服务进行对接;第三类是星域和云帆加速为代表的创新型 CDN 厂商,其主要特点是通过 P2P 技术和智能硬件结合来扩展节点。

随着越来越多的企业进入到 CDN 市场中,我国 CDN 市场已经逐渐趋于成熟,并呈现出“传统 CDN 服务商,云计算企业 CDN,创新型 CDN”三方竞争的局面。2016年3月,工信部对 CDN业务纳入牌照化管理,行业门槛日渐提高,CDN行业逐步向行业头部公司集中。截至2019年3月 ,拥有全国范围的 CDN 经营资质的企业仅有19家。

CDN行业主要参与者分析

CDN行业主要参与者分析

资料来源:公开资料整理

相关报告:华经产业研究院发布的《2019-2025年中国内容分发网络(CDN)行业竞争格局分析及投资战略报告

四、我国CDN市场发展前景及趋势分析

我国固定宽带及4G下载速率稳步提升,4G发展推动移动互联网流量加速发展。截止2018年末,我国固定宽带平均下载速率已达28.06Mbps、4G网络平均下载速率达22.05Mbps,移动互联网接入流量大幅提升至711亿GB,月户均移动互联网接入流量达4.42GB/月/户。此外,5G技术将进一步提升下载速率,且随着5G商用化进程加速,应用场景将快速膨胀,信息交互和处理需求将大幅提高,5G将有望带来互联网流量的又一轮大发展浪潮,推动CDN服务需求显著提升。

2013-2018年我国移动互联网流量情况分析

资料来源:公开资料整理

未来CDN市场将呈现以下几个趋势:

1、“百花”争鸣,传统CDN厂商独大、独揽CDN市场的情景将不复存在

在互联网+新时期下,除“财大气粗”的互联网巨头BAT们,凭借技术创新开拓市场的创新型专业CDN厂商实力同样不容小觑。典型代表如迅雷星域CDN、七牛CDN等,前者以独创的无限节点等创新技术,后者则凭多IDC架构分布式存储技术,均实现在问世短短几个月时间里,即迅速开拓市场并跻身CDN市场前排位置。未来的CDN市场不再是龙头企业一家独大,大家将各凭本事“吃饭”。

2、CDN技术将整体迎来升级

在高增长机会的同时,CDN也面临着互联网新技术的挑战。事实上,在云计算、P2P等新技术的带动下,CDN的技术架构正在发生变化。

一方面,CDN正与云计算技术紧密拥抱。云服务商如阿里云、腾讯云等将云计算和CDN众多功能整合起来,提供一体化的CDN解决方案;而创新型专业CDN服务商星域CDN则借助迅雷强大的云计算实力、庞大的用户数量,以及自身几十万数量级的智能硬件终端、小米强大的智能家庭布局优势资源,建立起庞大的“云+端”生态圈,极大地拓展了CDN的应用场景;而老将网宿,则正在谋划自建云计算。

另一方面,创新型专业CDN展示出的创新技术为CDN行业带来了巨大的技术升级动力。星域CDN的无限节点、星域调度、弱网加速等创新技术,首次将传输距离拉进至1km,并解决了弱网加速的困境,做到了视频直播最小延迟至2s的纪录,无疑将刺激其它CDN服务商进行技术革新,从而共同推动行业整体技术升级。

3、CDN市场毛利率下滑,价格将下探

以陈磊放言“CDN行业价格将腰斩”开始,BAT等互联网巨头的切入,将CDN市场的价格不断下调,一度掀起轰轰烈烈的价格大战,直至星域CDN以冰点价格入市,才终止了愈演愈烈的价格战。但随着技术升级与市场竞争加剧,行业价格将不断下滑已是不争的事实。

4、CDN服务将推陈出新,服务质量将更高

CDN正在从专为大型互联网公司服务,转变成为各行各业的大、中、小各类企业服务。尽管目前仍无一套完善的CDN服务质量评价标准,但CDN厂商们几乎全在下大力气让服务与时俱进。其中,云服务商阿里云CDN提出了100倍故障赔偿方案,而星域CDN则首次提出100%满意专业定制化服务承诺。

博纳云CEO李爽:IT服务形态与组织形态未来景观的设想与展望

01.  IT服务发展的过去与当下:由大到小,由同到异,由集中到分散

纵观历史生物进化,很多陆地上的大型生物消失,尚存一线生机的大型海洋生物,也逐渐向灭绝迈进,取而代之的则是小型生物得以长久的生存。而无论是生物的进化历史、人类的演进历程,还是IT的发展进程,都是一个由大到小、由趋同到个性、由集中到分散的过程。

回顾IT服务从初始到当下的逐步演进,这一过程与生物的演进过程十分相似:从大型机、小型机、服务器,到现在普及的云计算——未来,更多大规模的小节点将成为历史发展的趋势和主流

IT演进与IT服务形态息息相关:大型机、小型机更多应对的是科学计算与金融体系的建立,而企业IT的成立则造就了甲骨文(Oracle)、微软(Microsoft)、SAP等服务公司,同时也成就了以PC服务器、小型IDC(互联网数据中心,Internet Data Center)为主流的市场。

随着互联网时代的到来,云计算平台随之发展壮大,互联网的应用原生与云计算服务相匹配,云计算与互联网相互成就了彼此的时代。到了今天,互联网应用已经成为主流的IT应用,云平台也成为了主流的IT服务平台,云计算平台与企业IT平台出现了双向融合的效应,市场上不再讨论公有云、私有云、企业IT的区别,也不再讨论哪个阵营更为主流或成为未来,更多的是云计算平台向混合云的方式去发展与部署,而传统IT平台与软件也逐步向云计算平台发展。其中最重大的标志就是坚持公有云为上的AWS在2018年底宣布支持私有云、混合云的部署形态。

新时代的演进不是单向单面的,而是一个全面的、综合性的过程。因此,不同的IT时代在催生IT服务形态演进的同时,IT的组织形态与人才结构也会随之发生巨大变化。

在企业IT时代,公司的组织形态主流为科层级的组织形态,IT的人才结构以运营和运维为主;而如今互联网公司的组织形态主流为职能的组织形态,IT的人才结构以研发为主、运营为辅。

02.   未来IT服务景观展望:万物互联,各方协同,互惠互利

从今天去看未来,下一个时代又会是什么样的呢?

如今,物联网、大数据、人工智能成为行业公认并重点发展和拓展的方向,而当万物互联时代真正到来时,现有的互联网时代的IT服务形态(云计算)、组织形态(职能)或是人才结构(研发)是否能够与这个时代的需求相匹配,则是一个值得思考的问题。

在万物互联的时代,越来越多的智能终端将会被用来服务整体社会,而在人工智能的推动下,终端越来越智能化,能力越来越强,计算需求越来越多,实时性要求越来越高,数据的隐私保护意识会越来越强,而需要重复工作的人员也会越来越少。那什么样的IT服务形态、什么样的数据分享方式、什么样的组织形态与人才结构会更适合呢?

正如之前所提到的,IT的发展过程遵循由大到小、由趋同到个性、由集中到分散的普遍规律。物联网的发展无疑会产生数量庞大但体积更小的终端节点,那么建立一个完全分散化的IT服务平台,从结构上来说会更适合未来的时代。

设想一下,未来的IT服务形态是一个完全分散化的服务平台,所有联网的终端不仅可以从网络去获取资源,而且还可以向网络来贡献资源;IT资源不仅是消耗者,同时也可以成为服务者。将所有的终端联接起来构成一个巨大的服务资源平台,就近服务于各种终端,各取所长、各取所需、各尽其用,整体IT的社会资源得到极大的效率提升

未来的IT服务形态一定是基于完全分散化的资源网络构建而成,同时也是服务于完全分散化的资源需求。而组织形态也会随之改变为网络化与社群化。AI时代的到来使AI人才成为人才金字塔的顶尖人才,研发的工程人员是金字塔的中流砥柱,而普通大众则是金字塔的底层人员。换个角度从供给侧来看,普通大众提供了海量的供给资源,可以从资源的供给获取相应的报酬,同时也从由AI人才与研发人才的产品来获取资源。这样会形成一个新的社会稳态结构。

公司制是随着工业革命的到来的组织形态,公司制有其足够的优点,这也是公司制得以长期存在的原因。而公司制也会带来一定的弊端,这一制度以公司利益最大化为目的在供应链中对供应链上下游实行极度压榨,越强大的公司压榨能力越强。不管公司对外宣扬其生态体系建设多么好,对生态服务做出多少贡献,实质上也只是由传统供应链的双边市场压榨转为生态链的多方市场压榨罢了。

社群制则是人类社会更长期的组织形态,小到一个家庭,大到一个部落、一个国家,是从人类以来一直存在的组织形态。社群制的组织目标与公司制的组织目标则不同,社群制的组织目标更多强调的是社群成员整体利益最大化,所谓取之于民、用之于民。做的好坏暂且不讲,但宗旨是没有变化的。

未来IT服务形态的形成所带来的组织形态的变化,很可能是由公司制到社群制的融合形态。组织目标不再是组织代表的利益最大化,而是组织成员的利益最大化,而组织不再是一个封闭的体系,而是一个高度开放的体系。

任何人只要对组织目标有共识,就可以加入组织,贡献资源、索取资源,而IT服务是一个极度量化的服务体系,贡献与索取的量化很容易实现

也许,社会主义形态最先到达的领域是IT服务领域。


李爽,博纳云(BonusCloud)创始人兼CEO,云计算行业领军人,拥有10余年经验的资深云计算领域专家。曾任美团云总经理、阿里巴巴集团网络总监、百度系统技术委员会主席,历经云计算行业从无到有。李爽构建的博纳云旨在积极探索以区块链技术为核心的分布式云计算平台,目的是打造下一代的IT基础设施。

*本文由作者授权发布,如需转载本文,请标明出处,侵权者必究。


关于博纳云

博纳云是顺应万物互联时代的分布式云计算服务商,通过构造一个全球化的算力交易平台,能够将全球包括现有云计算、企业数据中心以及个人PC及终端设备的CPU/GPU/带宽等资源有效连接起来,集平台上千千万万个资源贡献者、平台使用者、应用开发者之力,提供超低价格、超大范围、超强算力的可信任的云计算平台服务,彻底改变传统的中心化云计算商业模式及资源分布结构。

官方网站:https://bonuscloud.io

官方论坛:https://bonuscloud.club

Facebook:www.facebook.com/BonusCloud.io

Twitter:https://twitter.com/bonus_cloud

电报群(英语):https://t.me/Bonuscloud

电报群(中文):https://t.me/bonuscloudcn

电报群(俄语):https://t.me/bonuscloudruch

QQ官方公告群(用于接收公告):540293288

官方1群(用于讨论):740788277

如入官方微信群,可加微信:bonuscloud917,备注“入群”

PHP7原生MySQL数据库操作

连接到 MySQL服务器

mysqli_connect(host, username, password [,dbname] [,port]);
– 参数:
host:MySQL服务器。可以包含端口号,默认值为“localhost:3306”
username:用户名。默认值是服务器进程所有者的用户名;
password:密码。
dbname:数据库名称。
port:MySQL服务器的端口号,默认为3306。
– 返回值:如果连接成功,则返回 mysqli 连接对象。如果失败,则返回 false。
选择当前数据库

mysqli_select_db(mysqliLink, database)
– 描述:一个数据库服务器可能包含很多的数据库,通常需要针对某个具体的数据库进行编程
– 返回值:如果成功返回TRUE,失败则返回FALSE
设置客户端字符集

mysqli_set_charset(mysqliLink, charset)
– 描述:设置默认字符编码
– 返回:成功时返回 TRUE, 或者在失败时返回 FALSE。
发送一条 MySQL 查询

mysqli_query(mysqliLink , queryStr)
– 参数:
query是查询字符串;
link是创建的活动的数据库连接;
– 说明:mysqli_query() 仅对 SELECT,SHOW 或 DESCRIBE 语句返回一个mysqli_result结果集对象,如果查询执行不正确则返回 FALSE。对于其它类型的 SQL 语句,mysqli_query()在执行成功时返回 TRUE,出错时返回 FALSE。非 FALSE 的返回值意味着查询是合法的并能够被服务器执行。
– 注意:查询字符串不应以分号结束,和命令行模式下有区别。
从结果集中取得一行作为关联数组,或数字数组,或二者兼有

mysqli_fetch_array ( mysqliResult [, resultType] )
– 参数:resultType是一个常量,取值:MYSQLI_BOTH(两者兼有,默认)、MYSQLI_ASSOC(关联索引)、MYSQLI_NUM(数字索引)
– 返回:返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
– 注意:本函数返回的字段名区分大小写。
从结果集中取得所有行作为关联数组、枚举数组、或二者兼有

mysqli_fetch_all(mysqliResult [, resultType ])
– 参数:$result_type是一个常量,取值:MYSQLI_BOTH(两者兼有,默认)、MYSQLI_ASSOC(关联索引)、MYSQLI_NUM(数字索引)
– 返回:返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
– 注意:本函数返回的字段名区分大小写。
取得结果集中行的数目

mysqli_num_rows(mysqliResult)
– 注意:此命令仅对 SELECT 语句有效。
从结果集中取得一行作为关联数组

array mysqli_fetch_assoc(mysqliResult)
– 返回值:从结果集取得的行生成的关联数组,如果没有更多行则返回 FALSE;
– 注意:此函数返回的字段名大小写敏感。
取得前一次 MySQL 操作所影响的记录行数

mysqli_affected_rows ( mysqliLink )
– 说明:取得最近一次与 $link 关联的 SELECT、INSERT、UPDATE 或 DELETE 查询所影响的记录行数。
– 注意:如果最近一次查询失败,函数返回-1。当使用UPDATE查询,MySQL不会将原值和新值一样的值更新,返回值不一定就是查询条件所符合的记录,只有修改过的记录数才会被返回。
释放与结果集相关联的内存

mysqli_free_result(mysqliResult)
– 参数:mysqliResult为结果集对象。
返回上一个 MySQL 连接产生的文本错误信息

mysqli_connect_error()
– 参数:没有参数
———————
作者:Maybion
来源:CSDN
原文:https://blog.csdn.net/github_27314097/article/details/82421018
版权声明:本文为博主原创文章,转载请附上博文链接!

PHP7连接数据库的方法

mysqli面向对象风格
<?php
$serve = ‘localhost:3306’;
$username = ‘root’;
$password = ‘admin123’;
$dbname = ‘examples’;
$mysqli = new Mysqli($serve,$username,$password,$dbname);
if($mysqli->connect_error){
die(‘connect error:’.$mysqli->connect_errno);
}
$mysqli->set_charset(‘UTF-8’); // 设置数据库字符集

$result = $mysqli->query(‘select * from customers’);
$data = $result->fetch_all(); // 从结果集中获取所有数据
print_r($data);
?>

mysqli面向过程风格

<?php
$serve = ‘localhost:3306’;
$username = ‘root’;
$password = ‘admin123’;
$dbname = ‘examples’;
$link = mysqli_connect($serve,$username,$password,$dbname);
mysqli_set_charset($link,’UTF-8′); // 设置数据库字符集
$result = mysqli_query($link,’select * from customers’);
$data = mysqli_fetch_all($result); // 从结果集中获取所有数据
print_r($data);

?>

PDO连接数据库
<?php
$serve = ‘mysql:host=localhost:3306;dbname=examples;charset=utf8’;
$username = ‘root’;
$password = ‘admin123’;

try{ // PDO连接数据库若错误则会抛出一个PDOException异常
$PDO = new PDO($serve,$username,$password);
$result = $PDO->query(‘select * from customers’);
$data = $result->fetchAll(PDO::FETCH_ASSOC); // PDO::FETCH_ASSOC表示将对应结果集中的每一行作为一个由列名索引的数组返回
print_r($data);
} catch (PDOException $error){
echo ‘connect failed:’.$error->getMessage();
}
?>

使用PDO或mysqli都可以连接mysql,但更推荐使用PDO连接数据库,因为PDO支持12种不同的数据库驱动程序,mysqli只支持mysql,而且PDO性能更高

张小龙,微信之父,一个孤独者的奇迹

来自:创业邦(微信号:ichuangyebang),作者:牛皮明明
来源:听明明吹牛皮(niupimingming)

1998年,中国互联网江湖还是一片惨淡。

那一年,李彦宏还没有回国,刘强东还在中关村卖光盘。马化腾辞了职,在深圳借朋友的一间舞蹈室创业,电脑上方还吊着浮夸的迪斯科大灯。

34岁的马云还在北京跑业务,又矮又瘦的他骑着自行车,挨家挨户推销自己的黄页,大部分人,连门都不给他开。两次创业失败,马云要离开北京,临走前那晚下了雪,他带着团队在小酒馆痛哭,唱起了《真心英雄》:

“在我心中,曾经有一个梦……”

那是互联网大佬们,集体吃糠咽菜的一年,酒杯碰在一起,都是梦破碎的声音。这一年,混得最好的是雷军,已经是金山软件的董事长。

雷军和张小龙两人同龄,都是1969年12月出生,都在武汉读大学。雷军投机倒把的时候,张小龙还是纯屌丝一枚,单枪匹马开发了一款叫Foxmail的软件,穷得连饭都吃不起。

雷军看中了Foxmail这款软件,想以15万元的价格收购。

揭不开锅的张小龙,咬牙答应:既然自己养不活自己的孩子,就让富人去养吧!

雷军派研发人员去和张小龙洽谈。这研发人员觉得不值,讽刺张小龙说:这样的软件,我一两个月就能做出来。

张小龙呵呵了几声,走了。结果,这次收购就泡了汤。

两年后,博大互联网公司成功收购Foxmail,价格是1200万,比雷军出价翻了整80倍。

2000年4月18日这天,雷军冲着下属大吼:一群傻逼!

而卖掉了“孩子”的张小龙,买了辆车,去了西藏,消失了5年。等他再现江湖时,每个人的手机里,都多了一个叫“微信”的APP。

1

如果你用了微信,还不知道张小龙,那等于天天吹牛皮,但还不知道明明是谁。

张小龙是原生态的农民家孩子,从小就很闷。过年,长辈去他家拜年,他出来打声招呼,就回自己卧室看书。他去别人家,也是打声招呼,然后去别人家的卧室看书。

所有亲戚评价张小龙,措辞惊人一致,就六个字:爱看书,学习好。

1987年,18岁的张小龙考入华中理工大学电信系,后更名为华中科技大学。这个学校在中部地区的影响力,与武汉大学并驾齐驱!

在大学,张小龙住在东六舍2楼最东头的一间宿舍里,白天踩着拖鞋出门,晚上和室友守着酒精炉,边煮泡面边打「双升」。除了闷头读书学习外,喜欢下围棋、打桌球。

下围棋,他坐一下午,一句话也不说。出去打台球,一晚上,都是他闷着头把球一盘盘打光,时间久了大家都不跟他玩。

在老师眼里,张小龙给人最大的两个印象:一是闷,二是喜欢睡懒觉。

没课的时候,他能闷头睡到中午十二点。

读硕士期间,C语言刚刚诞生,张小龙最早接触到。每天一起床,他蹬着自行车,就往喻家山上的实验室去,在一台386电脑前一坐就到夜里12点。

同时期,雷军在离华科很近的武汉大学读书,已经通过卖软件,赚到人生第一桶金,开了一家叫“三色”的公司,在武昌广埠屯一带已小有名气。

张小龙和雷军同出武汉,当时并无任何交集。

后来,在很多人眼里,张小龙相比雷军,身上没有半毛钱商人的气质。而雷军八面玲珑,生意会越做越好,而闷头闷脑的张小龙,这辈子最多也就跑到雷军手底下当个程序猿,解决温饱,了此残生。

张小龙(图中)青年

2

1994年那个夏天,三声蝉鸣过后,24岁的张小龙毕业了,分配到了电信机关单位。他站在政府机关大楼下,抬头一看,巨大的钢筋混泥土建筑,像个笼子,一种窒息从头顶压下来。

一共没上几天班,张小龙索性辞职,买了张火车硬座票,一个人跑到了广州搞软件开发,梦想开发一个属于自己的软件。为了搞事情,张小龙到处游说朋友,被一顿狂喷:

有时间去干点啥不好?非要整这个,赚不了钱啊大哥!

张小龙被怼得脸红脖子粗,闷了半天,憋出一句:

一群没有志向的家伙!

谁也不鸟张小龙,他只好单干。每天下班后,张小龙把自己反锁在屋里,一边抽烟,一边噼里啪啦敲键盘,一干就是一个通宵,花了几个月时间写了一万多条代码。

1997年1月,张小龙的免费邮件Foxmail诞生,吸引了200万用户,反响还不错,就是一毛钱也没赚到。

那是1998年,张小龙和正在吃糠咽菜的马化腾、马云、李彦宏一样,前一秒想着是改变世界,后一秒想的是下一顿饭钱在哪。

那一年,周鸿祎算是迷你型土豪,官任方正软件研发中心的一名副主任。

理着平头的周鸿祎第一次拜访张小龙,是在一个阳光暴晒的午后,广州满大街飘着凉茶和甘蔗汁的味道。周鸿祎在巷子里七拐八拐,最后到一个小黑屋里见到张小龙,屋里全是港台电影影碟。

这时候的张小龙,已经在广州生活了五年,不会讲粤语,不会砍价,一直被当“水鱼”宰。业余时间喜欢淘碟,经常忘记买过什么,下一次再买碟,发现买的还和上次一样。

周鸿祎好心建议张小龙:Foxmail是没有商业模式的,你必须加广告,要盈利。

张小龙说:为什么非要这样?只要有用户,有情怀就好了。

那是王菲和那英第一次同台的1998年,情怀还是个好东西。但周鸿祎觉得张小龙只有情怀,没有商业头脑,烂泥扶不上墙,很傻逼,慢慢就不愿搭理他。

屌丝的张小龙,有一天出门去吃肠粉,吃完一摸兜,只剩3块钱。

穷成这样,慈悲为怀的《人民日报》都看不下去,记者跑来报道张小龙,忍不住感慨了一句:

可怜的孩子,你可千万别饿死。

那感觉,就像星爷《大话西游》里说:你看,那个人好像一条狗耶!

2000年,迫于生存,张小龙像卖孩子一样卖掉Foxmail,他很失落,黯然伤神,买了辆车,一个人去了西藏,消失了5年。

张小龙(左三)工作时

3

故事,得从5年后说起。

2005年,马化腾收购了Foxmail,张小龙被阴差阳错的“陪嫁”给了腾讯。马化腾看中张小龙的潜力,让他负责收拾QQ邮箱的烂摊子。

三年后,张小龙把QQ邮箱起死回生,做成腾讯公司七星级产品。

接下来的两年,张小龙基本处于半退休状态。

直到2010年10月,免费发短信的手机应用Kik上线,短短半个月就拥有了100万用户。

看到这款软件后,张小龙意识到,新的时代已经到来,连夜给马化腾写了封邮件:将来打败QQ的,一定是移动社交软件,我们应该赶快开发。

马化腾还没睡,就回了四个字:马上就做。

次年,也就是互联网最沸腾的2011年,刚过40的周鸿祎,带领奇虎360在美国纽交所上市,身价达到5.8亿美元。志得意满的他,穿着定制西装,走路带风,都快忘了,互联网还有张小龙这号人物。

这一年,互联网江湖风起云涌。第一批掘金者都人到中年,该垮的都垮了,该成的都成了。

李彦宏身家623亿,成了中国大陆首富。马化腾身家340亿,上了《财富》杂志,成了商界领袖,人称小马哥。骨骼清奇的马云只用了一个双十一,全网就卖了52亿。还没遇到奶茶妹妹的刘强东,京东也完成了C轮融资,总计15亿。

剩下的若干人等,张朝阳在搜狐大楼里,风轻云淡也是几个亿的生意。Are  you  ok的雷军也坐上了金山软件的头把交椅。还有笑起来有个小酒窝的丁磊,嫌网易CEO当得不过瘾,索性圈地1200亩,开始养猪。

每一个看上去牛逼闪闪的大佬,都有一段惨淡经营的屌丝青春。

大佬聚在一起,所到之处,推杯换盏,高朋满座,但就是好像没张小龙什么事,连朱自清都看不下去了,在《荷塘月色》里说:热闹是他们的,我什么也没有。

这一年,张小龙参加了一场大学同学聚会,33人的班里,有好几个人叫不出他名字,甚至还有一个女同学根本不认识他。

是啊,张小龙这种“闷油瓶”,一直都是社交的失败者。

谁也没想到,身为社交失败者的张小龙,开发了一款社交APP微信,默默地上线了。

张小龙自己都嘲笑自己:世间大多数的创造,都源自对自己长相绝望的人。我一个社交失败者,居然搞起了社交软件。

如果说人生分上下两场,那张小龙42岁之前,都是上半场。直到微信上线,他人生的下半场,才正式开始!

开发微信之前,张小龙对自己的团队说:微信不只是一个聊天工具,更是一种生活方式。

一说完,整个团队的成员都笑了,根本没人信他的话。

张小龙带着团队,在广州南方通信大厦10楼写代码。一帮人睡行军床、吸二手烟,困了就做俯卧撑提神。

佛系中年张小龙,凌晨四点下班,带着团队去吃宵夜。每次吃宵夜,他都点一样的菜,说这样比较省时间,反正是宵夜而已。

但有一样,张小龙特别较真。他面试产品经理,所有技能合格后,他要问:你喜欢摇滚吗?

回答不喜欢的,就算了。

微信团队遭遇瓶颈的时候,张小龙就带着大家一起听摇滚乐。

好像脑细胞在震颤,灵魂在狂舞。听嗨了,大家灵感就来了。

张小龙相信,社交产品都是孤独者发明的,是感性、敏感的人做出来的。

4

微信上线两天后,凌晨两点,张小龙在饭否博客,敲下了一句话:

这么多年了,我还在做通讯工具,这让我相信一个宿命,每一个不善沟通的孩子都有强大的帮助别人沟通的内在力量。

微信上线前三个月,每天用户只增长几千人,而雷军的同类产品米聊,却势头迅猛。

失望在团队里蔓延,张小龙独自一人,在香烟和摇滚乐里,度过那些失眠的夜晚。直到想起大学读的弗洛伊德,想起他的一句话:人的所有动机都来自于性冲动。

很快,张小龙在微信推出了「附近的人」和「摇一摇」功能。他跟团队说:互联网的最终目的,是让关系学见鬼去。

「附近的人」一上线,用户迎来爆发性增长。

「摇一摇」一上线,每天启动量超过1亿次。

「摇一摇」的背景声音,来福枪子弹上膛的声音。是张小龙玩CS时,得到的灵感。因为这种声音,会让用户感觉很爽。

这两种功能,把无数陌生人连接在一起,打破了以往社交网固话的格局,开启了一个新的社交时代。

到2011年11月时,微信日增用户达到20万,马化腾在深圳威尼斯酒店,和财经作家吴晓波,用最新功能「摇一摇」互加好友。整个过程,只需要三秒,社交从未如此简单。

晚宴上,40岁的马化腾,靠在43岁的吴晓波耳边,轻声地说:和微博的战争终于结束了。

说完后,马化腾神秘一笑,吴晓波从他的镜片下的眼睛里,看到了天下大势已定。

「摇一摇」功能推出后,马化腾给张小龙发了一个邮件:摇一摇真的很好,但要防止竞争对手抄袭。

张小龙回复说:我们这个功能已经做到最简化,极简是无法被超越的。

这就好比“我爱你”三个字,已经将表白浓缩到了极致,少一个字不行,多任何一个字都嫌啰嗦。

在用户达到一亿后,微信推出了「朋友圈」,接着又推出了个人和企业的「公众号」。于是诞生了数以百万的新媒体从业者。

到2018年,微信用户超过10亿,不再只是一个工具,而真成了中国人的一种生活方式。一个可以满足社交、情感、自我实现等所有需求的地方。

而那边,雷军的米聊呢,已经被张小龙甩得连车尾灯都看不到。

发际线越来越靠后的周鸿祎,怎么也没想到,20年前,那个阳光暴晒的下午,在广州小黑屋里见到的张小龙,晃晃悠悠竟然也到了罗马。他心服口服地说:

想不到,像张小龙这样单纯的人,也能成功。

张小龙(左三)与自己的团队

5

如今,微信像空气一般,无处不在,估值高达8000亿人民币,覆盖中国 96% 以上的智能手机。中国14亿人口,有10亿都在用微信,这种覆盖率,再没有任何一款软件可以做到。

微信之父张小龙的身价,水涨船高,每年以百亿计算。

张小龙彻底火了,热闹是他们的,也是张小龙的。有一次,在采访中,他说自己喜欢吃臭豆腐。

后来,只要去看张小龙的人,都会给他带一罐臭豆腐,把张小龙都吃吐了。剩下的臭豆腐,他只好挂在网店上卖,都卖到了金钻。

有一次,张小龙在电梯里,有个女记者朋友碰到他,想加他的微信。张小龙说了句:好啊。

说着,张小龙掏出自己的手机。女记者一看,那是一款3000块的三星手机,屏幕都碎了,像是蒙着一层蜘蛛网。

生活里,张小龙像是一个深山里的人,谁也不知道他住哪儿,平常在干啥。腾讯内部的人,偶尔听到他的消息,也是零零碎碎的,像公司某次网球赛他得了冠军这样的消息。

张小龙抽烟永远只抽KENT,穿衣服还是一身套头衫加牛仔裤。同款的衣服一买几十件,颜色都不变。

他从不出去应酬,有一次,某个省长去腾讯调研,说很欣赏张小龙,想见见他,张小龙也不去。马化腾没办法,替他挡了。

张小龙几乎从不露脸,不参与任何会议,他说:参加会议是挺浪费时间的。我不反对开会,只要我不在场就好。

马化腾问他:你为啥不参加例会?

张小龙说:我起不来。

马化腾说:以后让我的秘书叫你起来。

张小龙又说:路上太堵,怕赶不上。

马化腾只好每星期派车来接张小龙。

商业活动,张小龙也是一律回绝,他客气地说:我不想成为所谓的名人,也不希望成为大家口里的谈资。

在复杂的时代,只有张小龙是活得专注、朴素。还像20年前一样,大音希声,一切极简主义。只做自己想做的事,见自己想见的人,至于其他,都不在意。

6

微信的「跳一跳」小游戏开发出来后,张小龙为了测试,经常通宵打这个游戏。最高打出6800多分,人送「立地成佛」称号。

能把这款游戏打到高分的人,都需要投入进去,心无杂念,气息匀称,如老僧入定。

张小龙开心和难过时,嘴角上下波动角度不超过10度,旁人根本无法识别他的情绪变化。

张小龙说:有时候打游戏,才是正经事。生活里有那么多的工作要处理,其实我们不属于自己,反而是进入到一款小游戏,我们放空自己,最像自己。

我们这个喧嚣沸腾的时代还是很有趣的,出门不带一分现金,便可以穿州过府,漫游中国,年迈的父母也可以赶上最后一趟互联网列车老去。对于我们呢,向上和向下的通道永远都是打开的。

吃下一颗刚拆封的糖吧,时代果然变了!

从1998年到2018年,20年过去了。有时候真不知道,究竟是时代改变了我们,还是我们改变了时代。

但毫无疑问,我们都在参与中国,经历中国,难道不是吗?

图文并茂 RAID 技术全解 – RAID0、RAID1、RAID5、RAID100……

RAID 技术相信大家都有接触过,尤其是服务器运维人员,RAID 概念很多,有时候会概念混淆。这篇文章为网络转载,写得相当不错,它对 RAID 技术的概念特征、基本原理、关键技术、各种等级和发展现状进行了全面的阐述,并为用户如何进行应用选择提供了基本原则,对于初学者应该有很大的帮助。

一、RAID 概述

1988 年美国加州大学伯克利分校的 D. A. Patterson 教授等首次在论文 “A Case of Redundant Array of Inexpensive Disks” 中提出了 RAID 概念 [1] ,即廉价冗余磁盘阵列( Redundant Array of Inexpensive Disks )。由于当时大容量磁盘比较昂贵, RAID 的基本思想是将多个容量较小、相对廉价的磁盘进行有机组合,从而以较低的成本获得与昂贵大容量磁盘相当的容量、性能、可靠性。随着磁盘成本和价格的不断降低, RAID 可以使用大部分的磁盘, “廉价” 已经毫无意义。因此, RAID 咨询委员会( RAID Advisory Board, RAB )决定用 “ 独立 ” 替代 “ 廉价 ” ,于时 RAID 变成了独立磁盘冗余阵列( Redundant Array of Independent Disks )。但这仅仅是名称的变化,实质内容没有改变。

RAID 这种设计思想很快被业界接纳, RAID 技术作为高性能、高可靠的存储技术,已经得到了非常广泛的应用。 RAID 主要利用数据条带、镜像和数据校验技术来获取高性能、可靠性、容错能力和扩展性,根据运用或组合运用这三种技术的策略和架构,可以把 RAID 分为不同的等级,以满足不同数据应用的需求。 D. A. Patterson 等的论文中定义了 RAID1 ~ RAID5 原始 RAID 等级, 1988 年以来又扩展了 RAID0 和 RAID6 。近年来,存储厂商不断推出诸如 RAID7 、 RAID10/01 、 RAID50 、 RAID53 、 RAID100 等 RAID 等级,但这些并无统一的标准。目前业界公认的标准是 RAID0 ~ RAID5 ,除 RAID2 外的四个等级被定为工业标准,而在实际应用领域中使用最多的 RAID 等级是 RAID0 、 RAID1 、 RAID3 、 RAID5 、 RAID6 和 RAID10。

从实现角度看, RAID 主要分为软 RAID、硬 RAID 以及软硬混合 RAID 三种。软 RAID 所有功能均有操作系统和 CPU 来完成,没有独立的 RAID 控制 / 处理芯片和 I/O 处理芯片,效率自然最低。硬 RAID 配备了专门的 RAID 控制 / 处理芯片和 I/O 处理芯片以及阵列缓冲,不占用 CPU 资源,但成本很高。软硬混合 RAID 具备 RAID 控制 / 处理芯片,但缺乏 I/O 处理芯片,需要 CPU 和驱动程序来完成,性能和成本 在软 RAID 和硬 RAID 之间。

RAID 每一个等级代表一种实现方法和技术,等级之间并无高低之分。在实际应用中,应当根据用户的数据应用特点,综合考虑可用性、性能和成本来选择合适的 RAID 等级,以及具体的实现方式。

二、基本原理

RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余的技术。 RAID 是一类多磁盘管理技术,其向主机环境提供了成本适中、数据可靠性高的高性能存储。 SNIA 对 RAID 的定义是 [2] :一种磁盘阵列,部分物理存储空间用来记录保存在剩余空间上的用户数据的冗余信息。当其中某一个磁盘或访问路径发生故障时,冗余信息可用来重建用户数据。磁盘条带化虽然与 RAID 定义不符,通常还是称为 RAID (即 RAID0 )。

RAID 的初衷是为大型服务器提供高端的存储功能和冗余的数据安全。在整个系统中, RAID 被看作是由两个或更多磁盘组成的存储空间,通过并发地在多个磁盘上读写数据来提高存储系统的 I/O 性能。大多数 RAID 等级具有完备的数据校验、纠正措施,从而提高系统的容错性,甚至镜像方式,大大增强系统的可靠性, Redundant 也由此而来。

这里要提一下 JBOD ( Just a Bunch of Disks )。最初 JBOD 用来表示一个没有控制软件提供协调控制的磁盘集合,这是 RAID 区别与 JBOD 的主要因素。目前 JBOD 常指磁盘柜,而不论其是否提供 RAID 功能。

RAID 的两个关键目标是提高数据可靠性和 I/O 性能。磁盘阵列中,数据分散在多个磁盘中,然而对于计算机系统来说,就像一个单独的磁盘。通过把相同数据同时写入到多块磁盘(典型地如镜像),或者将计算的校验数据写入阵列中来获得冗余能力,当单块磁盘出现故障时可以保证不会导致数据丢失。有些 RAID 等级允许更多地 磁盘同时发生故障,比如 RAID6 ,可以是两块磁盘同时损坏。在这样的冗余机制下,可以用新磁盘替换故障磁盘, RAID 会自动根据剩余磁盘中的数据和校验数据重建丢失的数据,保证数据一致性和完整性。数据分散保存在 RAID 中的多个不同磁盘上,并发数据读写要大大优于单个磁盘,因此可以获得更高的聚合 I/O 带宽。当然,磁盘阵列会减少全体磁盘的总可用存储空间,牺牲空间换取更高的可靠性和性能。比如, RAID1 存储空间利用率仅有 50% , RAID5 会损失其中一个磁盘的存储容量,空间利用率为 (n-1)/n 。

磁盘阵列可以在部分磁盘(单块或多块,根据实现而论)损坏的情况下,仍能保证系统不中断地连续运行。在重建故障磁盘数据至新磁盘的过程中,系统可以继续正常运行,但是性能方面会有一定程度上的降低。一些磁盘阵列在添加或删除磁盘时必须停机,而有些则支持热交换 ( Hot Swapping ),允许不停机下替换磁盘驱动器。这种高端磁盘阵列主要用于要求高可能性的应用系统,系统不能停机或尽可能少的停机时间。一般来说, RAID 不可作为数据备份的替代方案,它对非磁盘故障等造成的数据丢失无能为力,比如病毒、人为破坏、意外删除等情形。此时的数据丢失是相对操作系统、文件系统、卷管理器或者应用系统来说的,对于 RAID 系统来身,数据都是完好的,没有发生丢失。所以,数据备份、灾 备等数据保护措施是非常必要的,与 RAID 相辅相成,保护数据在不同层次的安全性,防止发生数据丢失。

RAID 中主要有三个关键概念和技术:镜像( Mirroring )、数据条带( Data Stripping )和数据校验( Data parity ) [3][4][5] 。镜像,将数据复制到多个磁盘,一方面可以提高可靠性,另一方面可并发从两个或多个副本读取数据来提高读性能。显而易见,镜像的写性能要稍低, 确保数据正确地写到多个磁盘需要更多的时间消耗。数据条带,将数据分片保存在多个不同的磁盘,多个数据分片共同组成一个完整数据副本,这与镜像的多个副本是不同的,它通常用于性能考虑。数据条带具有更高的并发粒度,当访问数据时,可以同时对位于不同磁盘上数据进行读写操作, 从而获得非常可观的 I/O 性能提升 。数据校验,利用冗余数据进行数据错误检测和修复,冗余数据通常采用海明码、异或操作等算法来计算获得。利用校验功能,可以很大程度上提高磁盘阵列的可靠性、鲁棒性和容错能力。不过,数据校验需要从多处读取数据并进行计算和对比,会影响系统性能。 不同等级的 RAID 采用一个或多个以上的三种技术,来获得不同的数据可靠性、可用性和 I/O 性能。至于设计何种 RAID (甚至新的等级或类型)或采用何种模式的 RAID ,需要在深入理解系统需求的前提下进行合理选择,综合评估可靠性、性能和成本来进行折中的选择。

RAID 思想从提出后就广泛被业界所接纳,存储工业界投入了大量的时间和财力来研究和开发相关产品。而且,随着处理器、内存、计算机接口等技术的不断发展, RAID 不断地发展和革新,在计算机存储领域得到了广泛的应用,从高端系统逐渐延伸到普通的中低端系统。 RAID 技术如此流行,源于其具有显著的特征和优势,基本可以满足大部分的数据存储需求。总体说来, RAID 主要优势有如下几点:

(1) 大容量

这是 RAID 的一个显然优势,它扩大了磁盘的容量,由多个磁盘组成的 RAID 系统具有海量的存储空间。现在单个磁盘的容量就可以到 1TB 以上,这样 RAID 的存储容量就可以达到 PB 级,大多数的存储需求都可以满足。一般来说, RAID 可用容量要小于所有成员磁盘的总容量。不同等级的 RAID 算法需要一定的冗余开销,具体容量开销与采用算法相关。如果已知 RAID 算法和容量,可以计算出 RAID 的可用容量。通常, RAID 容量利用率在 50% ~ 90% 之间。

(2) 高性能

RAID 的高性能受益于数据条带化技术。单个磁盘的 I/O 性能受到接口、带宽等计算机技术的限制,性能往往很有 限,容易成为系统性能的瓶颈。通过数据条带化, RAID 将数据 I/O 分散到各个成员磁盘上,从而获得比单个磁盘成倍增长的聚合 I/O 性能。

(3) 可靠性

可用性和可靠性是 RAID 的另一个重要特征。从理论上讲,由多个磁盘组成的 RAID 系统在可靠性方面应该比单个磁盘要差。这里有个隐含假定:单个磁盘故障将导致整个 RAID 不可用。 RAID 采用镜像和数据校验等数据冗余技术,打破了这个假定。 镜像是最为原始的冗余技术,把某组磁盘驱动器上的数据完全复制到另一组磁盘驱动器上,保证总有数据副本可用。 比起镜像 50% 的冗余开销 ,数据校验要小很多,它利用校验冗余信息对数据进行校验和纠错。 RAID 冗余技术大幅提升数据可用性和可靠性,保证了若干磁盘出错时,不 会导致数据的丢失,不影响系统的连续运行。

(4) 可管理性

实际上, RAID 是一种虚拟化技术,它对多个物理磁盘驱动器虚拟成一个大容量的逻辑驱动器。对于外部主机系统来说, RAID 是一个单一的、快速可靠的大容量磁盘驱动器。这样,用户就可以在这个虚拟驱动器上来组织和存储应用系统数据。 从用户应用角度看,可使存储系统简单易用,管理也很便利。 由于 RAID 内部完成了大量的存储管理工作,管理员只需要管理单个虚拟驱动器,可以节省大量的管理工作。 RAID 可以动态增减磁盘驱动器,可自动进行数据校验和数据重建,这些都可以 大大简化管理工作。

三、关键技术

3.1 镜像

镜像是一种冗余技术,为磁盘提供保护功能,防止磁盘发生故障而造成数据丢失。对于 RAID 而言,采用镜像技术 典型地 将会同时在阵列中产生两个完全相同的数据副本,分布在两个不同的磁盘驱动器组上。镜像提供了完全的数据冗余能力,当一个数据副本失效不可用时,外部系统仍可正常访问另一副本,不会对应用系统运行和性能产生影响。而且,镜像不需要额外的计算和校验,故障修复非常快,直接复制即可。镜像技术可以从多个副本进行并发读取数据,提供更高的读 I/O 性能,但不能并行写数据,写多个副本会会导致一定的 I/O 性能降低。

镜像技术提供了非常高的数据安全性,其代价也是非常昂贵的,需要至少双倍的存储空间。高成本限制了镜像的广泛应用,主要应用于至关重要的数据保护,这种场合下数据丢失会造成巨大的损失。另外,镜像通过“ 拆分 ”能获得特定时间点的上数据快照,从而可以实现一种备份窗口几乎为零的数据备份技术。

3.2 数据条带

磁盘存储的性能瓶颈在于磁头寻道定位,它是一种慢速机械运动,无法与高速的 CPU 匹配。再者,单个磁盘驱动器性能存在物理极限, I/O 性能非常有限。 RAID 由多块磁盘组成,数据条带技术将数据以块的方式分布存储在多个磁盘中,从而可以对数据进行并发处理。这样写入和读取数据就可以在多个磁盘上同时进行,并发产生非常高的聚合 I/O ,有效提高了整体 I/O 性能,而且具有良好的线性扩展性。这对大容量数据尤其显著,如果不分块,数据只能按顺序存储在磁盘阵列的磁盘上,需要时再按顺序读取。而通过条带技术,可获得数倍与顺序访问的性能提升。

数据条带技术的分块大小选择非常关键。条带粒度可以是一个字节至几 KB 大小,分块越小,并行处理能力就越强,数据存取速度就越高,但同时就会增加块存取的随机性和块寻址时间。实际应用中,要根据数据特征和需求来选择合适的分块大小,在数据存取随机性和并发处理能力之间进行平衡,以争取尽可能高的整体性能。
数据条带是基于提高 I/O 性能而提出的,也就是说它只关注性能, 而对数据可靠性、可用性没有任何改善。实际上,其中任何一个数据条带损坏都会导致整个数据不可用,采用数据条带技术反而增加了数据发生丢失的概念率。

3.3 数据校验

镜像具有高安全性、高读性能,但冗余开销太昂贵。数据条带通过并发性来大幅提高性能,然而对数据安全性、可靠性未作考虑。数据校验是一种冗余技术,它用校验数据来提供数据的安全,可以检测数据错误,并在能力允许的前提下进行数据重构。相对镜像,数据校验大幅缩减了冗余开销,用较小的代价换取了极佳的数据完整性和可靠性。数据条带技术提供高性能,数据校验提供数据安全性, RAID 不同等级往往同时结合使用这两种技术。

采用数据校验时, RAID 要在写入数据同时进行校验计算,并将得到的校验数据存储在 RAID 成员磁盘中。校验数据可以集中保存在某个磁盘或分散存储在多个不同磁盘中,甚至校验数据也可以分块,不同 RAID 等级实现各不相同。当其中一部分数据出错时,就可以对剩余数据和校验数据进行反校验计算重建丢失的数据。校验技术相对于镜像技术的优势在于节省大量开销,但由于每次数据读写都要进行大量的校验运算,对计算机的运算速度要求很高,必须使用硬件 RAID 控制器。在数据重建恢复方面,检验技术比镜像技术复杂得多且慢得多。

海明校验码和 异或校验是两种最为常用的 数据校验算法。海明校验码是由理查德.海明提出的,不仅能检测错误,还能给出错误位置并自动纠正。海明校验的基本思想是:将有效信息按照某种规律分成若干组,对每一个组作奇偶测试并安排一个校验位,从而能提供多位检错信息,以定位错误点并纠正。可见海明校验实质上是一种多重奇偶校验。异或校验通过异或逻辑运算产生,将一个有效信息与一个给定的初始值进行异或运算,会得到校验信息。如果有效信息出现错误,通过校验信息与初始值的异或运算能还原正确的有效信息。

四、RAID 等级

4.1 JBOD

JBOD ( Just a Bunch Of Disks )不是标准的 RAID 等级,它通常用来表示一个没有控制软件提供协调控制的磁盘集合。 JBOD 将多个物理磁盘串联起来,提供一个巨大的逻辑磁盘。 JBOD (如图 1 )的数据存放机制是由第一块磁盘开始按顺序往后存储,当前磁盘存储空间用完后,再依次往后面的磁盘存储数据。 JBOD 存储性能完全等同于单块磁盘,而且也不提供数据安全保护。它只是简单提供一种扩展存储空间的机制, JBOD 可用存储容量等于所有成员磁盘的存储空间之和。目前 JBOD 常指磁盘柜,而不论其是否提供 RAID 功能。

RAID
图1 JBOD

4.2 标准 RAID 等级

SNIA 、 Berkeley 等组织机构把 RAID0 、 RAID1 、 RAID2 、 RAID3 、 RAID4 、 RAID5 、 RAID6 七个等级定为标准的 RAID 等级,这也被业界和学术界所公认。标准等级是最基本的 RAID 配置集合,单独或综合利用数据条带、镜像和数据校验技术。标准 RAID 可以组合,即 RAID 组合等级,满足 对性能、安全性、可靠性要求更高的存储应用需求。 [6][7][8][9][10][11]

1.RAID0

RAID0 是一种简单的、无数据校验的数据条带化技术。实际上不是一种真正的 RAID ,因为它并不提供任何形式的冗余策略。 RAID0 将所在磁盘条带化后组成大容量的存储空间(如图 2 所示),将数据分散存储在所有磁盘中,以独立访问方式实现多块磁盘的并读访问。由于可以并发执行 I/O 操作,总线带宽得到充分利用。再加上不需要进行数据校验,RAID0 的性能在所有 RAID 等级中是最高的。理论上讲,一个由 n 块磁盘组成的 RAID0 ,它的读写性能是单个磁盘性能的 n 倍,但由于总线带宽等多种因素的限制,实际的性能提升低于理论值。

RAID0 具有低成本、高读写性能、 100% 的高存储空间利用率等优点,但是它不提供数据冗余保护,一旦数据损坏,将无法恢复。 因此, RAID0 一般适用于对性能要求严格但对数据安全性和可靠性不高的应用,如视频、音频存储、临时数据缓存空间等。

RAID
图2 RAID0 :无冗错的数据条带

2.RAID1

RAID1 称为镜像,它将数据完全一致地分别写到工作磁盘和镜像 磁盘,它的磁盘空间利用率为 50% 。 RAID1 在数据写入时,响应时间会有所影响,但是读数据的时候没有影响。 RAID1 提供了最佳的数据保护,一旦工作磁盘发生故障,系统自动从镜像磁盘读取数据,不会影响用户工作。工作原理如图 3 所示。

RAID1 与 RAID0 刚好相反,是为了增强数据安全性使两块 磁盘数据呈现完全镜像,从而达到安全性好、技术简单、管理方便。 RAID1 拥有完全容错的能力,但实现成本高。 RAID1 应用于对顺序读写性能要求高以及对数据保护极为重视的应用,如对邮件系统的数据保护。

RAID
图3 RAID1 :无校验的相互镜像

3.RAID2

RAID2 称为纠错海明码磁盘阵列,其设计思想是利用海明码实现数据校验冗余。海明码是一种在原始数据中加入若干校验码来进行错误检测和纠正的编码技术,其中第 2n 位( 1, 2, 4, 8, … )是校验码,其他位置是数据码。因此在 RAID2 中,数据按位存储,每块磁盘存储一位数据编码,磁盘数量取决于所设定的数据存储宽度,可由用户设定。图 4 所示的为数据宽度为 4 的 RAID2 ,它需要 4 块数据磁盘和 3 块校验磁盘。如果是 64 位数据宽度,则需要 64 块 数据磁盘和 7 块校验磁盘。可见, RAID2 的数据宽度越大,存储空间利用率越高,但同时需要的磁盘数量也越多。

海明码自身具备纠错能力,因此 RAID2 可以在数据发生错误的情况下对纠正错误,保证数据的安全性。它的数据传输性能相当高,设计复杂性要低于后面介绍的 RAID3 、 RAID4 和 RAID5 。

但是,海明码的数据冗余开销太大,而且 RAID2 的数据输出性能受阵列中最慢磁盘驱动器的限制。再者,海明码是按位运算, RAID2 数据重建非常耗时。由于这些显著的缺陷,再加上大部分磁盘驱动器本身都具备了纠错功能,因此 RAID2 在实际中很少应用,没有形成商业产品,目前主流存储磁盘阵列均不提供 RAID2 支持。

RAID
图 4 RAID2 :海明码校验

4.RAID3

RAID3 (图 5 )是使用专用校验盘的并行访问阵列,它采用一个专用的磁盘作为校验盘,其余磁盘作为数据盘,数据按位可字节的方式交叉存储到各个数据盘中。RAID3 至少需要三块磁盘,不同磁盘上同一带区的数据作 XOR 校验,校验值写入校验盘中。 RAID3 完好时读性能与 RAID0 完全一致,并行从多个磁盘条带读取数据,性能非常高,同时还提供了数据容错能力。向 RAID3 写入数据时,必须计算与所有同条带的校验值,并将新校验值写入校验盘中。一次写操作包含了写数据块、读取同条带的数据块、计算校验值、写入校验值等多个操作,系统开销非常大,性能较低。

如果 RAID3 中某一磁盘出现故障,不会影响数据读取,可以借助校验数据和其他完好数据来重建数据。假如所要读取的数据块正好位于失效磁盘,则系统需要读取所有同一条带的数据块,并根据校验值重建丢失的数据,系统性能将受到影响。当故障磁盘被更换后,系统按相同的方式重建故障盘中的数据至新磁盘。

RAID3 只需要一个校验盘,阵列的存储空间利用率高,再加上并行访问的特征,能够为高带宽的大量读写提供高性能,适用大容量数据的顺序访问应用,如影像处理、流媒体服务等。目前, RAID5 算法不断改进,在大数据量读取时能够模拟 RAID3 ,而且 RAID3 在出现坏盘时性能会大幅下降,因此常使用 RAID5 替代 RAID3 来运行具有持续性、高带宽、大量读写特征的应用。

RAID
图5 RAID3 :带有专用位校验的数据条带

5.RAID4

RAID4 与 RAID3 的原理大致相同,区别在于条带化的方式不同。 RAID4 (图 6 )按照 块的方式来组织数据,写操作只涉及当前数据盘和校验盘两个盘,多个 I/O 请求可以同时得到处理,提高了系统性能。 RAID4 按块存储可以保证单块的完整性,可以避免受到其他磁盘上同条带产生的不利影响。

RAID4 在不同磁盘上的同级数据块同样使用 XOR 校验,结果存储在校验盘中。写入数据时, RAID4 按这种方式把各磁盘上的同级数据的校验值写入校验 盘,读取时进行即时校验。因此,当某块磁盘的数据块损坏, RAID4 可以通过校验值以及其他磁盘上的同级数据块进行数据重建。

RAID4 提供了 非常好的读性能,但单一的校验盘往往成为系统性能的瓶颈。对于写操作, RAID4 只能一个磁盘一个磁盘地写,并且还要写入校验数据,因此写性能比较差。而且随着成员磁盘数量的增加,校验盘的系统瓶颈将更加突出。正是如上这些限制和不足, RAID4 在实际应用中很少见,主流存储产品也很少使用 RAID4 保护。

RAID
图6 RAID4 :带有专用块级校验的数据条带

6.RAID5

RAID5 应该是目前最常见的 RAID 等级,它的原理与 RAID4 相似,区别在于校验数据分布在阵列中的所有磁盘上,而没有采用专门的校验磁盘。对于数据和校验数据,它们的写操作可以同时发生在完全不同的磁盘上。因此, RAID5 不存在 RAID4 中的并发写操作时的校验盘性能瓶颈问题。另外, RAID5 还具备很好的扩展性。当阵列磁盘 数量增加时,并行操作量的能力也随之增长,可比 RAID4 支持更多的磁盘,从而拥有更高的容量以及更高的性能。

RAID5 (图 7)的磁盘上同时存储数据和校验数据,数据块和对应的校验信息存保存在不同的磁盘上,当一个数据盘损坏时,系统可以根据同一条带的其他数据块和对应的校验数据来重建损坏的数据。与其他 RAID 等级一样,重建数据时, RAID5 的性能会受到较大的影响。

RAID5 兼顾存储性能、数据安全和存储成本等各方面因素,它可以理解为 RAID0 和 RAID1 的折中方案,是目前综合性能最佳的数据保护解决方案。 RAID5 基本上可以满足大部分的存储应用需求,数据中心大多采用它作为应用数据的保护方案。

RAID
图7 RAID5 :带分散校验的数据条带

7.RAID6

前面所述的各个 RAID 等级都只能保护因单个磁盘失效而造成的数据丢失。如果两个磁盘同时发生故障,数据将无法恢复。 RAID6 (如图 8 )引入双重校验的概念,它可以保护阵列中同时出现两个磁盘失效时,阵列仍能够继续工作,不会发生数据丢失。 RAID6 等级是在 RAID5 的基础上为了进一步增强数据保护而设计的一种 RAID 方式,它可以看作是一种扩展的 RAID5 等级。

RAID6 不仅要支持数据的恢复,还要支持校验数据的恢复,因此实现代价很高,控制器的设计也比其他等级更复杂、更昂贵。 RAID6 思想最常见的实现方式是采用两个独立的校验算法,假设称为 P 和 Q ,校验数据可以分别存储在两个不同的校验盘上,或者分散存储在所有成员磁盘中。当两个磁盘同时失效时,即可通过求解两元方程来重建两个磁盘上的数据。

RAID6 具有快速的读取性能、更高的容错能力。但是,它的成本要高于 RAID5 许多,写性能也较差,并有设计和实施非常复杂。因此, RAID6 很少得到实际应用,主要用于对数据安全等级要求非常高的场合。它一般是替代 RAID10 方案的经济性选择。

RAID
图8 RAID6 :带双重分散校验的数据条带

4.3 RAID 组合等级

标准 RAID 等级各有优势和不足。自然地,我们想到把多个 RAID 等级组合起来,实现优势互补,弥补相互的不足,从而达到在性能、数据安全性等指标上更高的 RAID 系统。目前在业界和学术研究中提到的 RAID 组合等级主要有 RAID00 、 RAID01 、 RAID10 、 RAID100 、 RAID30 、 RAID50 、 RAID53 、 RAID60 ,但实际得到较为广泛应用的只有 RAID01 和 RAID10 两个等级。当然,组合等级的实现成本一般都非常昂贵,只是在 少数特定场合应用。 [12]

1.RAID00

简单地说, RAID00 是由多个成员 RAID0 组成的高级 RAID0 。它与 RAID0 的区别在于, RAID0 阵列替换了原先的成员磁盘。可以把 RAID00 理解为两层条带化结构的磁盘阵列,即对条带再进行条带化。这种阵列可以提供更大的存储容量、更高的 I/O 性能和更好的 I/O 负均衡。

2. RAID01 和 RAID10

一些文献把这两种 RAID 等级看作是等同的,本文认为是不同的。 RAID01 是先做条带化再作镜像,本质是对物理磁盘实现镜像;而 RAID10 是先做镜像再作条带化,是对虚拟磁盘实现镜像。相同的配置下,通常 RAID01 比 RAID10 具有更好的容错能力,原理如图 9 所示。

RAID01 兼备了 RAID0 和 RAID1 的优点,它先用两块磁盘建立镜像,然后再在镜像内部做条带化。 RAID01 的数据将同时写入到两个磁盘阵列中,如果其中一个阵列损坏,仍可继续工作,保证数据安全性的同时又提高了性能。 RAID01 和 RAID10 内部都含有 RAID1 模式,因此整体磁盘利用率均仅为 50% 。

RAID
RAID
图 9 典型的 RAID01 (上)和 RAID10 (下)模型

3.RAID100

通常看作 RAID 1+0+0 ,有时也称为 RAID 10+0 ,即条带化的 RAID10 。原理如图 10 所示。 RAID100 的缺陷与 RAID10 相同,任意一个 RAID1 损坏一个磁盘不会发生数据丢失,但是剩下的磁盘存在单点故障的危险。最顶层的 RAID0 ,即条带化任务,通常由软件层来完成。

RAID100 突破了单个 RAID 控制器对物理磁盘数量的限制,可以获得更高的 I/O 负载均衡, I/O 压力分散到更多的磁盘上,进一步提高随机读性能,并有效降低热点盘故障风险。因此, RAID100 通常是大数据库的最佳选择。

RAID
图10 典型的 RAID100 模型

4.RAID30 ( RAID53 )、 RAID50 和 RAID60

这三种 RAID 等级与 RAID00 原理基本相同,区别在于成员 “ 磁盘 ” 换成了 RAID3 、 RAID5 和 RAID6 ,分别如图 11 、 12 、 13 所示。其中, RAID30 通常又被称为 RAID53[13] 。其实,可把这些等级 RAID 统称为 RAID X0 等级, X 可为标准 RAID 等级,甚至组合等级(如 RAID100 )。利用多层 RAID 配置,充分利用 RAID X 与 RAID0 的优点,从而获得在存储容量、数据安全性和 I/O 负载均衡等方面的大幅性能提升。

RAID
图11 典型的 RAID50 模型

RAID
图12 典型的 RAID50 模型

RAID
图13 典型的 RAID60 模型

4.4 非标准 RAID 等级

虽然标准 RAID 和组合 RAID 在具体实现上存在一定程度的不同,但与标准规范是保持一致或兼容的。然而除此之外,一些存储厂商还实现了非标准的 RAID 等级,往往都是公司私有的产品。这里简单介绍几个非标准 RAID 等级。 [14]

1.RAID7

RAID7 的全称是最优化的异步高 I/O 速率和高数据传输率,它与其他 RAID 等级有着明显区别。它不仅仅是一种技术,它还是一个独立存储计算机,自身带的操作系统和管理工具,完全可以独立运行。

RAID7 的存储计算机操作系统是一套实时事件驱动操作系统,其主要用来进行系统初始化和安排 RAID7 磁盘阵列的所有数据传输,并把它们转换到相应的物理存储驱动器上。 RAID7 通过自身系统中的专用控制板来控制读写速度,存储计算机操作系统可使主机 I/O 传递性能达到最佳。如果一个磁盘出现故障, RAID7 还能够自动执行恢复操作,并可管理备份磁盘的重建过程。

RAID7 突破了以往 RAID 标准的技术架构,采用了非同步访问,极大地减轻了数据写瓶颈,提高了 I/O 速度。 RAID7 系统内置实时操作系统还可自动对主机发送过来的读写指令进行优化处理,以智能化方式将可能被读取的数据预先读入快速缓存中,从而大大减少了磁头的转动次数,提高存储系统的 I/O 速度。

RAID7 可帮助用户有效地管理日益庞大的数据存储系统,并使系统的运行效率大大提高,满足不同用户的存储需求。但是, RAID7 的成本比其他 RAID 等级要高许多。另外, RAID7 已被某公司注册为商标,目前仅有一家公司提供 RAID7 的产品,用户没有更多的选择。技术封闭,缺乏主流专业存储厂商的参与和研发严重制约了 RAID7 的发展。

2.RAID-DP

按照 SNIA 最新的 RAID6 定义 [15] ,双重数据校验的磁盘阵列都可归为 RAID6 等级。 NetApp 公司按照 RAID6 的定义实现了 RAID-DP ,使用双重的数据校验来保护数据,可以保证两块磁盘同时损坏的情况下不发生数据丢失。与该公司的 RAID4 实现对比,传统的 RAID6 实现会致使系统性能损失 30% 左右,而 RAID-DP 的性能下降低于 2% 。上层文件系统的请求首先写入后端的 NVRAM 中,确保即使在 掉电的情况下也不会有任何数据丢失。因此,数据块不会立即更新,当执行新来的写操作,会对写操作进行聚集,然后存储控制器尝试一次性写入包括校验数据在内的整个数据条带。 RAID-DP 提供了比 RAID10 更好的数据保护,性能却不低于 RAID10 。对于相同大小的 RAID 组,在大多数情况下, RAID-DP 没有受到传统 RAID6 即时更新数据块的挑战,并提供更多的磁盘进行读写。它甚至允许磁盘固件实时更新而不发生任何中断。

3.RAID1.5

这是 HighPoint 公司的 RAID 产品,有时也被错误地称为 RAID15 。 RAID1.5 仅使用两个磁盘驱动器同时进行数据条带化和镜像,数据可以同时从两块磁盘进行读取。这其中的大部分工作都由硬件来完成,而非驱动程序。 Linux 、 Solaris 等操作系统实现的 RAID1 也可以实现同时从两块磁盘进行读取数据,因此 RAID1.5 并不优于传统的 RAID1。

4. RAID5E 、 RAID5EE 和 RAID6E

这种概念首次在 IBM ServerRAID 中被提出, E 是 Enhanced 的首字母。它们分别是对 RAID5 和 RAID6 的增强,增加了热冗余磁盘驱动器,冗余磁盘与其他磁盘一块进行数据块编排。这种设计使得 I/O 可以分散到包括热冗余在内的所在磁盘,从而减小单块磁盘的 I/O 带宽, 提供更高的性能。然而,热冗余磁盘不能够被多个阵列共享。

在实现中,实际上不存在专用的热冗余磁盘,就像 RAID5 和 RAID6 中没有专用的校验磁盘一样,所有的冗余数据块分布在所的成员磁盘中。例如,一个 10 块磁盘的 RAID5E ,包括 80% 数据块、 10% 的冗余数据块和 10% 的校验数据。对于 RAID5E 和 RAID6E ,冗余数据块位于阵列尾部,而 RAID5EE 则分布在整个 RAID 中。如果 RAID5E/5EE 中发生一块磁盘损坏,则系统会自动降级并重建至标准的 RAID5 。这一过程中, I/O 操作非常密集,并且需要花费大量时间,从几个小时至甚至几天,根据阵列的具体配置而异。当损坏磁盘被替换后,系统则又会自动升级并重建至原先的 RAID5E/5EE ,同时非常耗时。在上面的重建过程中,数据没有冗余保护。由于系统升级和降级时, I/O 活动密集且所需时间过长,因此实际应用中成员磁盘数据限制在 4~8 块。一旦超过 8 块磁盘,由于损坏磁盘的重建耗时和重建中发生第二块磁盘损坏造成的数据丢失, RAID5E/5EE 所获得的性能提升和其他获益都将严重降低。

5.RAID S (Parity RAID)

RAID S 是 EMC 公司的 Symmetrix 存储系统所使用的条带化校验 RAID 。该系统中,每个卷位于单独的物理磁盘上,多个卷组合进行数据校验。 EMC 最早引入了 RAID S 概念,后来改名为 Parity RAID 并应用于 Symmetrix DMX 平台。 EMC 现在也为 Symmetrix DMX 提供标准的 RAID5 , RAID S 已经不再 EMC 产品中使用。

6.Intel Matrix RAID

Matrix RAID 是 Intel ICH6R 和后继的南桥芯片的一个重要特征,可以通过 RAID BIOS 进行访问。它使用两块磁盘或者控制器能支持的最多磁盘,它的显著特征是允许 RAID0 、 1 、 5 、 10 多种数据卷混合共存,每块磁盘的指定部分分配给相应的 RAID 卷。 Matrix RAID 主要用于改善性能和数据完整性,实际应用中可以将操作系统应用于小的 RAID0 ,而大的 RAID1 存储关键数据以及用户数据。海量的流媒体数据容易发生数据丢失,可以考虑使用这种 RAID 。 linux 的 MD RAID 也可以实现类似的功能。

7.Linux MD RAID 10

RAID 10 是 Linux 内核所支持的软 RAID 等级之一,它还支持 RAID0、1、3、4、5、6 等级别。软 RAID 驱动程序通常通过构造典型的 RAID1+0 阵开来实现 RAID10 , 2.6.9 以后的内核也可作为单独的级别来实现。

MD RAID10 支持重复数据块的近布局和远布局两种模式。近布局与标准 RAID10 相同,镜像数据块相邻存储。对于 n 重镜像的 k 路条带,不要求 k 为 n 的 整倍数。两重镜像的2、3、4路条带的 MD RAID10 分布相当于 RAID1 、 RAID-1E 和 RAID10 。远布局模式下,所有磁盘被划分为 f ( f= 镜像数)个数据存储区,重复数据块相对于原始数据块具有一个磁盘和若干依偏移的距离,即保存在下一个磁盘对应存储区的偏移位置。这种设计能够提高镜像阵列的条带性能,有效提高顺序和随机读性能,但对写性能没有显著提升。许多应该通常具有读密集而写稀疏的特点, RAID10 适合此类数据应用。需要指出的是,近布局和远布局两种模式可以同时使用,这种情况下将有 n * f 个数据副本。

8. IBM ServerRAID 1E

IBM 公司的 ServerRAID 阵列卡系列支持任意数量驱动器上的两路镜像,多个磁盘对数据块进行轮转镜像。这种配置能够对不相邻磁盘驱动器发生的损坏进行容错,其他的存储系统也支持这种模式,比如 SUN 公司的 StorEdge T3 。

9.RAID-K

Kaleidescape 公司实现了一种称为 RAID-K[16] 的 RAID 类型。 RAID-K 与 RAID4 相似,但不对文件数据进行块级的条带化处理,它企图将整个电影或音乐集合完整地存储在单个磁盘上。另外,它的冗余校验信息可存储在多个磁盘上,从而适应由多个容量不同的磁盘所组成的逻辑磁盘。而且,冗余数据包含比校验信息更多的数据,用于获取更高的容错性。这些特征可以为影像、音乐提供更好的性能,增加数据存储的安全性。 RAID-K 还可以允许用户以增量方式扩充存储容量,能够增加容量更大的磁盘,甚至它还可以增加包含数据(仅限影像和音乐)的磁盘。 RAID-K 会自动把这些磁盘组建成 RAID-K 阵列和 Kaleidescape 文件系统。

10. RAID-Z

RAID-Z 是集成在 SUN 公司 ZFS 文件系统中的一种与 RAID5 相似的 RAID 模式。利用写时复制策略, RAID-Z 避免了 RAID5 的写操作困境(即更新数据同时需要更新校验数据),它不用新数据覆盖旧数据,而是把新数据写到新位置并自动更新数据指针。对于小的写操作,仅仅执行完全的写条带操作,有效避免 “ 读取-更改-写回 ” 的操作需求。另外,还可以直接对小写操作使用镜像替换校验进行保护,因为文件系统了解下层存储结构,可以在必要时分配 额外存储空间。 ZFS 还实现了 RAID-Z2 ,提供类似与 RAID6 的双重校验保护能力,可以保证不块磁盘发生损坏而不发生数据丢失。根据 2009 年 6 月的更新, ZFS 加入了三重校验 RAID 支持,或许称为 RAID-Z3 。

五、实现方式

通常计算机功能既可以由硬件来实现,也可以由软件来实现。对于 RAID 系统而言,自然也不例外,它可以采用软件方式实现,也可以采用硬件方式实现,或者采用软硬结合的方式实现。 [3][8]

5.1 软 RAID

软 RAID 没有专用的控制芯片和 I/O 芯片,完全由操作系统和 CPU 来实现所的 RAID 的功能。现代操作系统基本上都提供软 RAID 支持,通过在磁盘设备驱动程序上添加一个软件层,提供一个物理驱动器与逻辑驱动器之间的抽象层。目前,操作系统支持的最常见的 RAID 等级有 RAID0 、 RAID1 、 RAID10 、 RAID01 和 RAID5 等。比如, Windows Server 支持 RAID0 、 RAID1 和 RAID5 三种等级, Linux 支持 RAID0 、 RAID1 、 RAID4 、 RAID5 、 RAID6 等, Mac OS X Server 、 FreeBSD 、 NetBSD 、 OpenBSD 、 Solaris 等操作系统也都支持相应的 RAID 等级。

软 RAID 的配置管理和数据恢复都比较简单,但是 RAID 所有任务的处理完全由 CPU 来完成,如计算校验值,所以执行效率比较低下,这种方式需要消耗大量的运算资源,支持 RAID 模式 较少,很难广泛应用。

软 RAID 由操作系统来实现,因此系统所在分区不能作为 RAID 的逻辑成员磁盘,软 RAID 不能保护系统盘 D 。对于部分操作系统而言, RAID 的配置信息保存在系统信息中,而不是单独以文件形式保存在磁盘上。这样当系统意外崩溃而需要重新安装时, RAID 信息就会丢失。另外,磁盘的容错技术并不等于完全支持在线更换、热插拔或热交换,能否支持错误磁盘的热交换与操作系统实现相关,有的操作系统热交换。

5.2 硬 RAID

硬 RAID 拥有自己的 RAID 控制处理与 I/O 处理芯片,甚至还有阵列缓冲,对 CPU 的占用率和整体性能是三类实现中最优的,但实现成本也最高的。硬 RAID 通常都支持热交换技术,在系统运行下更换故障磁盘。

硬 RAID 包含 RAID 卡和主板上集成的 RAID 芯片, 服务器平台多采用 RAID 卡。 RAID 卡由 RAID 核心处理芯片( RAID 卡上的 CPU )、端口、缓存和电池 4 部分组成。其中,端口是指 RAID 卡支持的磁盘接口类型,如 IDE/ATA 、 SCSI 、 SATA 、 SAS 、 FC 等接口。

5.3 软硬混合 RAID

软 RAID 性能欠佳,而且不能保护系统分区,因此很难应用于桌面系统。而硬 RAID 成本非常昂贵,不同 RAID 相互独立,不具互操作性。因此,人们采取软件与硬件结合的方式来实现 RAID ,从而获得在性能和成本上的一个折中,即较高的性价比。

这种 RAID 虽然采用了处理控制芯片,但是为了节省成本,芯片往往比较廉价且处理能力较弱, RAID 的任务处理大部分还是通过固件驱动程序由 CPU 来完成。

六、RAID 应用选择

RAID 等级的选择主要有三个因素,即数据可用性、 I/O 性能和成本。 目前,在实际应用中常见的主流 RAID 等级是 RAID0 , RAID1 , RAID3 , RAID5 , RAID6 和 RAID10 ,它们之间的技术对比情况如表 1 所示。如果不要求可用性,选择 RAID0 以获得高性能。如果可用性和性能是重要的,而成本不是一个主要因素,则根据磁盘数量选择 RAID1 。如果可用性,成本和性能都同样重要,则根据一般的数据传输和磁盘数量选择 RAID3 或 RAID5 。在实际应用中,应当根据用户的数据应用特点和具体情况,综合考虑可用性、性能和成本来选择合适的 RAID 等级。 [10]

表1 主流 RAID 等级技术对比

RAID 等级 RAID0 RAID1 RAID3 RAID5 RAID6 RAID10
别名 条带 镜像 专用奇偶校验条带 分布奇偶校验条带 双重奇偶校验条带 镜像加条带
容错性
冗余类型
热备份选择
读性能
随机写性能 一般 一般
连续写性能 一般
需要磁盘数 n≥1 2n (n≥1) n≥3 n≥3 n≥4 2n(n≥2)≥4
可用容量  全部 50% (n-1)/n (n-1)/n (n-2)/n 50%

近年来,企业的信息化水平不断发展,数据已经取代计算成为了信息计算的中心,信息数据的安全性就显得尤为至关重要。随着存储技术的持续发展, RAID 技术在成本、性能、数据安全性等诸多方面都将优于其他存储技术,例如磁带库、光盘库等,大多数企业数据中心首选 RAID 作为存储系统。当前存储行业的知名存储厂商均提供全线的磁盘阵列产品,包括面向个人和中小企业的入门级的低端 RAID 产品,面向大中型企业的中高端 RAID 产品。这些存储企业包括了国内外的主流存储厂商,如 EMC 、 IBM 、 HP 、 SUN 、 NetApp 、 NEC 、 HDS 、 H3C 、 Infortrend 、华赛等。另外,这些厂商在提供存储硬件系统的同时,还往往提供非常全面的软件系统,这也是用户采购产品的一个主要参考因素。

不同的存储厂商的产品在技术、成本、性能、管理、服务等方面各有优势和不足。用户选择 RAID 的原则是:在成本预算内,满足数据存储需求的前提下,选择最优的存储厂商解决方案。因此,首先用户需要对存储需求作深入的调研和分析,并给出成本预算,然后对众多存储厂商的解决方案进行分析和对比,最后选择出一个综合最优的存储方案。其中,存储产品的扩展性和存储厂家的售后服务需要重点考察,存储需求(如容量、性能)可能会不断升级,存储产品发生故障后的维修和支持保障,这些都要未雨先缪。

七、总结与展望

回顾 RAID 发展历史,从首次提出概念至今已有二十多年。在此期间,整个社会信息化水平不断提高,数据呈现爆炸式增长趋势,数据取代计算成为信息计算的中心。这促使人们对数据愈加重视,不断追求海量存储容量、高性能、高 安全性、高可用性、可扩展性、可管理性等等。 RAID 技术在这样强大的存储需求推动下不断发展进步,时至今日技术已经非常成熟,在各种数据存储系统中得到了十分广泛的应用。

正是由于技术发展的成熟, RAID 技术的未来发展已经不被广泛看好,甚至预言在不久的将来会停止发展,称之为 “ 僵尸技术 ” ,即虽然宣布死亡,但在很长一段时间内仍会继续发挥巨大的价值。

然而,当前的 RAID 技术仍然存在诸多不足,各种 RAID 模式都存在自身的缺陷,主要集中在读写性能、实现成本、恢复时间窗口、多磁盘损坏等方面。因此, RAID 技术显然还存在很大的提升空间,具有很大的发展潜力。近年来新出现的 RAID 模式以及学术研究显示了其未来的发展趋势,包括分布式校验、多重校验、混合 RAID 模式、水平和垂直条带、基于固态内存 RAID 、网络校验等等。特别指出的是,多核 CPU 和 GPU 是当前的热点技术,它们大幅提升了主机的可用计算资源,这可以解决 RAID 对计算资源的消耗问题,软 RAID 很可能将重新成为热点。另外,存储硬件性能的提升、存储虚拟化技术、重复数据删除技术以及其他存储技术都会极大地推动 RAID 技术的进一步创新和发展。

原文链接:

http://www.hack520.com/169.html

光纤分光器

光纤分光器(也叫分光器)就是实现光网络系统中将光信号进行耦合、分支、分配的光纤汇接器件。
中文名
光纤分光器
外文名
Fiber splitter
别    称
分光器
分    类
平面波导型、熔融拉锥分光器

概念

编辑

是光纤链路中最重要的无源器件之一,具有多个输入端和多个输出端,一个分路器有M个输入端和N个输出端用M*N表示。而将多路光信号合为一路信号叫做合成器。按生产工艺有平面波导型光纤分光器(PLC Splitter)和熔融拉锥分光器(FBTSplitter

主要参数对比

编辑

这两种器件在性能价格方面各有优势,两种工艺技术也都在不断升级,不断克服各自的缺点。拉锥式分路器正在解决一次性拉锥数量不多和均匀性不良等问题;光波导分路器也在降低成本方面作不懈努力,目前两种器件在1X8以上成本已相差无几,随着分路通道的增加平面波导型分路器价格更优。2、如何选择器件如何选用这两种器件,关键要从使用场合和用户的需求方面考虑。在一些体积和光波长不是很敏感的应用场合,特别是分路少的情况下,选用拉锥式光分路器比较实惠,如独立的数据传输选用1310nm拉锥式分路器,电视视频网络可选择1550nm的拉锥式分路器;在三网合一、FTTH等需要多个波长的光传输而且用户较多的场合下,应选用光波导分路器。目前,国内多数公司进行FTTH试验网多采用拉锥式分路器,这是由于许多设计人员对PLC器件还不熟悉,国内也很少有公司生产这种器件。日本和美国FTTH真正商业运行的市场几乎全部采用平面光波导分光器。

插入损耗

编辑

每一路输出相对于输入光损失的dB数就是插入损耗,其数学表达式为:Ai=-10lgPouti/Pin,其中Ai是指第i个输出口的插入损耗;Pouti是第i个输出端口的光功率;Pin是输入端的光功率值。

熔融拉锥

编辑

熔融拉锥是将两根或多根光纤捆在一起,然后在拉锥机上熔融拉伸,并实时监控分光比的变化,分光比达到要求后结束熔融拉伸,其中一端保留一根光纤(其余剪掉)作为输入端,另一端则作多路输出端。目前成熟拉锥工艺一次只能拉1×4以下。1×4以上器件,则用多个1×2连接在一起。再整体封装在分路器盒中。

主要优点

(1)拉锥耦合器已有二十多年的历史和经验,许多设备和工艺只需沿用而已,开发经费只有PLC的几十分之一甚至几百分之一
(2)原材料只有很容易获得的石英基板,光纤,热缩管,不锈钢管和少些胶,总共也不超过一美元.而机器和仪器的投资折旧费用更少,1×2、1×4等低通道分路器成本低。
(3)分光比可以根据需要实时监控,可以制作不等分分路器。

主要缺点

(1)损耗对光波长敏感,一般要根据波长选用器件,这在三网合一使用过程是致命缺陷,因为在三网合一传输的光信号有1310nm、1490nm、1550nm等多种波长信号。
(2)均匀性较差,均匀性是指均分光的分路器各输出端的插入损耗变化量。1X4标称最大相差1.5dB左右,1×8以上相差更大,不能确保均匀分光,可能影响整体传输距离。
(3)插入损耗随温度变化变化量大(TDL);插入损耗是指某一端口输出光功率与输入端光功率之比。插入损耗是由两个部分组成:一部分是附加损耗,另一部分是分光比因素;器件的分光比不同,插入损耗也不相同,因此;在标准中也没做具体规定。
(4)多路分路器(如1×16、1×32)体积比较大,可靠性也会降低,安装空间受到限制。

特点

附加损耗低
偏振相关损耗低
稳定性好
双工作窗口
三工作窗口
波长隔离度高
小体积
分光比任选

应用领域

光纤通信系统
光纤局域网
光纤传感器
测量仪器

绿楼梦 作者:剑师后

飞羽星球上,你可以不知道国王的名字,可以不知道大陆上有多少位贤者,也可以不知道信仰女神的名字,但你不会不知道绿楼!

绿楼,飞羽五大洲三大洋七大湖的精神与象征,是代表光荣与权利的所在!无数男女梦想进入的地方!

绿楼,不是一座楼,而是一个组织,一个飞羽星最著名的组织!组织绝对不是大陆上最庞大的组织,也难以说它的人数如何如何,但它却无疑是世上最有名,最恐怖,最耀眼的组织,没有一个组织,一个拥兵团,一个协会,乃至一个国家能一拈其锋芒,更不要说与之相提并论,因为世上小到组织,大到国家,任何组织,任何机关都必需为其服务。

是的,绿楼的存在有着其特殊而深刻的意义。

说到绿楼的意义必须从大陆的背景说起。飞羽星球上没有神,却有魔。魔,是指魔族,但并非人们通常理解的那样,魔族的就是坏蛋,一群想吞并人类世界的家伙,这里的魔族性情上有正亦有邪,由于外貌的些微差异,虽是与人类发生过冲突,但都只是个别事件,还未上升到整个民族深仇大恨的高度,倒是他们的身体与能力与人们所理解的魔一样凶悍。所以一直以来,人族与魔族不但相安无事,反而有着频繁的商业往来,毕竟各自的地域不同,人族喜欢在阳光底下晒太阳,而魔族更喜欢在阴冷的世界称雄称霸,大家没必要开战,打打杀杀的。飞羽星球上虽然没有神,但却有女神,所谓没有神指的是没有神族,而女神则被人们理解为是宇宙中的大神,人类有着彼此的信仰的,各自的信仰不同,信仰的对象——女神也就不同,但无论你所在的种族信仰哪位女神,人们将所信仰的女神统称为“信仰女神”。

没有神的世界,却有魔,有着魔的世界,却又诞生了一种世上最强横,最恐怖,最令无数种族颤栗的生物——魔神!

有着魔神的世界是残暴与痛苦的,天地为之色变,风云为之翻动,世界为之呻吟。魔神的数量虽不多,只有寥寥八个,而且还是被封印住了,但是在封印之前,烧杀,嗜掠,屠杀,他们曾令整个飞羽星球一度面临被毁灭的局面。被封印后,世界各个种族经过数千年漫漫悠长的岁月,终于能喘上一口气,渐渐恢复彼此的繁荣和生机,经过如此惨痛教训的人们思定而后动,于是代表着光荣与权利的绿楼便应运而生了!而在光荣与荣耀的背后,承担的责任是守护人类的安宁!

能进绿楼的,必需是精英,而且要是精英中的精英!如何精英法?很简单,飞羽星球有着寥寥数十亿人,但每届能进绿楼的只有八人,数十亿进八,这个数据难道不能说明什么吗?绿楼不是按照定期定时吸取新成员的,例如前一届吸取人员后,上一届吸取人员是在一百六十年后了,然而这一届,却决定在三年后吸取,相差之大,令人咋舌。为什么呢?其实里面的原因很简单,绿楼除非有魔神出世,又或是上一届灭罪者(注1)年老不支,是不会吸收新成员的。前一届的灭罪者没有遇上魔神,故一百六十岁年老后,新一届灭罪者诞生了,而有迹象显示,魔神会在这一届灭罪者复苏,一般而言,当届灭罪者与魔神战斗后,灭罪者纵是胜利了,也是惨胜,于是很有必要预先吸收下一届的灭罪者,以防意外,故下一届的绿楼将预定在三年后吸取……

三年啊……

往下阅读:http://www.it09.net/?action=read&book=%E7%BB%BF%E6%A5%BC%E6%A2%A6.html

NAT圆锥型的解释

1完全圆锥型NAT( Full Cone NAT )
完全圆锥型NAT,将从一个内部IP地址和端口来的所有请求,都映射到相同的外部IP地址和端口。并且,任何外部主机通过向映射的外部地址发送报文,都可以实现和内部主机进行通信。这是一种比较宽松的策略,只要建立了内部网络的IP地址和端口与公网IP地址和端口的映射关系,所有的Internet上的主机都可以访问该NAT之后的主机。
1.2地址限制圆锥型NAT( Address Restricted Cone NAT )
地址限制圆锥型NAT也是将从相同的内部IP地址和端口来的所有请求映射到相同的公网IP地址和端口。但是与完全圆锥型NAT不同,当且仅当内部主机之前已经向公网主机发送过报文,此时公网主机才能向内网主机发送报文。
1.3端口限制圆锥型NAT( Port Restricted Cone NAT )
类似与地址限制圆锥型NAT,但是更严格。端口受限圆锥型NAT增加了端口号的限制,当前仅当内网主机之前已经向公网主机发送了报文,公网主机才能和此内网主机通信。
更多资料请参考:
更多的资料请参考百度百科:
https://baike.baidu.com/item/nat/320024

 

闪婚厚爱之误嫁天价老公

第1章:闪婚

一秒记住♂ ,更新快,,免费读!

第1章:闪婚

“简然,这是我的**,密码是131224。家里需要添置什么,你看着办就好。”

都过去好几个小时了,简然的耳畔还总是想起新婚丈夫早上出门前递给她一张**时所说的话。

说实在的,她对身为她丈夫这个男人的了解是少得可怜。

除了他亲口告诉她他姓秦名越外,其它关于他的事情她一无所知,就连他的家里有些什么人她都不太清楚。

简然也不知道自己是从哪里来的胆量,竟然和一个只见过两次面的男人领证结了婚。

十天前,在闺蜜凌飞语的热心帮助下,简然第n次踏上相亲道路时,遇到了这个名叫秦越的男人。

她本没有报什么希望,毕竟三年前被人设计陷害后,她就没有资格挑剔,只有别人挑剔她了。

正因为她不能再挑剔别人了,因此相亲当日,她早到了十五分钟。

自身条件上占不了优势,就只能在其它方面表现得好一些,希望能给对方留下好的印象。

如果能遇到合适的男人就把自己嫁出去,也能让父母安心。

和她相亲的男人来得则是一分不早,一分不晚。

男人西装革履着装非常正式,让人觉得他非常重视这次的相亲,给简然最直观的第一感觉很不错。,

他打招呼的方式也很平常:“简小姐,你好!我是秦越。”

很平常的一句话,只因为他的声音非常富有磁性,让简然觉得异常好听,对这个男人的印象又加了一分。

两个人简单平常的交流后,礼貌地留下了电话号码,便各自离开。

相亲的次数多了,简然也没把这次相亲当一回事儿。

她以为,这次相亲也会和以前许多次一样不了了之,不料却在两天后接到了秦越的电话。

他的声音仍是客气礼貌:“简小姐,你晚上有没有空?”

那晚,秦越约她到一家川菜馆吃饭。

简然不太喜欢相亲这样尴尬的场合,席间话非常少,一餐饭下来显得有些拘谨,也没怎么吃饱。

原想找个理由先离开,踌躇中,秦越率先说话了:“简小姐,我下个礼拜三有空,在那天我们去把结婚证领了如何?”

继续阅读下一章

http://www.it09.net/?action=read&page=2&book=%E9%97%AA%E5%A9%9A%E5%8E%9A%E7%88%B1%E4%B9%8B%E8%AF%AF%E5%AB%81%E5%A4%A9%E4%BB%B7%E8%80%81%E5%85%AC.html