| 
 咨询电话:010-51727811/12/13
当前位置: 首页 > 新闻中心 > 业内新闻 >
独立访问分块数据RAID的校验(二)
时间:2012-09-06 09:39  来源:飞客数据恢复   作者:飞客数据恢复工程师
2.独立访问阵列的读、写性能

在一个读、修改和写周期中,一次单个驱动器的写操作需要独立访问阵列做4次数据传输,即原有数据读出、校验数据读出、新校验数据写入以及新数据写入,这导致单个I/O请求的大量的开销。

因为读、修改和写周期的开销,所以独立访问阵列的读操作比其写操作快得多。事实上,独立访问阵列的写速度比单个磁盘的写操作更慢,也比并行访问阵列的写慢。由于这个原因,当独立访问阵列用于读操作比例大于写操作的应用时,它应该配以回写缓存。

3.使用磁盘缓存减少写额外开销

在独立访问阵列中,写的额外开销来源于对分条中少量分块的执行写操作,然而,假如对占有分条中一半以上的块实施写操作,那么,写的额外开销将会减少。存在于其他分块上不被更新的数据能够被读出,也能与写入其他分块的数据进行XOR操作,然后,可以将新数据及其校验数据写入各自的分条位置。注意,没有必要首先读出原有数据,或者去除校验数据的某个贡献,也没有必要在写入新校验数据之前,再读出原来校验数据。其次序总结如下:
为即将要写的若干分块保存新的数据。
从不被更新的一些分块中读出现存的数据。
计算新的校验数据。
写新的分块数据和新的校验数据。

一个回写算法的磁盘缓存可以保存磁盘写,使单个操作能够写入更多的分块,假如充分多的分块等待在缓存中,可以使用第二种方法,避免必须从成员磁盘中读出数据,并修改它们。考虑这样一个情况,利用回写缓存保存磁盘写I/O,就可以搜集多个写操作,以致于一次能够对足够多的分块进行写,它避免了必须从校验值中去除原来的贡献。而是由新的数据和已存在的数据直接计算校验数据,无须从校验数据中去除原来数据的贡献,再加入新数据的贡献。假如合理地实行这个思想,带有回写缓存阵列的写可以达到单独磁盘驱动器的性能。它的作用是保存阵列写,直到有足够多的数据,即占有分条中的多数分块为止。