Zhuo's profile避风港PhotosBlogListsMore Tools Help

避风港

天使也会受伤---这里是你温柔的避风港

Zhuo Liu

Occupation
Location
Thanks for visiting!
Please wait...
Sorry, the comment you entered is too long. Please shorten it.
You didn't enter anything. Please try again.
Sorry, we can't add your comment right now. Please try again later.
To add a comment, you need permission from your parent. Ask for permission
Your parent has turned off comments.
Sorry, we can't delete your comment right now. Please try again later.
You've exceeded the maximum number of comments that can be left in one day. Please try again in 24 hours.
Your account has had the ability to leave comments disabled because our systems indicate that you may be spamming other users. If you believe that your account has been disabled in error please contact Windows Live support.
Complete the security check below to finish leaving your comment.
The characters you type in the security check must match the characters in the picture or audio.
No list items have been added yet.

Windows Media Player

Photo 1 of 69
June 30

像往日一样,我们说再见

没有许多歇斯底里,没有许多畅快淋漓,没有疯狂的举动,没有穿着学士服从图书馆出口闯进去,没有去猥琐维纳斯,没有跳下湖去游泳,没有半夜喊楼,没有通宵k歌;

只是在校园里默默的走走,摆几个随意而开心的造型拍照,再看看曾经走过的路,看过的风景,带着像往常一样的心情,走出宿舍,再走回来,唯一不同的是,这一天,身上多了一件一辈子才能穿上一次的学士服。

毕业典礼之后的最后一批BG,也算作是我们的散伙饭。这天的酒不知为何很醉人,几杯下去就已经头重的太不起来,早早成为第一个趴在桌上起不来的人,估计兄弟们看势也没再来给我这个BG主人敬酒。中间换了好几个地方趴,抬头的时候只记得看到越来越多的兄弟倒在桌子上椅子上,合上眼的时候也只依稀听得丹姐的“再来一瓶,再来一瓶!”,唯一一次被震惊而清醒就是旁边桌上不知哪个学院的兄弟在一阵玻璃破碎的声音后拖着满是鲜血的手臂被同学搀走……

终于,不知过了多久,大家说,撤吧。这才和zz互相搀扶着边走边吐往回走,已经完全没有了再去k歌的心情和力气。摇摇晃晃中用快说不出话的语气拨通了葱葱的电话,话还是说了一半就咽了下去,看来我喝的还不够多。回到屋里,四个人继续倒在桌子上,最终脑力不支的我爬到床上,又过了不知多久,昏昏迷迷接到了焦哥的电话,那边同样的舌头快要僵掉,不一会儿和小何出现在我床边,小何拉住我的手,好久,好在我们以后会常再见,不然他一定会把我从床上拽下来吧~

再之后……有意识的时候已经是第二天上午,被大伯的电话吵醒,匆忙收拾东西,拉去新租下的住处。中间告别羽协的兄弟姐妹们,告别Orangemm。下午再回到宿舍的时候,老党也已经上路了。大羊说,晚上用最后的班费和最后的弟兄们搓一顿,我终于没有勇气出现,和焦哥简单在食堂吃了饭,拎起电脑在多年没去过的D-106 101坐了坐,像往常一样买了夜宵回来,这一夜这样过去

又是一天,快中午被爸妈的电话吵醒,催促我提早去公司报道。去了之后被告知不可提前,公司没准备好手续。却又被大雨困在住处,直到4点才返程,这时才知道zz已经上路了。拨通电话:“到哪了?”“打车去机场的路上呢”……“哦,那先这样吧,拜”“好的,拜拜”几秒钟的无声,我等zz挂断,终于眼泪还是模糊了视线。嬉笑打闹的画面充斥在眼前,下一次重温这场景会是何年何月呢?有些庆幸,注定我错过了送他走的机会,或许在场的话我真的会抱住他不让他走,可他终究还是要走的。

