КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Π•Ρ‚ΠΎ ΠΊΠ°ΠΊ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΡŠΠΊΡ€Π°Ρ‰Π΅Π½ΠΈΡΡ‚Π°

ΠšΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък* сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΎ Π² ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π½ΠΈΡ‚Π΅ систСми Π·Π° повишаванС Π½Π° надСТдността Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ. Π’ Yandex Ρ‚Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ. НапримСр, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ вмСсто рСпликация Π² Π½Π°ΡˆΠ΅Ρ‚ΠΎ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ спСстява ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ, Π±Π΅Π· Π΄Π° ΠΆΠ΅Ρ€Ρ‚Π²Π° надСТдността. Но Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎΡ‚ΠΎ ΠΈΠΌ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅, яснитС описания Π½Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ работят Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ са ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π΄ΠΊΠΈ. Π’Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π°Ρ‚, са ΠΈΠ·ΠΏΡ€Π°Π²Π΅Π½ΠΈ ΠΏΡ€Π΅Π΄ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ слСдното (ΠΎΡ‚ Wikipedia):

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Казвам сС Π’Π°Π΄ΠΈΠΌ, Π² Yandex Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°ΠΌ Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ MDS. Π’ Ρ‚Π°Π·ΠΈ статия Ρ‰Π΅ опиша с прости Π΄ΡƒΠΌΠΈ Ρ‚Π΅ΠΎΡ€Π΅Ρ‚ΠΈΡ‡Π½ΠΈΡ‚Π΅ основи Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък (ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΈ LRC). Π©Π΅ Π²ΠΈ ΠΊΠ°ΠΆΠ° ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ, Π±Π΅Π· слоТна ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° ΠΈ Ρ€Π΅Π΄ΠΊΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈ. Π’ края Ρ‰Π΅ Π΄Π°ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² Yandex.

Няма Π΄Π° Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Ρ€Π΅Π΄ΠΈΡ†Π° матСматичСски подробности, Π½ΠΎ Ρ‰Π΅ Π΄Π°ΠΌ Π²Ρ€ΡŠΠ·ΠΊΠΈ Π·Π° Ρ‚Π΅Π·ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° сС потопят ΠΏΠΎ-дълбоко. Π©Π΅ ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠ° ΡΡŠΡ‰ΠΎ, Ρ‡Π΅ някои матСматичСски опрСдСлСния ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ са строги, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ статията Π½Π΅ Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Π·Π° ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ†ΠΈ, Π° Π·Π° ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ искат Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π°Ρ‚ ΡΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π²ΡŠΠΏΡ€ΠΎΡΠ°.

* Π’ Π°Π½Π³Π»ΠΎΠ΅Π·ΠΈΡ‡Π½Π°Ρ‚Π° Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π° ΠΈΠ·Π»ΠΈΡˆΠ½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ чСсто сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​кодовС Π·Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅.

1. Π‘ΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅

Π‘ΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° всички ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ проста: ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΉΡ‚Π΅ (ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅) Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° Π½Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π·Π°Π³ΡƒΠ±Π΅Π½ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ (ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ Π½Π° диска, Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΏΡ€ΠΈ трансфСр Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ Ρ‚.Π½.).

