කොහොමද File එකක් Compress වෙන්නේ..


තාක්ශනය හරිම පුදුමාකාරයි. ඒත් මේ අරුම පුදුම තාක්ශනයේ පසුබිම සහ ක්‍රියාවලිය සොයා බැලුවම ඇත්තටම ඒතන පුදුම වෙන්න දෙයක් තියෙනවද කියලත් හිතෙන තරම්. අද මම ඔයාලට File Compress වීමේදී සිදුවන ක්‍රියාවලිය තරමක් දුරට පැහැදිල කරන්නයි යන්නේ.. ඉස්සෙල්ල බලමු මොකක්ද මේ Compress වීම කියන්නේ කියල.. ඔයාල දන්නවනේ ගොඩක් වෙලාවට අන්තර්ජාලයෙන් බාගත කරගන්න තියෙන File Zip හෝ RAR ආකාරයට පවතිනව.. ඕනෑම කෙනෙක් පුදුම කරන හැකියාවක් මේ ZIP හෝ RAR File වලට තියෙනව. ඒ තමා මේ File Extract එහෙමත් නැත්තන් දිග හැරූ විට මේ File එකට වඩා අන්තර්ගතය විශාල වීමයි.. ඒ කියන්නේ මේ තාක්ශනයට පුලුවන් දත්තවල සැබෑ ප්‍රමානයට වඩා හැකිලීමකට ලක් කරන්න.. ඉතින් පුදුම සහගත කරුන කියන්නේ ඇතැම් 4GB තරම් දැවැන්ත ගොනු 10MB වගේ වෙනකන් හැකිලූ වෙලාවල්.. අපිට දැක ගන්න පුලුවන්.. මම දැකපු එක්තරා File එකක් 10GB තරම් ගොනුවක් 100MB තරමට Compress කරල තිබ්බ.. ඉතින් මේව දැක්කම පුදුමත් හිතෙනව තමා..

පොදුවේ බොහෝ දෙනෙක් File compress කිරීමේ ක්‍රියාවලියෙන් බලාපොරොත්තු වෙන කරුනු 5ක් මම දැකල තියෙනව.

01.දත්ත Compress කිරීම
Email කරන්න Upload කරන්න විශාල File අපහසුයි.. මේ නිසා බොහෝ දෙනෙකු File ZIP  හෝ RAR කිරීමට හුරුවී සිටිනව.. ඒකත් නරකම නෑ..

02.File සහ Folder එකතු කර තනි ගොනුවක් බවට පත් කිරීමට
ඇතැම් අය Compress කිරීමෙන් බලාපොරොත්තු වෙන්නේ දත්ත හැකිලීමට නෙමේ.. Folder සහ File තනි කට්ටලයක් සේ බැදල තියන්න.. මේක ගොඩාක් ප්‍රොයොජනවත් වෙන්නේ Upload කරන කොට.. ඕක හරියට මේ වගේ.. පාසල් ලමයි පොත් ටික අතේ අරන් යනවට වඩා බෑග් එකක දාල ගෙනියන කොට ගොඩක් පහසුයි නේ.. ආන්න ඒ වගේ.. දත්ත එහෙ මෙහෙ යවන කොට කෑලි හැලෙන්නේ නැතුව එක මිටියක් සේ බැදල ගන්න පුලුවන් උපක්ක්‍රමයක් විදියට Zip කිරීම සිදුකරනව..

03.දත්ත කොටස් කර කැඩීම (Split) කිරීමට..
ඔන්න ඔයා ලග තියෙනව 4GB තරම් දැවැන්ත File එකක්.. මේක වෙන Computer එකකට ඔයාට ගෙනියන්න ඕනේ.. ඒකට ඉතින් Pen Drive එකක් තිබ්බොත් ඇතිනේ.. කරුමෙ කියන්නේ ඔයා ලග තියෙන්නේ 2GB Pen එකක්.. මලා දැන් කොහොමද අර File එක දාන්නේ.. Split කිරීම එහෙමත් නැත්තන් දත්ත කැඩීම ඕන වෙන්නේ මෙන්න මෙතනදී..Split කිරීමේදී අදාල දත්තය කුඩා කොටස් වලට කැබලි කරනව.. එක කෑල්ලක Size එක ඔයාට කල් තියාම තීරනය කරන්න පුලුවන්.. ඒ අනුව ඔයා CD එකකට නම් 700MB වෙන්න ප්‍රධාන ගොනුව, උප කොටස් වලට කැබලි කරන්න පුලුවන්.. 2GB පෙන් එකක් නම් ආසන්න වශයෙන් 1.7 GB වෙන්න කඩන්න පුලුවන්.. ඒ අනුව [4GB / 1.7GB = File 3ක් (ආසන්න වශයෙන්)] අපිට ගන්න පුලුවන්.. දැන් මේ දැවැන්ත File එක අවස්තා 3 කින් අපිට ගෙනයන්න පුලුවන් වෙනව නේද.. ඉතින් සමහරු Data Compression මගින් Compress කිරීමට වඩා එහා ගිය දේවල් කරගන්න තවත් අවස්තාවක් හැටියට මේ ක්‍රමය පෙන්වා දෙන්න පුලුවන්.

