新聞中心
聯系我們
Contact us
Contact us
- 總部電話010-51727811
- 客服熱線400 779 6696
- 更多聯系信息
獨立訪問分塊數據RAID的校驗(二)
時間:2012-09-06 09:39 來源:飛客數據恢復 作者:飛客數據恢復工程師
2.獨立訪問陣列的讀、寫性能
在一個讀、修改和寫周期中,一次單個驅動器的寫操作需要獨立訪問陣列做4次數據傳輸,即原有數據讀出、校驗數據讀出、新校驗數據寫入以及新數據寫入,這導致單個I/O請求的大量的開銷。
因為讀、修改和寫周期的開銷,所以獨立訪問陣列的讀操作比其寫操作快得多。事實上,獨立訪問陣列的寫速度比單個磁盤的寫操作更慢,也比并行訪問陣列的寫慢。由于這個原因,當獨立訪問陣列用于讀操作比例大于寫操作的應用時,它應該配以回寫緩存。
3.使用磁盤緩存減少寫額外開銷
在獨立訪問陣列中,寫的額外開銷來源于對分條中少量分塊的執行寫操作,然而,假如對占有分條中一半以上的塊實施寫操作,那么,寫的額外開銷將會減少。存在于其他分塊上不被更新的數據能夠被讀出,也能與寫入其他分塊的數據進行XOR操作,然后,可以將新數據及其校驗數據寫入各自的分條位置。注意,沒有必要首先讀出原有數據,或者去除校驗數據的某個貢獻,也沒有必要在寫入新校驗數據之前,再讀出原來校驗數據。其次序總結如下:
為即將要寫的若干分塊保存新的數據。
從不被更新的一些分塊中讀出現存的數據。
計算新的校驗數據。
寫新的分塊數據和新的校驗數據。
一個回寫算法的磁盤緩存可以保存磁盤寫,使單個操作能夠寫入更多的分塊,假如充分多的分塊等待在緩存中,可以使用第二種方法,避免必須從成員磁盤中讀出數據,并修改它們。考慮這樣一個情況,利用回寫緩存保存磁盤寫I/O,就可以搜集多個寫操作,以致于一次能夠對足夠多的分塊進行寫,它避免了必須從校驗值中去除原來的貢獻。而是由新的數據和已存在的數據直接計算校驗數據,無須從校驗數據中去除原來數據的貢獻,再加入新數據的貢獻。假如合理地實行這個思想,帶有回寫緩存陣列的寫可以達到單獨磁盤驅動器的性能。它的作用是保存陣列寫,直到有足夠多的數據,即占有分條中的多數分塊為止。
在一個讀、修改和寫周期中,一次單個驅動器的寫操作需要獨立訪問陣列做4次數據傳輸,即原有數據讀出、校驗數據讀出、新校驗數據寫入以及新數據寫入,這導致單個I/O請求的大量的開銷。
因為讀、修改和寫周期的開銷,所以獨立訪問陣列的讀操作比其寫操作快得多。事實上,獨立訪問陣列的寫速度比單個磁盤的寫操作更慢,也比并行訪問陣列的寫慢。由于這個原因,當獨立訪問陣列用于讀操作比例大于寫操作的應用時,它應該配以回寫緩存。
3.使用磁盤緩存減少寫額外開銷
在獨立訪問陣列中,寫的額外開銷來源于對分條中少量分塊的執行寫操作,然而,假如對占有分條中一半以上的塊實施寫操作,那么,寫的額外開銷將會減少。存在于其他分塊上不被更新的數據能夠被讀出,也能與寫入其他分塊的數據進行XOR操作,然后,可以將新數據及其校驗數據寫入各自的分條位置。注意,沒有必要首先讀出原有數據,或者去除校驗數據的某個貢獻,也沒有必要在寫入新校驗數據之前,再讀出原來校驗數據。其次序總結如下:
為即將要寫的若干分塊保存新的數據。
從不被更新的一些分塊中讀出現存的數據。
計算新的校驗數據。
寫新的分塊數據和新的校驗數據。
一個回寫算法的磁盤緩存可以保存磁盤寫,使單個操作能夠寫入更多的分塊,假如充分多的分塊等待在緩存中,可以使用第二種方法,避免必須從成員磁盤中讀出數據,并修改它們。考慮這樣一個情況,利用回寫緩存保存磁盤寫I/O,就可以搜集多個寫操作,以致于一次能夠對足夠多的分塊進行寫,它避免了必須從校驗值中去除原來的貢獻。而是由新的數據和已存在的數據直接計算校驗數據,無須從校驗數據中去除原來數據的貢獻,再加入新數據的貢獻。假如合理地實行這個思想,帶有回寫緩存陣列的寫可以達到單獨磁盤驅動器的性能。它的作用是保存陣列寫,直到有足夠多的數據,即占有分條中的多數分塊為止。