Π’ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ* ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък Π΄Π°Π½Π½ΠΈΡ‚Π΅ сС раздСлят Π½Π° n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ сС броят m Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΠΎΠ±Ρ‰ΠΎ n + m Π±Π»ΠΎΠΊΠ°. ΠšΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък са конструирани ΠΏΠΎ Ρ‚Π°ΠΊΡŠΠ² Π½Π°Ρ‡ΠΈΠ½, Ρ‡Π΅ n Π±Π»ΠΎΠΊΠ° ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° само част ΠΎΡ‚ n + m Π±Π»ΠΎΠΊΠ°. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ само Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, тоСст Ρ‚Π΅Π·ΠΈ, Π² ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ са Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅.

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Π—Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ всичкитС n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, трябва Π΄Π° ΠΈΠΌΠ°Ρ‚Π΅ ΠΏΠΎΠ½Π΅ n ΠΎΡ‚ n + m Π±Π»ΠΎΠΊΠ°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ n Π±Π»ΠΎΠΊΠ°, ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ само n-1 Π±Π»ΠΎΠΊ (Π² Ρ‚ΠΎΠ·ΠΈ случай Ρ‰Π΅ трябва Π΄Π° Π²Π·Π΅ΠΌΠ΅Ρ‚Π΅ 1 Π±Π»ΠΎΠΊ β€žΠΈΠ·Ρ‚ΡŠΠ½ΡΠ»ΠΎβ€œ Π²ΡŠΠ·Π΄ΡƒΡ…"). Π”ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ Π»ΠΈ са n ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π±Π»ΠΎΠΊΠ° ΠΎΡ‚ n + m Π±Π»ΠΎΠΊΠ° Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° всички Π΄Π°Π½Π½ΠΈ? Π’ΠΎΠ²Π° зависи ΠΎΡ‚ Π²ΠΈΠ΄Π° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ Π²ΠΈ позволяват Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ всички Π΄Π°Π½Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ n Π±Π»ΠΎΠΊΠ°, Π½ΠΎ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък Π½Π° LRC Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ.

Π‘ΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ

Π’ систСмитС Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, всСки ΠΎΡ‚ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с ΠΊΠΎΠ΄ Π·Π° излишък сС записват Π½Π° ΠΎΡ‚Π΄Π΅Π»Π΅Π½ диск. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π°, Π°ΠΊΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ диск сС ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ, ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ всС ΠΎΡ‰Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Π½ΠΈ. Π”Π°Π½Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ Π΄ΠΎΡ€ΠΈ Π°ΠΊΠΎ няколко диска сС поврСдят Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

ВрансфСр Π½Π° Π΄Π°Π½Π½ΠΈ

ΠšΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΡ€Π΅Π· Π½Π΅Π½Π°Π΄Π΅ΠΆΠ΄Π½Π° ΠΌΡ€Π΅ΠΆΠ°. ΠŸΡ€Π΅Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ сС раздСлят Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈ Π·Π° тях сС изчисляват Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅. По ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ ΠΊΠ°ΠΊΡ‚ΠΎ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Ρ€Π΅Π·Π΅Ρ€Π²Π΅Π½ ΠΊΠΎΠ΄. Ако Π²ΡŠΠ·Π½ΠΈΠΊΠ½Π°Ρ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ (Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π±Ρ€ΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠ²Π΅), Π΄Π°Π½Π½ΠΈΡ‚Π΅ всС ΠΎΡ‰Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ ΠΏΠΎ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π±Π΅Π· Π³Ρ€Π΅ΡˆΠΊΠΈ. ΠšΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΏΠΎ ΠΎΠΏΡ‚ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΎΠ½Π½ΠΈ Π»ΠΈΠ½ΠΈΠΈ ΠΈ Π² сатСлитни ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

* Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, ΠΏΡ€ΠΈ ΠΊΠΎΠΈΡ‚ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ са Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅, ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π₯Π΅ΠΌΠΈΠ½Π³ ΠΈ CRC ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΎ Π·Π° ΠΏΡ€Π΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² Ethernet ΠΌΡ€Π΅ΠΆΠΈ. Π’ΠΎΠ²Π° са ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° ΠΊΠΎΠ΄ΠΈΡ€Π°Π½Π΅ с ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½Π΅ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ, Ρ‚Π΅ са ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈ Π΄Π° ΠΎΡ‚ΠΊΡ€ΠΈΠ²Π°Ρ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ, Π° Π½Π΅ Π΄Π° Π³ΠΈ ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Ρ‚ (ΠΊΠΎΠ΄ΡŠΡ‚ Π½Π° Hamming ΡΡŠΡ‰ΠΎ позволява частично ΠΊΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½Π΅ Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ).

2. КодовС на Рийд-Боломон

ΠšΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ са Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π½Π°ΠΉ-ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½ ΠΎΡ‰Π΅ ΠΏΡ€Π΅Π· 1960-Ρ‚Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π° миналия Π²Π΅ΠΊ ΠΈ Π·Π° ΠΏΡŠΡ€Π²ΠΈ ΠΏΡŠΡ‚ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΏΡ€Π΅Π· 1980-Ρ‚Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ Π½Π° миналия Π²Π΅ΠΊ Π·Π° масово производство Π½Π° компактдисковС.

Има Π΄Π²Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΠ° Π·Π° Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½: 1) ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΎΡ‚ излишни ΠΊΠΎΠ΄ΠΎΠ²Π΅; 2) ΠΊΠ°ΠΊ Π΄Π° сС Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΡ‚ Π΄Π°Π½Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅. НСка Π½Π°ΠΌΠ΅Ρ€ΠΈΠΌ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ΠΈ Π½Π° тях.
Π—Π° простота Ρ‰Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ΅ΠΌ, Ρ‡Π΅ n=6 ΠΈ m=4. Π”Ρ€ΡƒΠ³ΠΈ схСми сС Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΏΠΎ аналогия.

Как Π΄Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Ρ‚Π΅ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅

ВсСки Π±Π»ΠΎΠΊ ΠΎΡ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ сС Π±Ρ€ΠΎΠΈ нСзависимо ΠΎΡ‚ останалитС. Всички n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° прСброяванС Π½Π° всСки Π±Π»ΠΎΠΊ. Π’ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠ°Ρ‚Π° ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ X1-X6 са Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Π΄Π°Π½Π½ΠΈ, P1-P4 са Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Ρ€Π΅Π·Π΅Ρ€Π²Π΅Π½ ΠΊΠΎΠ΄.

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ трябва Π΄Π° са с Сднакъв Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π½ΡƒΠ»Π΅Π²ΠΈ Π±ΠΈΡ‚ΠΎΠ²Π΅ Π·Π° подравняванС. ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с ΠΊΠΎΠ΄ Π·Π° излишък Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ със ΡΡŠΡ‰ΠΈΡ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΊΠ°Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ. Всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ са Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° Π΄ΡƒΠΌΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 16 Π±ΠΈΡ‚Π°). Π”Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ раздСлямС Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π° k Π΄ΡƒΠΌΠΈ. Π’ΠΎΠ³Π°Π²Π° всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΎΡ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΡΡŠΡ‰ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈ Π½Π° k Π΄ΡƒΠΌΠΈ.

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Π—Π° Π΄Π° сС ΠΏΡ€Π΅Π±Ρ€ΠΎΠΈ i-Ρ‚Π°Ρ‚Π° Π΄ΡƒΠΌΠ° ΠΎΡ‚ всСки Ρ€Π΅Π·Π΅Ρ€Π²Π΅Π½ Π±Π»ΠΎΠΊ, Ρ‰Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ i-Ρ‚ΠΈΡ‚Π΅ Π΄ΡƒΠΌΠΈ ΠΎΡ‚ всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ. Π’Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ изчислСни ΠΏΠΎ слСдната Ρ„ΠΎΡ€ΠΌΡƒΠ»Π°:

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Π’ΡƒΠΊ стойноститС x са Π΄ΡƒΠΌΠΈΡ‚Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ, p са Π΄ΡƒΠΌΠΈΡ‚Π΅ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с излишък, всички Π°Π»Ρ„Π°, Π±Π΅Ρ‚Π°, Π³Π°ΠΌΠ° ΠΈ Π΄Π΅Π»Ρ‚Π° са спСциално ΠΈΠ·Π±Ρ€Π°Π½ΠΈ числа, ΠΊΠΎΠΈΡ‚ΠΎ са Π΅Π΄Π½Π°ΠΊΠ²ΠΈ Π·Π° всички i. Π’Π΅Π΄Π½Π°Π³Π° трябва Π΄Π° сС ΠΊΠ°ΠΆΠ΅, Ρ‡Π΅ всички Ρ‚Π΅Π·ΠΈ стойности Π½Π΅ са ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ числа, Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΎΡ‚ ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Π½Π° Π“Π°Π»ΠΎΠ°; ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈΡ‚Π΅ +, -, *, / Π½Π΅ са ΠΏΠΎΠ·Π½Π°Ρ‚ΠΈ Π½Π° всички Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π° спСциални ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, въвСдСни Π²ΡŠΡ€Ρ…Ρƒ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° Π“Π°Π»ΠΎΠ° ΠΏΠΎΠ»Π΅.

