Select සහ Disk අතර Cache Layers තුනක්
Select සහ Disk අතර Cache Layers තුනක් මෙම ගවේෂණය එහි වැදගත්කම සහ විභව බලපෑම පරීක්ෂා කරමින් තුනකට ගවේෂණය කරයි. මූලික සංකල්ප ආවරණය කර ඇත මෙම අන්තර්ගතය ගවේෂණය කරයි: මූලික මූලධර්ම සහ න්යායන් ප්රායෝගික...
Mewayz Team
Editorial Team
ඔබේ යෙදුම SELECT ප්රකාශයක් නිකුත් කරන විට, එම විමසුම කිසිවිටකත් පාහේ කැරකෙන තැටියක් හෝ raw flash ගබඩාවක් ස්පර්ශ නොකරයි - එය ඔබේ ප්රතිචාරය මයික්රෝ තත්පර හෝ මිලි තත්පර වලින් පැමිණේදැයි නිශ්ශබ්දව තීරණය කරන වෙනස් හැඹිලි ස්ථර තුනක් හරහා ගමන් කරයි. මෙම ස්ථර අවබෝධ කර ගැනීම ව්යාපාරික වේදිකාවක් වෙහෙසකින් තොරව පරිමාණය කරන අතර සැබෑ ලෝක බර යටතේ බකල් එකක් අතර වෙනස වේ.
තේරීම් විමසුමක් ඔබගේ යෙදුමෙන් පිටවන මොහොතේ කුමක් සිදුවේද?
ඔබේ යෙදුම SELECT විමසුමක් යවන මොහොතේ, එය බොහෝ සංවර්ධකයින් කිසිදා පරීක්ෂා නොකරන නල මාර්ගයකට ඇතුල් වේ. දත්ත සමුදා එන්ජිම කිසියම් I/O සිදුවීමට පෙර ඉල්ලීමට බාධා කරයි, SQL අභ්යන්තර ක්රියාත්මක කිරීමේ සැලැස්මකට විග්රහ කර වහාම එහි පළමු ආරක්ෂක පේළිය විමසයි: විමසුම් ප්රතිඵල හැඹිලිය. සමාන පරාමිති සහිත සමාන විමසුමක් මෑතකදී ක්රියාත්මක කළේ නම්, එන්ජිමට දත්ත එක් පිටුවක් ස්පර්ශ නොකර හැඹිලිගත ප්රතිඵල කට්ටලයක් ආපසු ලබා දිය හැක. මෙය සමහර විට විමසුම් හැඹිලිය හෝ ප්රතිඵල හැඹිලිය ලෙස හඳුන්වනු ලබන අතර, විශ්ලේෂණ උපකරණ පුවරු සහ වාර්තාකරණ මොඩියුල වැනි ඉහළ-කියවන, අඩු-ලිවීමේ වැඩ බර මත - එය තැටි කියවීම්වලින් අතිමහත් බහුතරයක් සම්පූර්ණයෙන්ම ඉවත් කළ හැක.
මෙහි ඇති තීරණාත්මක අවබෝධය නම් විමසුම් හැඹිලිය දත්ත විකෘති වලට ඉතා සංවේදී වීමයි. යටින් පවතින වගුවට එරෙහිව ඕනෑම ඇතුළු කරන්න, UPDATE, හෝ DELETE අදාළ හැඹිලිගත ප්රතිඵල අවලංගු කරයි. ලිවීමට බර ගනුදෙනු පද්ධති බොහෝ විට විමසුම් හැඹිලිය සම්පූර්ණයෙන්ම අක්රිය කරන අතර ඒ වෙනුවට ගැඹුරු ස්ථර මත රඳා පවතින්නේ මේ නිසාය.
බෆර් සංචිතය යනු කුමක්ද සහ ඔබ සිතනවාට වඩා එය වැදගත් වන්නේ ඇයි?
දෙවන හැඹිලි ස්තරය — සහ නිෂ්පාදන පද්ධතිවල වඩාත්ම වැදගත් වන්නේ — බෆර් සංචිතය (PostgreSQL හි හවුල් බෆරය ලෙස හැඳින්වේ, MySQL හි InnoDB බෆර සංචිතය). මෙය මෑතකදී ප්රවේශ වූ දත්ත පිටු රඳවා ගැනීමට දත්ත සමුදා එන්ජිම භාවිතා කරන RAM ප්රදේශයකි. ප්රතිඵල හැඹිලියෙන් විමසුමක් ලබා දීමට නොහැකි වූ විට, කිසියම් තැටි කියවීමක් නිකුත් කිරීමට පෙර අවශ්ය දත්ත පිටු දැනටමත් බෆර සංචිතයේ තිබේද යන්න එන්ජිම පරීක්ෂා කරයි.
බෆර් සංචිතය තාවකාලික සහ අවකාශීය ප්රදේශයේ මූලධර්මය මත ක්රියාත්මක වේ: මෑතකදී ප්රවේශ වූ දත්ත නැවත ප්රවේශ වීමට ඉඩ ඇති අතර ප්රවේශ වූ දත්ත අසල ගබඩා කර ඇති දත්ත ඉක්මනින් ප්රවේශ වීමට ඉඩ ඇත. දත්ත සමුදා පරිපාලකයින් ඔවුන් විසින් ගන්නා ඉහළම උත්තෝලන වින්යාස තීරණ වලින් එකක් ලෙස බෆර සංචිතයේ ප්රමාණය සුසර කරයි. ඉතා කුඩා වන බෆර සංචිතයක් නිරන්තර පිටු ඉවත් කිරීමට හේතු වේ, thrashing නම් සංසිද්ධියක් ඇති කරයි, එහිදී පද්ධතිය විමසුම් ක්රියාත්මක කිරීමට වඩා හැඹිලි මඟ හැරීම් කළමනාකරණය කිරීමට වැඩි කාලයක් ගත කරයි.
ප්රධාන තීක්ෂ්ණ බුද්ධිය: බොහෝ OLTP කාර්ය භාරයන්හි, මනා ප්රමාණයේ බෆර සංචිතයක් යනු සියලු දත්ත කියවීම්වලින් 95-99%ක් RAM වෙතින් සපයනු ලැබේ. වැඩ කරන කට්ටලය - ඔබගේ දත්තවල උප කුලකයක් වන විමසුම් නිතර නිතර ස්පර්ශ වේ - බොහෝ විට මුළු දත්ත සමුදා ප්රමාණයට වඩා කුඩා වේ. ඔබගේ සම්පූර්ණ දත්ත කට්ටලය නොව, ඔබගේ වැඩ කරන කට්ටලයට ගැලපෙන පරිදි ඔබගේ ස්වාරක්ෂක සංචිතය ප්රමාණය කිරීම, ඔබට ගත හැකි තනි ඉහලම ප්රතිලාභ සුසර කිරීමේ ක්රියාවයි.
Operating System Cache RAM සහ Disk අතර පරතරය පුරවන්නේ කෙසේද?
දත්ත සමුදායේ බෆර සංචිතය මග හැරුණු විට පවා, සත්ය තැටියක් කියවීම සඳහා විමසුමක් තවමත් නියම කර නොමැත. මෙහෙයුම් පද්ධතිය පිටු හැඹිලියක් (ගොනු පද්ධති හැඹිලි ලෙසද හැඳින්වේ), උපාංග අවහිර කිරීම සඳහා කියවීම් සහ ලිවීම් බෆර කරන කර්නලයෙන් කළමනා කරන ලද RAM කලාපයක් පවත්වාගෙන යයි. දත්ත සමුදා එන්ජිම එහි බෆර සංචිතයෙන් නොමැති පිටුවක් ඉල්ලා සිටින විට, OS කර්නලය ගබඩා පාලකයට භෞතික I/O විධානයක් නිකුත් කිරීමට පෙර එහිම පිටු හැඹිලිය පරීක්ෂා කරයි.
💡 DID YOU KNOW?
Mewayz replaces 8+ business tools in one platform
CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.
Start Free →මෙම තෙවන ස්ථරය යෙදුම් සංවර්ධකයින්ට බොහෝ දුරට නොපෙනෙන නමුත් දත්ත සමුදා බෆර සංචිතය අඩු ප්රතිපාදන ලබා දී ඇති පද්ධති මත ඉතා වැදගත් වේ. OS පිටු හැඹිලිය සියලුම ක්රියාවලීන් හරහා බෙදාගෙන ඇත, එබැවින් එය ඔබගේ යෙදුම් සේවාදායකය, වෙබ් සේවාදායකය සහ එකම සත්කාරකයේ ක්රියාත්මක වන වෙනත් ඕනෑම මෘදුකාංගයක් සමඟ තරඟ කරයි. කැපවූ දත්ත සමුදා සේවාදායකයන් මත, මෙම තරඟය අවම වන අතර, OS හැඹිලිය අර්ථවත් දෙවන අවස්ථා බෆරයක් සපයයි. දැඩි මතක සීමාවන් සහිත හවුල් ධාරක හෝ බහාලුම්වල, OS හැඹිලිය උපකාර කිරීමට බොහෝ විට කුඩා වේ.
ප්රායෝගිකව වැඩි කාර්ය සාධන ජයග්රහණ සඳහා වගකිව යුතු හැඹිලි ස්ථරය කුමක්ද?
සැබෑ-ලෝක නිෂ්පාදන පද්ධති තුළ, ස්වාරක්ෂක සංචිතය පුළුල් ආන්තිකයකින් කාර්ය සාධන ප්රතිඵල මත ආධිපත්යය දරයි. භාවිත අවස්ථා හරහා එක් එක් ස්ථරය වෙනස් ලෙස දායක වන්නේ මන්ද යන්නයි:
- විමසුම් ප්රතිඵල හැඹිලිය: කියවීමට බර, බොහෝ විට ස්ථිතික දත්ත කට්ටලවල ඉහළම ප්රතිලාභය — විමසුම් වාර්තා කිරීම, හැඹිලිගත උපකරණ පුවරු, පොදු අන්තර්ගත අන්ත ලක්ෂ්ය. ලිවීමට බර වගු මත නිෂ්ඵලයි.
- දත්ත සමුදාය බෆර සංචිතය: විශ්ව වැඩ අශ්වයා. සෑම නිෂ්පාදන දත්ත සමුදා සේවාදායකයක්ම පළමුව මෙහි සුසර කළ යුතුය. අහඹු සහ අනුක්රමික ප්රවේශ රටා දෙකම කාර්යක්ෂමව හසුරුවයි.
- OS පිටු හැඹිලිය: බෆර සංචිතය ප්රමාණයෙන් අඩු වූ විට ආරක්ෂිත දැලක් සපයයි. බෆර සංචිතයෙන් උණුසුම් පිටු ඉවත් කරන විශාල වගු අනුක්රමික ස්කෑන් කිරීමේදී ද සැලකිය යුතු ලෙස උපකාරී වේ.
- ගබඩා පාලක හැඹිලිය (දෘඪාංග ස්තරය): හතරවන, බොහෝ විට නොසලකා හරින ලද ස්ථරය - NVMe SSDs සහ RAID පාලකයන් බැටරි හෝ ධාරිත්රක උපස්ථයක් සමඟින් ඔන්බෝඩ් ලිවීමේ හැඹිලි පවත්වාගෙන යයි. මෙය fsync ප්රමාදයේ වියදමින් ලිවීමේ ප්රතිදානය කැප නොකර කල්පැවැත්ම ආරක්ෂා කරයි.
- යෙදුම්-ස්ථර හැඹිලිය (Redis, Memcached): දත්ත සමුදායට මුලුමනින්ම ඉහලින් හිඳ, අනුක්රමික විමසුම් ප්රතිඵල හෝ දත්ත සමුදායට කිසිසේත්ම වැදීමෙන් වැළකීම සඳහා පරිගණකගත වස්තූන් හැඹිලිගත කරයි — දහස් ගණනක් සමගාමී පරිශීලකයින්ට සේවා සපයන බහු-කුලී SaaS වේදිකා සඳහා වඩාත් සුදුසුය.
නවීන ව්යාපාර වේදිකා පරිමාණයෙන් විශ්වසනීයත්වය සඳහා හැඹිලි ගෘහ නිර්මාණ ශිල්පය උත්තේජනය කරන්නේ කෙසේද?
බොහෝ ක්රියාකාරී මොඩියුල හරහා ක්රියාත්මක වන ව්යාපාර සඳහා - CRM, ව්යාපෘති කළමනාකරණය, ඊ-වාණිජ්යය, විශ්ලේෂණ - හැඹිලි ගෘහ නිර්මාණ ශිල්පය කණ්ඩායම් වර්ධනය වන විට වේදිකා ප්රතිචාර දැක්වීම කෙලින්ම තීරණය කරයි. හොඳින් ස්ථර කළ හැඹිලි උපාය මාර්ගයක් මත ගොඩනගා ඇති වේදිකාවන්ට සමානුපාතික යටිතල පහසුකම් පිරිවැයකින් තොරව සමගාමී පරිශීලකයින් දස දහස් ගණනකට සේවය කළ හැකිය. ප්රධාන වන්නේ හැඹිලි සීමාවලට ගරු කරන දත්ත ප්රවේශ රටා සැලසුම් කිරීමයි: උණුසුම් දත්ත කුඩාව තබා ගැනීම සහ ප්රවේශ රටා පුරෝකථනය කළ හැකි වීම, බෆර සංචිත භාරය බෙදා හැරීම සඳහා කියවීමේ අනුරූ භාවිතා කිරීම සහ බහු පරිශීලකයින්ට එකවර සමාන දත්ත සපයන අන්ත ලක්ෂ්ය සඳහා දත්ත සමුදාය ඉදිරිපිට Redis වැනි යෙදුම් ස්ථර හැඹිලි ස්ථානගත කිරීම.
මෙවේස් ගෘහනිර්මාණ කර ඇත්තේ හරියටම මෙම දර්ශනය මනසේ තබාගෙනය. ඒකාබද්ධ ව්යාපාරික මොඩියුල 207ක් සමඟින් පරිශීලකයින් 138,000කට අධික සංඛ්යාවක් බලගන්වන පරිදි වේදිකාවේ දත්ත ස්තරය සැලසුම් කර ඇත්තේ කියවීම්වලින් වැඩි ප්රමාණයක් හැඹිලියෙන් ලබා දෙන ලෙසයි - ප්රතිචාර වේලාවන් වේගවත්ව තබා ගනිමින් සහ යටිතල පහසුකම් පිරිවැය ඔබ දුවන්නේ $19/මස ආරම්භක සැලැස්ම හෝ $49/මාසයේ වෘත්තීය මට්ටමේද යන්න පුරෝකථනය කළ හැකිය.
නිතර අසන ප්රශ්න
විමසුම් හැඹිලිය අක්රිය කිරීම සැමවිටම දත්ත සමුදායේ ක්රියාකාරිත්වය වැඩි දියුණු කරයිද?
සෑම විටම නොවේ, නමුත් ලිවීමට අධික වැඩ බරක් සඳහා එය සාමාන්යයෙන් සිදු කරයි. විමසුම් හැඹිලියට අනුකූලතාව පවත්වා ගැනීමට ගෝලීය mutex අවශ්ය වේ, එය ඉහළ සමගාමීත්වය යටතේ බාධාවක් බවට පත් වේ. MySQL 8.0 මෙම හේතුව නිසා විමසුම් හැඹිලිය සම්පූර්ණයෙන්ම ඉවත් කර ඇත. PostgreSQL කිසි විටෙක නිර්මිත විමසුම් හැඹිලියක් ක්රියාත්මක නොකළ අතර, ඒ වෙනුවට බෆර සංචිතය සහ යෙදුම්-ස්ථර හැඹිලිය මත රඳා පවතී. ඔබේ කියවීමට ලිවීමට අනුපාතය ඉහළ නම් සහ ඔබේ විමසුම් ඉතා පුනරාවර්තනය වන්නේ නම්, විමසුම් හැඹිලියකට සැබෑ වාසි ලබා දිය හැකිය - එසේ නොමැති නම්, එම සුසර කිරීමේ උත්සාහය බෆර සංචිතයේ ආයෝජනය කරන්න.
මගේ ස්වාරක්ෂක තටාකයේ ප්රමාණය නිවැරදි දැයි මම දැන ගන්නේ කෙසේද?
ඔබගේ බෆර සංචිත පහර අනුපාතය නිරීක්ෂණය කරන්න: තැටි කියවීම අවශ්ය වන ඒවාට සාපේක්ෂව සංචිතයෙන් සපයන ලද පිටු ඉල්ලීම් ප්රතිශතය. OLTP කාර්ය භාරයක 95%ට අඩු පහර අනුපාතයක් තටාකයේ ප්රමාණය වැඩි කිරීමට සංඥාවක් වේ. MySQL හි, Show Engine INNODB STATUS විමසා buffer pool hit rate බලන්න. PostgreSQL හි, pg_statio_user_tables දසුන මඟින් බෆර සංචිතයෙන් සේවය කරන ලද තැටියෙන් කියවන ගොඩවල් කුට්ටි නිරාවරණය කරයි. ඔබේ සම්පූර්ණ වැඩ කරන කට්ටලය — ඔබේ සම්පූර්ණ දත්ත කට්ටලය නොව — RAM හි පදිංචිව තබා ගැනීමට ඉලක්ක කරන්න.
හැඹිලි ස්ථර සහ බහු කුලී SaaS විශ්වසනීයත්වය අතර සම්බන්ධය කුමක්ද?
බහු කුලී නිවැසියන් SaaS හි, එක් කුලී නිවැසියෙකුගේ අධික විමසුම් බර අනෙකුත් සියලුම කුලී නිවැසියන් සඳහා කාර්ය සාධනය පිරිහෙන "ඝෝෂාකාරී අසල්වැසි" ගැටළු හැඹිලි ස්ථර වලක්වයි. TTL-පාදක අවලංගු කිරීම් සමඟ කුලී නිවැසියන් දැනුවත් යෙදුම් හැඹිලි කිරීම Redis හි එක් කුලී නිවැසියෙකුට උණුසුම් දත්ත තබා ගනී, විශාල ගිණුම් වලින් බෆර සංචිත පීඩනය දැඩි ලෙස අඩු කරයි. උණුසුම් බෆර සංචිතයක් සමඟ ඒකාබද්ධ වූ දත්ත සමුදා මට්ටමේ සම්බන්ධතා සංචිතය මඟින් ඕනෑම තනි ගිණුමකින් සිදු වන පිපිරුම් ක්රියාකාරකම් හැඹිලියෙන් බෙදා ගත් පිටු ඉවත් නොකිරීම සහ වේදිකාව පුරා ප්රමාදයන් ඇති කිරීම සහතික කරයි.
හැඹිලි ස්ථර යනු දත්ත සමුදාය සුළු දෙයක් නොවේ - ඒවා නිරන්තර යටිතල පහසුකම් ගිනි නිවීම අවශ්ය වේදිකා වලින් පරිමාණයෙන් වේගයෙන් පවතින වේදිකා වෙන් කරන වාස්තු විද්යාත්මක පදනම වේ. ඔබ මෙම යථාර්ථයන් සඳහා දැනටමත් ප්රශස්ත කළ වේදිකාවක් අවශ්ය ව්යාපාරයක් ගොඩනඟන්නේ නම් හෝ පවත්වාගෙන යන්නේ නම්, App.mewayz.com හි Mewayz ගවේෂණය කරන්න — 207 මොඩියුල, ඔබේ පළමු පරිශීලකයාගේ සිට ඔබේ ලක්ෂය දක්වා විශ්වාසදායක ලෙස ක්රියා කිරීම සඳහා ගොඩනගා ඇති එක් සුසංයෝගී වේදිකාවක්.
We use cookies to improve your experience and analyze site traffic. Cookie Policy