04.දත්ත ආරක්ශා කිරීමට.
දත්ත Compress කල පසු එය යලි Extract කලාම කලින් තිබූ දත්තය ලබා ගන්න පුලුවන්.. ඒත් Compress කිරීමේදී අපිට රහස් අංකයක් මගින් මේ සමස්ත file එකම lock කරන්න පුලුවන්.. ඉතින් ඔයාලට අමුතුවෙන් Folder Lock ඕන වෙන්නේ නෑ.. මේ විදියට දත්ත ආරක්ශාකරන්න පුලුවන් බවත් මතා තියා ගන්න.

05.දත්ත virus වලින් ආරක්ශා කිරීමට.
…විශේෂයෙන්ම Software වගේ ගත්තම ඒවායේ  Setup file, පරිගනක තුල නිකරුනේ තියන් ඉන්න එක මම අනුමත කරන්නේ නෑ කිසිම වෙලාවක. මොකද සමහර Virus වර්ග තියෙනව exe file තුලට ඇතුලු වෙන.. එතැන් පටන් විශ්වාසනීය Setup file එක නොදැනුවත්වම Virus එකක් බවට පත් වෙනව.. හොදම දේ DVD වලට ගහල පරිස්සමෙන් තියා ගන්න එක. ඉතින් සමහරු exe  Setup File ZIP හෝ RAR බවට පත් කරනව, මේ Virus වලින් බේරෙන්න.. හ්ම්.. නරකමත් නෑ වැඩේ.. තවත් හොදයි Password එකක් දාලම Compress කලා නම්..

දැන් ඔයාලට පැහැදිලි වෙන්න ඇති මූලික වශයෙන් මේ දත්ත Compress කිරීම මගින් අපිට අත්වෙන වාසි.

 ඇත්තටම File Compress කිරීමෙන් පසු එහි දාරිතාව පෙරට වඩා අඩු වීමක් දැක ගන්න පුලුවන්. සමහර වෙලාවට අපි කොච්චර සෙල්ලම් දාල Compress කලත් අපිට සෑහීමකට පත් වෙන්න පුලුවන් තරමට එම File එක හැකිලීමකට ලක් වෙන්නේ නැහැ. මේ හැම දේකට පිලි තුරු ඔයාලට මේ ලිපියේ අවසානයේ දැන ගන්න පුලුවන් වේවි.

කොහොමද මෙහෙම දත්තයක ප්‍රාමානය, එයට හානියක් ඇති නොවන විදියට අඩු කරගන්නේ.. ඇත්තටම බොහෝ වෙලාවට අපේ File වල අනවශ්‍ය ආකාරයට තොරතුරු තැම්පත් කරල තියෙනව.. නමුත් ඒ තොරතුරු ඒ විදියටම තියෙන්න ඕනේ.. ඒත් ඒව අනවශයයි.. මොකක්ද මේ හතර බීරි කතාව.. මේ බලන්නකො..

KAMAL LIKE TO APPLE,NIMAL LIKE TO ORANGE, BUT APPLE AND ORANGE NOT VEGETABLE.

බලන්නකො ඉහලින් මම ලියල තියෙන වාක්‍ය දිහා පොඩ්ඩක්.. බැලූ බැල්මට අපිට මේ වාක්‍යයේ අනවශ්‍ය දත්තයක් කියල දෙයක් නොපෙනෙන්නේ.. එමගින් අපිට හරියටම තොරතුරක් දෙන නිසා.. නමුත් මේක පරිගනකය පැත්තෙන් බැලුවම අනවශ්‍ය දත්ත ගොඩාක් තියෙනව..

මේ බලන්නකො..

KAMAL LIKE TO APPLE,NIMAL LIKE TO ORANGE, BUT APPLE AND ORANGE NOT VEGETABLE.