Π—Π°Ρ‰ΠΎ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π½Π° Π“Π°Π»ΠΎΠ°?

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

ИзглСТда, Ρ‡Π΅ всичко Π΅ просто: раздСлямС Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅, Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π΄ΡƒΠΌΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π΄ΡƒΠΌΠΈΡ‚Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ, Π±Ρ€ΠΎΠΈΠΌ Π΄ΡƒΠΌΠΈΡ‚Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с ΠΊΠΎΠ΄ Π·Π° излишък - ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с ΠΊΠΎΠ΄ Π·Π° излишък. ΠžΠ±Ρ‰ΠΎ Π²Π·Π΅Ρ‚ΠΎ Ρ‚Π°ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚ΠΈ, Π½ΠΎ Π΄ΡΠ²ΠΎΠ»ΡŠΡ‚ Π΅ Π² Π΄Π΅Ρ‚Π°ΠΉΠ»ΠΈΡ‚Π΅:

  1. ΠšΠ°ΠΊΡ‚ΠΎ бСшС посочСно ΠΏΠΎ-Π³ΠΎΡ€Π΅, Ρ€Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° Π΄ΡƒΠΌΠ°Ρ‚Π° Π΅ фиксиран, Π² нашия ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 16 Π±ΠΈΡ‚Π°. Π€ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ‚Π΅ ΠΏΠΎ-Π³ΠΎΡ€Π΅ Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ са Ρ‚Π°ΠΊΠΈΠ²Π°, Ρ‡Π΅ ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ Ρ†Π΅Π»ΠΈ числа, Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΎΡ‚ изчисляванСто Π½Π° p ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС прСдставСн с Π΄ΡƒΠΌΠ° с Π²Π°Π»ΠΈΠ΄Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€.
  2. ΠŸΡ€ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ‚Π΅ ΠΏΠΎ-Π³ΠΎΡ€Π΅ Ρ‰Π΅ сС Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ систСма ΠΎΡ‚ уравнСния, ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈ, Π·Π° Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅. По Π²Ρ€Π΅ΠΌΠ΅ Π½Π° процСса Π½Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°Π»ΠΎΠΆΠΈ Ρ†Π΅Π»ΠΈΡ‚Π΅ числа Π΄Π° сС раздСлят Π΅Π΄Π½ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ Ρ€Π΅Π°Π»Π½ΠΎ число, ΠΊΠΎΠ΅Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ‚ΠΎΡ‡Π½ΠΎ прСдставСно Π² ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚.

Π’Π΅Π·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ прСдотвратяват ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ†Π΅Π»ΠΈ числа Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½. Π Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΅ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΎ, ΠΌΠΎΠΆΠ΅ Π΄Π° сС опишС ΠΏΠΎ слСдния Π½Π°Ρ‡ΠΈΠ½: Π½Π΅ΠΊΠ° измислим спСциални числа, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ прСдставСни с Π΄ΡƒΠΌΠΈ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°Ρ‚Π° дълТина (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ 16 Π±ΠΈΡ‚Π°) ΠΈ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΡŠΡ‚ ΠΎΡ‚ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° всички ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, Π²ΡŠΡ€Ρ…Ρƒ ΠΊΠΎΠΈΡ‚ΠΎ (добавянС , ΠΈΠ·Π²Π°ΠΆΠ΄Π°Π½Π΅, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π΅Π»Π΅Π½ΠΈΠ΅) ΡΡŠΡ‰ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ прСдставСни Π² ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π½Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π΄ΡƒΠΌΠΈ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°Ρ‚Π° дълТина.

Π’Π°ΠΊΠΈΠ²Π° β€žΡΠΏΠ΅Ρ†ΠΈΠ°Π»Π½ΠΈβ€œ числа сС ΠΈΠ·ΡƒΡ‡Π°Π²Π°Ρ‚ ΠΎΡ‚ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°Ρ‚Π° ΠΎΡ‚Π΄Π°Π²Π½Π°, Ρ‚Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​полСта. ΠŸΠΎΠ»Π΅Ρ‚ΠΎ Π΅ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ с Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ Π·Π° тях ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡΡŠΠ±ΠΈΡ€Π°Π½Π΅, ΠΈΠ·Π²Π°ΠΆΠ΄Π°Π½Π΅, ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅Π»Π΅Π½ΠΈΠ΅.

ΠŸΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Galois* са ΠΏΠΎΠ»Π΅Ρ‚Π°, Π·Π° ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠΌΠ° ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ ΠΎΡ‚ всяка опСрация (+, -, *, /) Π·Π° всСки Π΄Π²Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΎΡ‚ ΠΏΠΎΠ»Π΅Ρ‚ΠΎ. ΠŸΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π½Π° Π“Π°Π»ΠΎΠ° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ конструирани Π·Π° числа, ΠΊΠΎΠΈΡ‚ΠΎ са стСпСни Π½Π° 2: 2, 4, 8, 16 ΠΈ Ρ‚.Π½. (Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ стСпСни Π½Π° всяко просто число p, Π½ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° сС интСрСсувамС само ΠΎΡ‚ стСпСни Π½Π° 2). НапримСр Π·Π° 16-Π±ΠΈΡ‚ΠΎΠ²ΠΈ Π΄ΡƒΠΌΠΈ Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠΎΠ»Π΅, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ΠΎ 65 536 Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°, Π·Π° всяка Π΄Π²ΠΎΠΉΠΊΠ° ΠΎΡ‚ ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° ΠΎΡ‚ всяка опСрация (+, -, *, /). БтойноститС Π½Π° x, p, Π°Π»Ρ„Π°, Π±Π΅Ρ‚Π°, Π³Π°ΠΌΠ°, Π΄Π΅Π»Ρ‚Π° ΠΎΡ‚ уравнСнията ΠΏΠΎ-Π³ΠΎΡ€Π΅ Ρ‰Π΅ сС считат Π·Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Π½Π° Π“Π°Π»ΠΎΠ° Π·Π° изчислСния.

По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ ΠΈΠΌΠ°ΠΌΠ΅ систСма ΠΎΡ‚ уравнСния, с която ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° конструирамС Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΎΡ‚ излишни ΠΊΠΎΠ΄ΠΎΠ²Π΅, ΠΊΠ°Ρ‚ΠΎ напишСм подходяща ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°. Използвайки ΡΡŠΡ‰Π°Ρ‚Π° систСма ΠΎΡ‚ уравнСния, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠΈΡ‚Π΅ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ.

* Π’ΠΎΠ²Π° Π½Π΅ Π΅ строго ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, Π° ΠΏΠΎ-скоро описаниС.

Как Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ

Π’ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ някои ΠΎΡ‚ n + m Π±Π»ΠΎΠΊΠ° липсват. Π’ΠΎΠ²Π° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΊΠ°ΠΊΡ‚ΠΎ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Ρ€Π΅Π·Π΅Ρ€Π²Π΅Π½ ΠΊΠΎΠ΄. Липсата Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ с Π΄Π°Π½Π½ΠΈ ΠΈ/ΠΈΠ»ΠΈ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с излишък Ρ‰Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΡΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ x ΠΈ/ΠΈΠ»ΠΈ p са нСизвСстни Π² уравнСнията ΠΏΠΎ-Π³ΠΎΡ€Π΅.

УравнСнията Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ систСма ΠΎΡ‚ уравнСния, Π² която всички Π°Π»Ρ„Π°, Π±Π΅Ρ‚Π°, Π³Π°ΠΌΠ°, Π΄Π΅Π»Ρ‚Π° стойности са константи, всички x ΠΈ p, ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π°Ρ‰ΠΈ Π½Π° Π½Π°Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅, са извСстни ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, Π° останалитС x ΠΈ p са нСизвСстни.

НапримСр, Π½Π΅ΠΊΠ° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ 1, 2, 3 ΠΈ кодовият Π±Π»ΠΎΠΊ Π·Π° излишък 2 са Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ, Ρ‚ΠΎΠ³Π°Π²Π° Π·Π° i-Ρ‚Π° Π³Ρ€ΡƒΠΏΠ° Π΄ΡƒΠΌΠΈ Ρ‰Π΅ ΠΈΠΌΠ° слСдната систСма ΠΎΡ‚ уравнСния (нСизвСстнитС са ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ Π² Ρ‡Π΅Ρ€Π²Π΅Π½ΠΎ):

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

ИмамС систСма ΠΎΡ‚ 4 уравнСния с 4 нСизвСстни, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° я Ρ€Π΅ΡˆΠΈΠΌ ΠΈ Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΠΌ Π΄Π°Π½Π½ΠΈΡ‚Π΅!

ΠžΡ‚ Ρ‚Π°Π·ΠΈ систСма ΠΎΡ‚ уравнСния слСдват Ρ€Π΅Π΄ΠΈΡ†Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ относно Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ (n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, m Π±Π»ΠΎΠΊΠ° с ΠΊΠΎΠ΄ Π·Π° излишък):

  • Π”Π°Π½Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ, Π°ΠΊΠΎ Π±ΡŠΠ΄Π°Ρ‚ Π·Π°Π³ΡƒΠ±Π΅Π½ΠΈ m Π±Π»ΠΎΠΊΠ° ΠΈΠ»ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ. Ако m+1 ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π±Π»ΠΎΠΊΠ° са Π·Π°Π³ΡƒΠ±Π΅Π½ΠΈ, Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ: нСвъзмоТно Π΅ Π΄Π° сС Ρ€Π΅ΡˆΠΈ систСма ΠΎΡ‚ m уравнСния с m + 1 нСизвСстни.
  • Π—Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΄ΠΎΡ€ΠΈ Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, трябва Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ всСки n ΠΎΡ‚ останалитС Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ всСки ΠΎΡ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅.

Какво Π΄Ρ€ΡƒΠ³ΠΎ трябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅

Π’ описаниСто ΠΏΠΎ-Π³ΠΎΡ€Π΅ избягвам Ρ€Π΅Π΄ΠΈΡ†Π° Π²Π°ΠΆΠ½ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ изискват ΠΏΠΎ-Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π΅Π½ΠΎ Π³ΠΌΡƒΡ€ΠΊΠ°Π½Π΅ Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°Ρ‚Π°, Π·Π° Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π°Π·Π³Π»Π΅Π΄Π°Π½ΠΈ. По-спСциално, Π½Π΅ ΠΊΠ°Π·Π²Π°ΠΌ Π½ΠΈΡ‰ΠΎ Π·Π° слСдното:

  • БистСмата ΠΎΡ‚ уравнСния Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ трябва Π΄Π° ΠΈΠΌΠ° (ΡƒΠ½ΠΈΠΊΠ°Π»Π½ΠΎ) Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π° всяка комбинация ΠΎΡ‚ нСизвСстни (Π½Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ m нСизвСстни). Π’ΡŠΠ· основа Π½Π° Ρ‚ΠΎΠ²Π° изискванС сС ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚ стойноститС Π½Π° Π°Π»Ρ„Π°, Π±Π΅Ρ‚Π°, Π³Π°ΠΌΠ° ΠΈ Π΄Π΅Π»Ρ‚Π°.
  • БистСма ΠΎΡ‚ уравнСния трябва Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС конструирана Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ (Π² зависимост ΠΎΡ‚ Ρ‚ΠΎΠ²Π° ΠΊΠΎΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ са Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ) ΠΈ Ρ€Π΅ΡˆΠ΅Π½Π°.
  • Врябва Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ ΠΏΠΎΠ»Π΅ Π½Π° Π“Π°Π»ΠΎΠ°: Π·Π° Π΄Π°Π΄Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° Π΄ΡƒΠΌΠ°Ρ‚Π° Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚Π° ΠΎΡ‚ всяка опСрация (+, -, *, /) Π·Π° всСки Π΄Π²Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π°.

Π’ края Π½Π° статията ΠΈΠΌΠ° ΠΏΡ€Π΅ΠΏΡ€Π°Ρ‚ΠΊΠΈ към Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π° ΠΏΠΎ Ρ‚Π΅Π·ΠΈ Π²Π°ΠΆΠ½ΠΈ Π²ΡŠΠΏΡ€ΠΎΡΠΈ.

Π˜Π·Π±ΠΎΡ€ Π½Π° n ΠΈ m

Как Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ΠΌ n ΠΈ m Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°? На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π² систСмитС Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, Π·Π° Π΄Π° сС спСсти място, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ m Π²ΠΈΠ½Π°Π³ΠΈ сС ΠΈΠ·Π±ΠΈΡ€Π° ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ‚ n. Π’Π΅Ρ…Π½ΠΈΡ‚Π΅ спСцифични стойности зависят ΠΎΡ‚ Ρ€Π΅Π΄ΠΈΡ†Π° Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ:

  • НадСТдност Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ. ΠšΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-голямо Π΅ m, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-голям Π΅ броят Π½Π° ΠΎΡ‚ΠΊΠ°Π·ΠΈΡ‚Π΅ Π½Π° диска, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΆΠΈΠ²Π΅Π½ΠΈ, тоСст Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-висока Π΅ надСТдността.
  • Излишно ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. ΠšΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-високо Π΅ ΡΡŠΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ m/n, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-голямо Ρ‰Π΅ бъдС Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° ΠΈ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-скъпа Ρ‰Π΅ бъдС систСмата.
  • Π’Ρ€Π΅ΠΌΠ΅ Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° заявката. ΠšΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-голяма Π΅ сумата n + m, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-дълго Ρ‰Π΅ бъдС Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° заявкитС. Въй ΠΊΠ°Ρ‚ΠΎ Ρ‡Π΅Ρ‚Π΅Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ (ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅) изисква Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° n Π±Π»ΠΎΠΊΠ°, ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈ Π½Π° n Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ диска, Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ Ρ‰Π΅ сС опрСдСля ΠΎΡ‚ Π½Π°ΠΉ-бавния диск.

Π’ допълнСниС, ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π² няколко DC Π½Π°Π»Π°Π³Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ограничСния Π²ΡŠΡ€Ρ…Ρƒ ΠΈΠ·Π±ΠΎΡ€Π° Π½Π° n ΠΈ m: Π°ΠΊΠΎ 1 DC Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½, Π΄Π°Π½Π½ΠΈΡ‚Π΅ всС ΠΎΡ‰Π΅ трябва Π΄Π° са Π½Π°Π»ΠΈΡ‡Π½ΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅. НапримСр, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ Π΄Π°Π½Π½ΠΈ Π² 3 DC, трябва Π΄Π° бъдС изпълнСно слСдното условиС: m >= n/2, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π΅Π½ случай ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° ситуация, ΠΏΡ€ΠΈ която Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ са Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ 1 DC Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½.

3. LRC - ΠœΠ΅ΡΡ‚Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° рСконструкция

Π—Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½, трябва Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ n ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ. Π’ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²Π΅Π½ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΠΊ Π·Π° Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ‚Π΅ систСми Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π·Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° Π΅Π΄ΠΈΠ½ счупСн диск, Ρ‰Π΅ трябва Π΄Π° Ρ‡Π΅Ρ‚Π΅Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΎΡ‚ останалитС, създавайки голямо Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° дисковСтС ΠΈ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°.

Най-чСститС Π³Ρ€Π΅ΡˆΠΊΠΈ са Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΏΠΎΠ²Ρ€Π΅Π΄Π° ΠΈΠ»ΠΈ ΠΏΡ€Π΅Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π½Π° Π΅Π΄ΠΈΠ½ диск. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ Π΅ ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ Π΄Π° сС Π½Π°ΠΌΠ°Π»ΠΈ ΠΈΠ·Π»ΠΈΡˆΠ½ΠΎΡ‚ΠΎ Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Π² Ρ‚ΠΎΠ·ΠΈ (Π½Π°ΠΉ-чСсто срСщан) случай? Оказва сС, Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅: ΠΈΠΌΠ° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅ Π½Π° LRC спСциално Π·Π° Ρ‚Π°Π·ΠΈ Ρ†Π΅Π».