贱人,来年一定要记得回来看哥!混了四年也没结交多少朋友,偏偏最后的一个学期是你让我认识了你的亲兄弟姐妹们和他们的兄弟姐妹们,我想我走出学校之后,在上海的第一步就要靠他们了吧,感谢有你四年的陪伴,感谢有你的兄弟姐妹们陪我继续走前面的路。

贱人,你要好好的,哥等你回来,等着你上厕所的时候给你关灯,等着你洗澡的时候拔你的水管,等着陪你去办各种手续、寄东西、去超市,每次出门前要捅你一下,等你回来一起DIABLO,你的圣骑,你的死灵,给你刷装备……你还要请哥吃饭的!

March 13

test

正在加载...
December 28

跟徒弟学英语···

今天开始学英语Orz,记录一下看能坚持多久

 

marriage of convenience  权宜婚姻,政治婚姻,有企图的婚姻

all shall be well, Jack shall have Jill. 有情人终成眷属

# octothorpe, hash key, pound key,

here we get a body without organ!!!  谁告诉我这句话啥意思- -!

Technorati 标签:
July 10

RAID6、RAID-DP及其他准RAID6原理(下)

zz from http://blog.chinaunix.net/u/23218/showart_258158.html

 

四、Dual-XOR

 

除了P+Q RAID6,还要好多种办法可以实现对两颗磁盘掉线的容错。

Intel提到一种Dual-XOR算法,这种方法就是取横向和斜向两个方向进行XOR运算,这样每个应用数据都在两个校验中留下痕迹,当两颗磁盘掉线时,就可以恢复数据。

但是Dual-XOR的恢复工作异常复杂艰苦,并不实用。很多技术人员研究这种算法的意义,完全是把它当作未经优化的原型思想。

如图,Pa是横向的校验,跟RAID5完全一样:

Pa1 = 数据a XOR 数据b

Pa2 = 数据c XOR 数据d

…………

Pa6 = 数据k XOR 数据l

 

Pb是斜向校验,定义为:

Pb4 = 数据a XOR Pa2 XOR数据f

Pb5 = 数据c XOR 数据e XOR Pa4

Pb6 = Pa3 XOR数据h XOR 数据j

 

可以看出Dual-XOR的校验生成过程比P+Q要简单,但是根据“麻烦守恒定律”,正向工作简单的事情,一般反向工作都会复杂。

备份和恢复一般也遵循这个规律。

(别跟我提CDP,那东西是遵循的是广义麻烦守恒定律。每个I/O都打个时间标签,还都当宝贝存着不扔,这能是个不麻烦的事吗?Sorry,又扯远了。)

当两颗磁盘掉线的时候,Dual-XOR的算法只能支持逐个数据块的恢复,而且不同条带之间还要共同参与计算。

比如图中的磁盘12掉线,恢复数据e的时候,就要至少动用到数据fPb3Pa4Pb5。而数据cPa3的恢复还要依赖数据e的恢复。

总之恢复起来是件贼头痛的事情!

 

五、NetApp RAID-DP

虽然IntelDual-XOR理论意义大于实际意义,但其改良的版本RAID-DP却已经被NetApp产品化。NetApp之所以喜欢这个类似Dual-XORRAID-DP算法,原因也很简单。

NetApp原本用的就是RAID4,而不是RAID5,其算法的中心思想就是每次I/O只跟两颗磁盘打交道就OK,自然就不会在乎RAID-DP中很多动作都只跟两、三颗磁盘打交道。

(这个思想也许在很多RAID5Fans看来有点奇怪,难道不是磁头越多性能就越好吗?但是人家NetApp这么多年的经验都集中在WAFL文件系统上,而WAFL文件系统又是专门针对这种思想优化的。所以NetApp对这个略有异类的思想不仅没有放弃,而且还越研究越起劲。)

 

这个递归式数据恢复机制简直像在玩RPG游戏,但是对WAFL文件系统来说,却的确是最合适的选择之一。

 

六、五花八门的“准RAID6