Apple කියන වචනය දෙවතාවක් යෙදිල.. Orange කියන වචනයත් එලසමයි.. Like කියන වදනත් දෙවතාවක් යෙදිල.. පොඩ්ඩක් හිතල බලන්න.. අපිට මේක පහසුවෙන් කියවගෙන යන්න පුලුවන් වාක්‍යක් උනාට මේ හැම අකුරකටම byte ගනනක මතකයක් පරිගනකයෙන් වෙන් කර ගන්නව නේද කියල.. 
අකුරකට විතරක් නෙමේ.. තිත කොමාව.. ඇයි Space. හිතන්න Apple කියන වචනය පරිගනකයේ byte 5 ක මතකයක් තුල තැම්පත් වෙනව කියල.. හොදා Apple ගැනම ලිව්ව පිටු 200 ක විතර Document එකක නිකමට හිතන්න Apple කියන වචනය කීපාරක් යලි යලිත් යෙදෙයිද (Repeat) කියල.. අපි හිතමු උපකල්පනය කරල 10,000 ක් විතර කියල.. එතකොට byte 5 හේ ඒවා 10,000.. ක් !! ආසන්න වශයෙන් 48.82 Kb ප්‍රමානයක්.. Compress වීමේදී එකම දත්තය යලි යලිත් එම document එක තුල ලිවීම නතර කරල එම දත්ත වල පිහිටීම පමනක් තබා ගන්නව. එතකොට Apple කියල  වචන 10000 ක් නෙමේ එක වචනයක් පමනක් තියා ගන්නව. අනිත් සියලුම අතිරික්ත වචන හලනව.. ඒ නිසා ගොනුවේ බර චුට්ටක් අඩු වෙනව.. මේ Apple කතාවෙදි නම් 48Kb තරම් ප්‍රමානයක් අඩුවෙනව.. එක වචනයකින් 48kb කියන්නේ ඉතින් හැම වචනයකින්ම එකතු උනාම සමස්තය විශාල ප්‍රමානයක් අඩුකරගන්න පුලුවන් වෙනවනේ..

මේ මම ඔයාලට තේරුම් ගන්න පුලුවන් සරල උදාහරනයකින් Compress වීමේ යාන්ත්‍රනය කියල දුන්න .. ඉතින් Text Document එකක් දිහාම බලන්න එපා... අනෙකුත් Data වලදීත් Compress වීමේ යාන්ත්‍රනය මීට බොහෝ සෙයින් සමානයි..
ඉතින් මම හිතනව Compress වීම සම්බන්දව ඔයාලට තරමක අවබෝදයක් දැන් ලැබිල ඇති.. Compress වීමේදී ප්‍රදාන ක්‍රම දෙකක් උපයෝගී කරගන්නව.. අපි තව ටිකක් මේ මාතෘකාවට ගැබුරින් බැහැල කතා කරමු.

Lossless Compression 

මෙහිදී තියෙන දත්ත වලට හානි නොවන විදියට තමයි Compress වීම සිදුවෙන්නේ.. ඒ කියන්නේ.. දත්ත හැකිලූ පසු එහි ප්‍රමානය අඩු වෙනව.. නමුත් යලි දත්ත ලබා ගැනීමේදී එම දත්ත වලට කිසිදු හානියක් වෙන්නේ නෑ.. 

ඔන්න ඔය පින්තූරෙ දිහා පොඩ්ඩක් බලන්නකෝ.. Build-inbox වලින් තමා සීන් එක කියල දෙන්න යන්නෙ.. මෙතන කෑලි කීයක් තියෙනවද බලන්නකො.. 10ක් තියෙනව.. හොදා Loss less ක්‍රමේදි හරි අපූරු වැඩක් වෙන්නෙ.. මම ඉස්සෙල්ලම කියල දුන්නෙත් මේ වගේම සිද්දියක් තමා.. මතකනේ Apple කතාව.. යලි යලිත් Repeat වෙන කොට ඒවා හානි නොවන විදියට අඩු කරන්න පුලුවන් ක්‍රම වේදයක් තමා Loss less කියන්නේ.. 

ඒ අනුව
RED BOX = 2
YELLOW BOX = 5
BLUE BOX = 3

ක් තියෙනවනේ..

දැන් ඕකම මේ පල්ලෙහා පින්තූරයේ විදියට හදනව.. 