LRC (Local Reconstruction Codes) са Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅, измислСни ΠΎΡ‚ Microsoft Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π² Windows Azure Storage. Π˜Π΄Π΅ΡΡ‚Π° Π½Π° LRC Π΅ възмоТно Π½Π°ΠΉ-проста: Ρ€Π°Π·Π΄Π΅Π»Π΅Ρ‚Π΅ всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ Π½Π° Π΄Π²Π΅ (ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅) Π³Ρ€ΡƒΠΏΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ част ΠΎΡ‚ ΠΊΠΎΠ΄ΠΎΠ²ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° излишък Π·Π° всяка Π³Ρ€ΡƒΠΏΠ° ΠΏΠΎΠΎΡ‚Π΄Π΅Π»Π½ΠΎ. Π’ΠΎΠ³Π°Π²Π° някои Π±Π»ΠΎΠΊΠΎΠ²Π΅ с излишни ΠΊΠΎΠ΄ΠΎΠ²Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅Π±Ρ€ΠΎΠ΅Π½ΠΈ, ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ (Π² LRC Ρ‚Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​глобални ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък), Π° някои - с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π΅Π΄Π½Π° ΠΎΡ‚ Π΄Π²Π΅Ρ‚Π΅ Π³Ρ€ΡƒΠΏΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ (Ρ‚Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ ​​локални ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък).

LRC сС ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π²Π° с Ρ‚Ρ€ΠΈ числа: nrl, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ n Π΅ броят Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π΄Π°Π½Π½ΠΈ, r Π΅ броят Π½Π° Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с излишък, l Π΅ броят Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ с Π»ΠΎΠΊΠ°Π»Π΅Π½ ΠΊΠΎΠ΄ с излишък. Π—Π° Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½ΠΈ Π΅ Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½, трябва Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ само n/l Π±Π»ΠΎΠΊΠΎΠ²Π΅ - Ρ‚ΠΎΠ²Π° Π΅ l ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ, ΠΎΡ‚ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ Π² ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½.

НапримСр, Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΉΡ‚Π΅ схСмата LRC 6-2-2. X1–X6 β€” 6 Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, P1, P2 β€” 2 Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ Π±Π»ΠΎΠΊΠ° Π·Π° Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅, P3, P4 β€” 2 Π±Π»ΠΎΠΊΠ° Π·Π° Π»ΠΎΠΊΠ°Π»Π½ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€Π°Π½Π΅.

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

ΠšΠΎΠ΄ΠΎΠ²ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π·Π° излишък P1, P2 сС броят, ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ. Π Π΅Π·Π΅Ρ€Π²Π΅Π½ ΠΊΠΎΠ΄ΠΎΠ² Π±Π»ΠΎΠΊ P3 - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ X1-X3, Ρ€Π΅Π·Π΅Ρ€Π²Π΅Π½ ΠΊΠΎΠ΄ΠΎΠ² Π±Π»ΠΎΠΊ P4 - ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΄Π°Π½Π½ΠΈ X4-X6.

ΠžΡΡ‚Π°Π½Π°Π»ΠΎΡ‚ΠΎ сС ΠΏΡ€Π°Π²ΠΈ Π² LRC ΠΏΠΎ аналогия с ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½. УравнСнията Π·Π° прСброяванС Π½Π° Π΄ΡƒΠΌΠΈΡ‚Π΅ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ с излишък Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚:

КодовС Π·Π° излишък: с прости Π΄ΡƒΠΌΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚Π΅ Π΄Π°Π½Π½ΠΈ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΠΈ Π΅Π²Ρ‚ΠΈΠ½ΠΎ

Π—Π° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ числата Π°Π»Ρ„Π°, Π±Π΅Ρ‚Π°, Π³Π°ΠΌΠ°, Π΄Π΅Π»Ρ‚Π°, трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ изпълнСни Ρ€Π΅Π΄ΠΈΡ†Π° условия, Π·Π° Π΄Π° сС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ (Ρ‚.Π΅. Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° систСмата ΠΎΡ‚ уравнСния). ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° тях Π² Бтатия.
Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° опСрацията XOR сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° изчисляванС Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък P3, P4.

ΠžΡ‚ систСмата ΠΎΡ‚ уравнСния Π·Π° LRC слСдват Ρ€Π΅Π΄ΠΈΡ†Π° ΠΈΠ·Π²ΠΎΠ΄ΠΈ:

  • Π—Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ всСки 1 Π±Π»ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ n/l Π±Π»ΠΎΠΊΠ° (n/2 Π² нашия ΠΏΡ€ΠΈΠΌΠ΅Ρ€).
  • Ако r + l Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π½Π΅ са Π½Π°Π»ΠΈΡ‡Π½ΠΈ ΠΈ всички Π±Π»ΠΎΠΊΠΎΠ²Π΅ са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π² Π΅Π΄Π½Π° Π³Ρ€ΡƒΠΏΠ°, Ρ‚ΠΎΠ³Π°Π²Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ. Π’ΠΎΠ²Π° Π΅ лСсно Π΄Π° сС обясни с ΠΏΡ€ΠΈΠΌΠ΅Ρ€. НСка Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ X1–X3 ΠΈ P3 са Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ: Ρ‚ΠΎΠ²Π° са r + l Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΎΡ‚ Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° Π³Ρ€ΡƒΠΏΠ°, 4 Π² нашия случай. Π’ΠΎΠ³Π°Π²Π° ΠΈΠΌΠ°ΠΌΠ΅ систСма ΠΎΡ‚ 3 уравнСния с 4 нСизвСстни, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈ.
  • Π’ΡŠΠ² всички останали случаи Π½Π° Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΎΡΡ‚ Π½Π° r + l Π±Π»ΠΎΠΊΠΎΠ²Π΅ (ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅ Π½Π°Π»ΠΈΡ‡Π΅Π½ ΠΏΠΎΠ½Π΅ Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΎΡ‚ всяка Π³Ρ€ΡƒΠΏΠ°), Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π² LRC ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ.