除了RAID-DP,还有X-Code编码、ZZS编码、Park编码……都可以看做是“准RAID6”。

 

X-Code编码

下面这个图是X-Code编码的解释。

 

P3x = 数据33 XOR 数据35 XOR 数据32

Px4 = 数据44 XOR 数据24 XOR 数据54

其他的校验是啥意思,不需要一一列出来了吧~

X-Code从理论上看,的确是个负载均衡、计算简单(只有XOR,没有类似GF一样的变换)、磁盘对称度很高的算法。但是实际应用还是有问题。

上图的例子是5颗磁盘的X-Code编码方式,例子中的5个条带是一个整体,一起处理。如果写入的数据不多,没有写满前3个条带,就需要在写入的同时,把未更新的数据读出来,凑齐3x5个数据,再一起计算校验码。

如果是6颗磁盘,那就要6个条带作为一个整体。

7颗磁盘一个RAID组,就需要7个条带一个整体。

8颗磁盘一个RAID组,就需要8个条带一个整体。

9颗磁盘一个RAID组,就需要9个条带一个整体。

10颗磁盘一个RAID组,就需要10个条带一个整体……

(打住!在这发帖子又没稿费,不用拼命凑字!)

总之这个算法的“重复单元”有点大。在实际应用中,这么大的“重复单元”使X-Code的应用面临两个问题:计算量大和空间浪费。(可能还有其他问题,比如名字太难听,总让人联想到黄色的东东。)

 

ZZS编码

ZZS也叫俄罗斯编码,bingo!猜对了,真聪明。这就是三个俄罗斯人在1983年提出的一种编码方式,ZZS就是三个人名字首字母缩写,跟S.H.E.演唱组的命名规则一样。

X-Code相比,ZZS“重复单元”就小很多——7颗磁盘的时候,3个条带是一个整体。

人家ZZS论文里给出的是数学公式:n颗磁盘的时候,(n-1)/2个条带是一个整体。

从这个公式你应该能发现ZZS编码的一个要求……(我知道,只支持单数颗磁盘。)

嘿嘿!你错了!实际上,ZZS算法只支持磁盘的个数为素数:……57111317……

不过人家ZZS组合(暂时就这么称呼吧)也指出,ZZS算法支持其中一颗磁盘上面全写0。这样就可以在应用中支持46101216……(素数-1)颗盘了。

什么?还没明白?在计算的时候,内存里虚拟一个全0的影子盘不就行啦!

 

 

Park编码

Park是名IBM的员工,在Yorktown上班。他的业余爱好是……(Sorry,又差点跑题)

相比俄国人训练有素的数学功底,美国人既没有兴趣,也没有耐心再从算法上去优化“双重校验”的技术。但是美国人讲求实际的思想还是挺值得称道。

这不,人家Park就说了,“研究了这么多算法,最终目的不就是坏两颗盘数据仍可恢复吗。到头来算法搞得那么复杂,还不如我的看家本领——穷举法——更实在。”

Park同志是这样说的,也是这样做的(凝重的音乐声响起~)

他编了一个程序,让计算机帮他搜索给定磁盘数量的校验分布模式。

结果你猜怎么着,人家还真有收获。从3颗磁盘到38颗磁盘,除了8颗磁盘和9颗磁盘的情况,其他情况Park都找到了满足要求的校验分布模式。

什么?你问满足的是什么要求?两颗磁盘掉线数据可恢复啊。汗!

后来,一个名叫徐力浩(音)的中国人补上了8颗盘和9颗盘的校验分布表。(咱们中国人到底还是比米国人聪明那么一点点,哈~)

现在Park编码已经对从3颗到38磁盘的所有情况,都能给出双重校验分布方法。但是各种分布方法之间根本没有联系,所以只能在给定磁盘数量的时候,去查Park编码表。

Park编码的样子都是以3个条带为一个“重复单元”,其中1个条带专门用来存校验,另外2个存数据。