Linux 6.2 කර්නලය Btrfs හි RAID5/6 වෙත වැඩිදියුණු කිරීම් ඇතුළත් වේ.

RAID 6.2/5 ක්‍රියාත්මක කිරීමේදී "ලියන සිදුර" ගැටළුව විසඳීම සඳහා Linux 6 කර්නලයට ඇතුළත් කිරීම සඳහා Btrfs වැඩිදියුණු කිරීම් යෝජනා කෙරේ. ගැටලුවේ සාරය නම්, පටිගත කිරීමේදී බිඳවැටීමක් සිදුවුවහොත්, කුමන RAID උපාංග නිවැරදිව ලියා ඇත්තේද සහ පටිගත කිරීම සම්පූර්ණ නොකළ කුමන කොටසකද යන්න මුලින් තේරුම් ගත නොහැක. මෙම තත්වය තුළ ඔබ RAID නැවත ගොඩ නැගීමට උත්සාහ කරන්නේ නම්, RAID කුට්ටි වල තත්වය සමමුහුර්ත නොවන බැවින් ප්‍රතිලිපිත බ්ලොක් වලට අනුරූප බ්ලොක් දූෂිත විය හැක. මෙම බලපෑමට එරෙහිව සටන් කිරීමට විශේෂ ක්‍රියාමාර්ග නොගන්නා ඕනෑම RAID1/5/6 අරාවක මෙම ගැටළුව ඇතිවේ.

RAID ක්‍රියාත්මක කිරීමේදී, btrfs හි RAID1 වැනි, පිටපත් දෙකෙහිම චෙක්සම් භාවිතා කිරීමෙන් මෙම ගැටළුව විසඳනු ලැබේ, නොගැලපීමක් තිබේ නම්, දත්ත දෙවන පිටපතෙන් සරලව ප්‍රතිසාධනය කෙරේ. යම් උපාංගයක් සම්පූර්ණ අසාර්ථක වීමක් වෙනුවට වැරදි දත්ත ලබා දීමට පටන් ගන්නේ නම් මෙම ප්‍රවේශය ද ක්‍රියාත්මක වේ.

කෙසේ වෙතත්, RAID5/6 වලදී, ගොනු පද්ධතිය සමානාත්මතා වාරණ සඳහා චෙක්සම් ගබඩා නොකරයි: සාමාන්‍ය තත්වයක් තුළ, බ්ලොක් වල නිවැරදි භාවය පරීක්ෂා කරනු ලබන්නේ ඒවා සියල්ලම චෙක්සම් වලින් සමන්විත වන අතර, සමානාත්මතාවය අවහිර කළ හැකිය. දත්ත වලින් නැවත නිර්මාණය කළ යුතුය. කෙසේ වෙතත්, අර්ධ පටිගත කිරීමේදී, මෙම ප්රවේශය ඇතැම් අවස්ථාවලදී ක්රියා නොකරනු ඇත. මෙම අවස්ථාවෙහිදී, අරාව ප්රතිෂ්ඨාපනය කිරීමේදී, අසම්පූර්ණ වාර්තාව යටතේ වැටී ඇති කුට්ටි වැරදි ලෙස ප්රතිෂ්ඨාපනය විය හැකිය.