По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ LRC ΠΏΡ€Π΅Π²ΡŠΠ·Ρ…ΠΎΠΆΠ΄Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Reed-Solomon ΠΏΡ€ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ слСд Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ. Π’ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½, Π·Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΄ΠΎΡ€ΠΈ Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, трябва Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ n Π±Π»ΠΎΠΊΠ°, Π° Π² LRC, Π·Π° Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ Π΅Π΄ΠΈΠ½ Π±Π»ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ n/l Π±Π»ΠΎΠΊΠ° (n/2 Π² нашия ΠΏΡ€ΠΈΠΌΠ΅Ρ€). ΠžΡ‚ Π΄Ρ€ΡƒΠ³Π° страна, LRC Π΅ ΠΏΠΎ-нисък ΠΎΡ‚ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° максималния Π±Ρ€ΠΎΠΉ допустими Π³Ρ€Π΅ΡˆΠΊΠΈ. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΈΡ‚Π΅ ΠΏΠΎ-Π³ΠΎΡ€Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΡ‚ Π΄Π°Π½Π½ΠΈ Π·Π° всякакви 4 Π³Ρ€Π΅ΡˆΠΊΠΈ, Π° Π·Π° LRC ΠΈΠΌΠ° 2 ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ ΠΎΡ‚ 4 Π³Ρ€Π΅ΡˆΠΊΠΈ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ΠΈ.

Какво Π΅ ΠΏΠΎ-Π²Π°ΠΆΠ½ΠΎ зависи ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π°Ρ‚Π° ситуация, Π½ΠΎ чСсто спСстяванията ΠΎΡ‚ излишно Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅, ΠΊΠΎΠΈΡ‚ΠΎ LRC осигурява, Π½Π°Π΄Π²ΠΈΡˆΠ°Π²Π°Ρ‚ ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅.

4. Π”Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък

ОсвСн ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΈ LRC, ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък. Π Π°Π·Π»ΠΈΡ‡Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Π° ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°. Π•Ρ‚ΠΎ някои Π΄Ρ€ΡƒΠ³ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък:

  • Код Π·Π° излишък с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° XOR. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡΡ‚Π° XOR сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° Π²ΡŠΡ€Ρ…Ρƒ n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ ΠΈ сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° 1 Π±Π»ΠΎΠΊ ΠΎΡ‚ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, тоСст схСма n+1 (n Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½ΠΈ, 1 ΠΊΠΎΠ΄ Π·Π° излишък). Използвано Π² RAID 5, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък сС записват Ρ†ΠΈΠΊΠ»ΠΈΡ‡Π½ΠΎ Π½Π° всички дисковС Π½Π° масива.
  • Π§Π΅Ρ‚Π½ΠΎ-Π½Π΅Ρ‡Π΅Ρ‚Π΅Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ, Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° опСрацията XOR. Позволява Π²ΠΈ Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ 2 Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, тоСст схСмата n+2.
  • STAR Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ, Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° опСрацията XOR. Позволява Π²ΠΈ Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΡ‚Π΅ 3 Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, тоСст схСмата n+3.
  • ΠŸΠΈΡ€Π°ΠΌΠΈΠ΄Π½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ са Π΄Ρ€ΡƒΠ³ΠΈ излишни ΠΊΠΎΠ΄ΠΎΠ²Π΅ ΠΎΡ‚ Microsoft.

5. Π˜Π·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Π² Yandex

Π Π΅Π΄ΠΈΡ†Π° инфраструктурни ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π½Π° Yandex ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π•Ρ‚ΠΎ няколко ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°:

  • MDS Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, Π·Π° ΠΊΠΎΠ΅Ρ‚ΠΎ писах Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ Π½Π° статията.
  • YT β€” БистСмата MapReduce Π½Π° Yandex.
  • YDB (Yandex DataBase) - newSQL Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ.

MDS ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° LRC ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък, схСма 8-2-2. Π”Π°Π½Π½ΠΈ с ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π·Π° излишък сС записват Π½Π° 12 Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ диска Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΡΡŠΡ€Π²ΡŠΡ€ΠΈ Π² 3 Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ DC: 4 ΡΡŠΡ€Π²ΡŠΡ€Π° във всСки DC. ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° Ρ‚ΠΎΠ²Π° Π² Бтатия.

YT ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΠΊΡ‚ΠΎ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ (схСма 6-3), ΠΊΠΎΠΈΡ‚ΠΎ бяха Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ ΠΏΡŠΡ€Π²ΠΈ, Ρ‚Π°ΠΊΠ° ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° излишък Π½Π° LRC (схСма 12-2-2), ΠΊΠ°Ρ‚ΠΎ LRC Π΅ прСдпочитаният ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅.