තනි රතුපාට කෑල්ලක් යොදාගෙන කී වරක් එය Repeat වෙන්න ඕනෙද කියල ලබා දෙනව..
…කහ පාට කෑලි පහක් වෙනුවට එකක් පමනක් යොදාගෙන.. කීවරක් යලි යෙදෙන්න ඕනෙද කියල විතරක් ලබා දෙනව.. පරිගනකය කියන්නේ හරි අපූරු යන්ත්‍රයක්.. Duplicate ගහන එක එයාට අමාරු වැඩක් නෙමේ.. ඉතින් Repeat වෙන්න ඕන එක හදුන ගත්ත ගමන් එයා අදාල දත්තය Duplicate කරල යලි ප්‍රතිසැකසුමක් සිදුකරල කලින් තිබූ දත්තය හදා ගන්නව..

…මේකත් බලන්නකො.. 

 ffffffffffmmmmmbb

මෙතැන අකුරු 17ක් තියෙනව.. මේ ටිකම මෙන්න මෙහෙම ලිව්වොත් ?

f10m5b2

දැන් අකුරු 7යි... අකුරු 17 මම 7 කට අඩු කලා.. 

තේරුනා නේ වෙච්ච වැඩේ.. Loss Less ගැන දැන් ඔයාලට තරමක් හරි අවබෝද වෙන්න ඇති..

Lossy Compression

මේ Compress කරන තවත් ක්‍රමයක්.. මෙතනදි නම් දත්තය Compress වීමේදී කෑලි හලනව.. ආයේ එම දත්තයම ලබා ගැනීමේදී අපිට පෙර තිබූ දත්තයම යලි ලබා ගන්න බෑ.. නමුත් පෙර තිබූ දත්තයට වඩා හැකිලීමක් සිදුවුනා නේ.. මේ වගේ Compress කිරීමක් බොහෝවිට අපි සිදුකරන්නේ පිංතූර වලයි.. විශේෂයෙන්ම Upload කිරීමේදී පිංතූරවල සැබෑ.. Size එකට වඩා අඩුවීම ගොඩක් වටිනව.. 

 පිලි වෙලින් බලාගෙන එන්නකො මේ පිංතූරය දිහා.. බලන්න වමේ සිට දකුනට යන කොට එන්න එන්න පිංතූරයේ පැහැදිලි බාවය අඩු වෙනව.. ඒකට හේතුව එහි දත්ත බොහෝ සෙයින් හැලීමකට ලක් කරනවා.. නමුත් මේ ඔනෑම පිංතූරයක් මනුස්සයෙක්ට පෙන්නුවොත් කියන්නේ.. කනුවක් උඩ පූසෙක් ඉදන් ඉන්නව.. ඌ කලු සහ සුදු වර්නයෙන් යුක්තයි කියල.. පරිගනකයෙන් දත්ත හැලුවට මනුස්සයෙක්ට එහි හදුනා ගන්න පුලුවන් දෘශ්‍ය කොටස් සියල්ලම තියෙනව.. ඉතින් මොකටද අපි දුක් වෙන්නේ.. Lossy Compress ක්‍රමයත් වරදක් නෑ.. 

අවසාන වශයෙන් කියන්න දේවල් ටිකක් තියෙනව.. මේක මැජික් එකක් නෙමේ.. මෙතනදි යම්කිසි යාන්ත්‍රනයක් තියෙනව.. මේ යාන්ත්‍රනයට හසු වෙන දත්ත පහසුවෙන් හැකිලෙනව වගේම තමා යාන්ත්‍රනයට හසු නොවන දත්ත හැකිලෙන්නේ නැති විත්තිය.. ඉතින් දවස් දෙකක් තිස්සෙ ඔන්න මම ලිපියක් ලිව්ව.. මම හිතනව මේක ගොඩාක් ප්‍රොයෝජනවත් වෙය් කියල ඔයාලට..


 

 

 

 



Comments

appreciated bro ....great ....aththamai ochchara compress kalata win rar 7zip pawichchi kalata ada thama danagaththe me kriyawaliya wena akaraya ..thx bro
ඕනම දෙයක යාන්ත්‍රනය දැන ගත්තම අපිට එතනින් එහාට යමක් හිතන්න පුලුවන් වෙනව.. ඒකයි මම මේ වගේ ලිපි නිරන්තරයෙන් මගේ බ්ලොග් එක හරහා අරන් එන්නේ.. ඉතින් Software එකක් දාල Serial එකක් දෙනවට වඩා වටිනව කියල හිතනව ඒ වැඩේ..
Anonymous said…
Good post..
Unknown said…
ඇත්තටම නියම ලිපියක් අය්යේ..... වැදගත් ......