btrfs සම්බන්ධයෙන් ගත් කල, මෙම ගැටළුව වඩාත් අදාළ වන්නේ නිෂ්පාදනය කරනු ලබන ලිවීම තීරුවට වඩා කුඩා නම්. මෙම අවස්ථාවෙහිදී, ගොනු පද්ධතිය කියවීම වෙනස් කිරීම-ලිවීම (RMW) මෙහෙයුමක් සිදු කළ යුතුය. එය ලිවීමේ-ප්‍රගතිය අවහිර කිරීම් හමු වුවහොත්, RMW මෙහෙයුම චෙක්සම් නොතකා අනාවරණය නොවන දූෂණ ඇති කළ හැක. සංවර්ධකයින් විසින් මෙම මෙහෙයුම සිදු කිරීමට පෙර RMW මෙහෙයුම බ්ලොක් වල චෙක්සම් පරික්ෂා කරන වෙනස්කම් සිදු කර ඇති අතර, අවශ්ය නම්, දත්ත ප්රතිසාධනය ලිවීමෙන් පසු චෙක්සම් චෙක්පතක් සිදු කරයි. අවාසනාවන්ත ලෙස, අසම්පූර්ණ තීරුවක් (RMW) ලිවීමේ තත්වයක් තුළ, මෙය චෙක්සම් ගණනය කිරීම සඳහා අතිරේක පොදු කාර්ය සඳහා යොමු කරයි, නමුත් විශ්වසනීයත්වය සැලකිය යුතු ලෙස වැඩි කරයි. RAID6 සඳහා, එවැනි තර්කනය තවමත් සූදානම් නැත, කෙසේ වෙතත්, RAID6 හි එවැනි අසාර්ථකත්වයක් සඳහා, එකවර උපාංග 2 ක් මත ලිවීම අසාර්ථක වීම අවශ්ය වේ, එය අඩු ඉඩක් ඇත.

මීට අමතරව, සංවර්ධකයින්ගෙන් RAID5 / 6 භාවිතය පිළිබඳ නිර්දේශ අපට සටහන් කළ හැකිය, එහි සාරය Btrfs හි පාර-දත්ත සහ දත්ත ගබඩා කිරීමේ පැතිකඩ වෙනස් විය හැකිය. මෙම අවස්ථාවෙහිදී, ඔබට පාර-දත්ත සඳහා RAID1 (කැඩපත) හෝ RAID1C3 (පිටපත් 3) පැතිකඩ භාවිතා කළ හැක, සහ දත්ත සඳහා RAID5 හෝ RAID6. මෙය පාර-දත්ත වල විශ්වාසනීය ආරක්ෂාව සහ එක් අතකින් "ලියන සිදුරක්" නොමැති වීම සහතික කරයි, අනෙක් පැත්තෙන් RAID5/6 සඳහා සාමාන්‍ය අවකාශය වඩාත් කාර්යක්ෂමව භාවිතා කරයි. මෙමගින් පාරදත්ත වල දූෂණය වැළකෙන අතර දත්ත දූෂණය නිවැරදි කළ හැක.

6.2 කර්නලයේ Btrfs හි SSD සඳහා, "ඉවතලෑම" මෙහෙයුමේ අසමමුහුර්තව ක්‍රියාත්මක කිරීම (තවදුරටත් භෞතිකව ගබඩා කළ නොහැකි නිදහස් කළ කුට්ටි සලකුණු කිරීම) පෙරනිමියෙන් සක්‍රිය වනු ඇති බව ද සටහන් කළ හැකිය. මෙම මාදිලියේ වාසිය නම් පෝලිමක "ඉවතලන" මෙහෙයුම් කාර්යක්ෂමව කාණ්ඩගත කිරීම සහ පසුබිම් හසුරුවන්නෙකු විසින් පෝලිම තවදුරටත් සැකසීම හේතුවෙන් ඉහළ කාර්ය සාධනයක් ඇති අතර, එම නිසා සාමාන්‍ය FS මෙහෙයුම් මන්දගාමී නොවේ, සමමුහුර්ත " බ්ලොක් නිදහස් කර ඇති බැවින් ඉවතලන්න", සහ SSD හට වඩා හොඳ තීරණ ගත හැක. අනෙක් අතට, ඔබට තවදුරටත් fstrim වැනි උපයෝගිතා භාවිතා කිරීමට අවශ්‍ය නොවනු ඇත, මක්නිසාද යත්, අමතර ස්කෑන් කිරීමකින් තොරව සහ මෙහෙයුම් මන්දගාමී වීමකින් තොරව FS හි ඇති සියලුම කුට්ටි ඉවත් කරනු ලැබේ.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න