YDB ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° Ρ‡Π΅Ρ‚Π½ΠΎ-Π½Π΅Ρ‡Π΅Ρ‚Π½ΠΈ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ (Π€ΠΈΠ³ΡƒΡ€Π° 4-2). ΠžΡ‚Π½ΠΎΡΠ½ΠΎ ΠΈΠ·Π»ΠΈΡˆΠ½ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² YDB Π²Π΅Ρ‡Π΅ ΠΊΠ°Π·Π° Π½Π° Highload.

Π˜Π·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ схСми Π½Π° ΠΊΠΎΠ΄ Π·Π° излишък сС дълТи Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ изисквания към систСмитС. НапримСр Π² MDS Π΄Π°Π½Π½ΠΈΡ‚Π΅, ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° LRC, сС поставят Π² 3 DC навСднъТ. Π—Π° нас Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π΄Π° останат Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅, Π°ΠΊΠΎ 1 ΠΎΡ‚ всСки DC сС ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈ, слСдоватСлно Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ DC, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π°ΠΊΠΎ някой DC Π΅ Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½, броят Π½Π° Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Π΅ Π½Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ допустимия. Π’ схСмата 8-2-2 ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° поставитС 4 Π±Π»ΠΎΠΊΠ° във всСки DC, слСд ΠΊΠΎΠ΅Ρ‚ΠΎ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΊΠΎΠΉΡ‚ΠΎ ΠΈ Π΄Π° Π΅ DC Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½, 4 Π±Π»ΠΎΠΊΠ° Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Π½ΠΈ. ΠšΠ°ΠΊΠ²Π°Ρ‚ΠΎ ΠΈ схСма Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ΠΌ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π³ΠΎ поставим Π² 3 DC, във всСки случай трябва Π΄Π° ΠΈΠΌΠ° (r + l) / n >= 0,5, тоСст ΠΈΠ·Π»ΠΈΡˆΡŠΠΊΡŠΡ‚ Π½Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ‰Π΅ бъдС ΠΏΠΎΠ½Π΅ 50%.

Π’ YT ситуацията Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Π°: всСки YT ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ Π΅ изцяло Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² 1 DC (Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠ»ΡŠΡΡ‚Π΅Ρ€ΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ DC), Ρ‚Π°ΠΊΠ° Ρ‡Π΅ няма Ρ‚Π°ΠΊΠΎΠ²Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅. Π‘Ρ…Π΅ΠΌΠ°Ρ‚Π° 12-2-2 осигурява 33% излишък, тоСст ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ Π΅ ΠΏΠΎ-Π΅Π²Ρ‚ΠΈΠ½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π΄ΡŠΡ€ΠΆΠΈ Π΄ΠΎ 4 Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈ ΠΏΡ€Π΅ΠΊΡŠΡΠ²Π°Π½ΠΈΡ Π½Π° диска, Ρ‚ΠΎΡ‡Π½ΠΎ ΠΊΠ°Ρ‚ΠΎ схСмата MDS.

Има ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ характСристики Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² систСмитС Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ: нюанси Π½Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ, Π²ΡŠΠ·Π΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅Ρ‚ΠΎ Π²ΡŠΡ€Ρ…Ρƒ Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° заявката, характСристики Π½Π° запис Π½Π° Π΄Π°Π½Π½ΠΈ ΠΈ Ρ‚.Π½. Π©Π΅ говоря ΠΎΡ‚Π΄Π΅Π»Π½ΠΎ Π·Π° Ρ‚Π΅Π·ΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ‚Π°, Π°ΠΊΠΎ Ρ‚Π΅ΠΌΠ°Ρ‚Π° Ρ‰Π΅ Π΅ интСрСсна.

6. Π’Ρ€ΡŠΠ·ΠΊΠΈ

  1. ΠŸΠΎΡ€Π΅Π΄ΠΈΡ†Π° ΠΎΡ‚ статии Π·Π° ΠΊΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Π ΠΈΠΉΠ΄-Π‘ΠΎΠ»ΠΎΠΌΠΎΠ½ ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π½Π° Π“Π°Π»ΠΎΠ°: https://habr.com/ru/company/yadro/blog/336286/
    https://habr.com/ru/company/yadro/blog/341506/
    Π’Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ сС ΠΏΠΎ-Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π΅Π½ΠΎ Π² ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ°Ρ‚Π° Π½Π° Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Π΅Π·ΠΈΠΊ.
  2. Бтатия ΠΎΡ‚ Microsoft Π·Π° LRC: https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/LRC12-cheng20webpage.pdf
    Π Π°Π·Π΄Π΅Π» 2 обяснява Π½Π°ΠΊΡ€Π°Ρ‚ΠΊΠΎ тСорията ΠΈ слСд Ρ‚ΠΎΠ²Π° обсъТда ΠΎΠΏΠΈΡ‚Π° с LRC Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°.
  3. Π‘Ρ…Π΅ΠΌΠ° Ρ‡Π΅Ρ‚Π½ΠΎ-Π½Π΅Ρ‡Π΅Ρ‚Π½ΠΎ: https://people.eecs.berkeley.edu/~kubitron/courses/cs262a-F12/handouts/papers/p245-blaum.pdf
  4. Π‘Ρ…Π΅ΠΌΠ° STAR: https://www.usenix.org/legacy/event/fast05/tech/full_papers/huang/huang.pdf
  5. КодовС Π½Π° ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄ΠΈΡ‚Π΅: https://www.microsoft.com/en-us/research/publication/pyramid-codes-flexible-schemes-to-trade-space-for-access-efficiency-in-reliable-data-storage-systems/
  6. КодовС за излишък в MDS: https://habr.com/ru/company/yandex/blog/311806
  7. КодовС за излишък в YT: https://habr.com/ru/company/yandex/blog/311104/
  8. КодовС за излишък в YDB: https://www.youtube.com/watch?v=dCpfGJ35kK8

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€