Hacker News

በመረጣ እና በዲስክ መካከል ሶስት መሸጎጫዎች

በመረጣ እና በዲስክ መካከል ሶስት መሸጎጫዎች ይህ አሰሳ ጠቀሜታውን እና ሊፈጥር የሚችለውን ተፅእኖ በመመርመር ወደ ሶስት ጠልቋል። ዋና ፅንሰ-ሀሳቦች ተሸፍነዋል ይህ ይዘት የሚከተሉትን ይመረምራል፡- መሰረታዊ መርሆች እና ንድፈ ሐሳቦች ተግባራዊ...

1 min read Via frn.sh

Mewayz Team

Editorial Team

Hacker News

የእርስዎ መተግበሪያ የምረጥ መግለጫ ሲያወጣ፣ መጠይቁ የሚሽከረከር ዲስክን ወይም ጥሬ ፍላሽ ማከማቻን በጭራሽ አይነካውም - በሦስት የተለያዩ የመሸጎጫ ንብርብሮች ውስጥ ያልፋል፣ ይህም ምላሽዎ በማይክሮ ሰከንድ ወይም በሚሊሰከንዶች ነው። እነዚህን ንብርብሮች መረዳት ያለልፋት በሚመዘን የንግድ መድረክ እና በእውነተኛው ዓለም ሸክም ውስጥ በሚዘጋ መካከል ያለው ልዩነት ነው።

የመምረጥ መጠይቅ ከመተግበሪያዎ የሚወጣበት ጊዜ ምን ይሆናል?

መተግበሪያዎ የምረጥ ጥያቄን በላከ ቁጥር ብዙ ገንቢዎች በጭራሽ አይፈትሹትም። የመረጃ ቋቱ ሞተር ማንኛውም I/O ከመከሰቱ በፊት ጥያቄውን ይቋረጣል፣ SQL ን ወደ የውስጥ ማስፈጸሚያ እቅድ በመተንተን ወዲያውኑ የመጀመሪያውን የመከላከያ መስመር ያማክራል-የጥያቄው ውጤት መሸጎጫ። ተመሳሳይ መመዘኛዎች ያሉት ተመሳሳይ መጠይቅ በቅርብ ጊዜ ከተከናወነ ሞተሩ አንድ ነጠላ ገጽ ውሂብ ሳይነካ የተሸጎጠ የውጤት ስብስብ መመለስ ይችላል። ይህ አንዳንድ ጊዜ የጥያቄ መሸጎጫወይም የውጤት መሸጎጫ ተብሎ ይጠራል፣ እና በከፍተኛ የተነበቡ ዝቅተኛ-ጽሑፍ የስራ ጫናዎች ላይ - እንደ የትንታኔ ዳሽቦርዶች እና የሪፖርት ማቅረቢያ ሞጁሎች - አብዛኛዎቹን የዲስክ ንባብ ሙሉ በሙሉ ያስወግዳል።

እዚህ ያለው ወሳኝ ግንዛቤ የመጠይቁ መሸጎጫ ለውሂብ ሚውቴሽን በጣም ሚስጥራዊነት ያለው መሆኑ ነው። ከስር ሠንጠረዥ ጋር የሚጻረር ማንኛውም አስገባአዘምን ወይም ሰርዝ ተዛማጅ የሆኑ የተሸጎጡ ውጤቶችን ይሰርዛል። ለዚህም ነው ጻፍ-ከባድ የግብይት ስርዓቶች ብዙውን ጊዜ የመጠይቁን መሸጎጫ ሙሉ በሙሉ ያሰናክሉት እና በምትኩ በጥልቅ ንብርብሮች ላይ ይተማመናሉ።

ማቋቋሚያ ገንዳ ምንድን ነው እና እርስዎ ከሚያስቡት በላይ ለምን አስፈላጊ ነው?

ሁለተኛው የመሸጎጫ ንብርብር - እና በአመራረት ስርዓቶች ውስጥ በጣም አስፈላጊው ሊባል ይችላል - የማቆያ ገንዳ ነው (በ PostgreSQL ውስጥ ያለው የተጋራ ማቋቋሚያ ይባላል፣ በ MySQL ውስጥ የ InnoDB ቋት ገንዳ)። ይህ የመረጃ ቋቱ ሞተር በቅርብ ጊዜ የተገኙ የውሂብ ገጾችን ለመያዝ የሚጠቀምበት የ RAM ክልል ነው። ከውጤት መሸጎጫ መጠይቁን ማቅረብ በማይቻልበት ጊዜ ሞተሩ ማንኛውንም የዲስክ ንባብ ከመውጣቱ በፊት የሚፈለጉት የመረጃ ገፆች በመጠባበቂያ ገንዳ ውስጥ መኖራቸውን ያረጋግጣል።

የማቋቋሚያ ገንዳው በጊዜያዊ እና በቦታ አካባቢ መርህ ነው የሚሰራው፡ በቅርብ ጊዜ የተደረሰው ውሂብ እንደገና ሊደረስበት ይችላል፣ እና በተደረሰው መረጃ አጠገብ የተከማቸ ውሂብ በቅርቡ ሊደረስበት ይችላል። የመረጃ ቋት አስተዳዳሪዎች ከሚያደርጉት ከፍተኛ ጥቅም የማዋቀር ውሳኔዎች እንደ አንዱ የመጠባበቂያ ገንዳ መጠንን ያስተካክላሉ። በጣም ትንሽ የሆነ ቋት ገንዳ የማያቋርጥ ገጽ ማስወጣትን ያስከትላል፣ይህም ክስተትመምታትየሚባል ክስተት ይፈጥራል፣ይህም ስርዓቱ ጥያቄዎችን ከመፈፀም ይልቅ መሸጎጫዎችን በማስተዳደር የበለጠ ጊዜ የሚወስድበት ነው።

ቁልፍ ግንዛቤ፡ በአብዛኛዎቹ የOLTP የስራ ጫናዎች፣ ጥሩ መጠን ያለው ቋት ገንዳ ማለት ከ95–99% የሚነበበው መረጃ ከ RAM ነው የሚቀርበው። የሚሠራው ስብስብ - የጥያቄዎችዎ ንዑስ ክፍል በትክክል በተደጋጋሚ የሚነካው - ብዙ ጊዜ ከጠቅላላው የውሂብ ጎታ መጠን በጣም ያነሰ ነው። የመያዣ ገንዳዎን ልክ ከስራ ስብስብዎ ጋር እንዲመጣጠን ማድረግ እንጂ ከጠቅላላው የውሂብ ስብስብዎ ጋር እንዲመጣጠን ማድረግ ብቸኛው ከፍተኛ ተመላሽ የማስተካከል እርምጃ ነው።

የስርዓተ ክወናው መሸጎጫ በ RAM እና በዲስክ መካከል ያለውን ክፍተት እንዴት ይሞላል?

የመረጃ ቋቱ የራሱ ቋት ገንዳ ሲቀር ጥያቄው ለእውነተኛ ዲስክ ለማንበብ ገና አልታደለም። ኦፐሬቲንግ ሲስተሙ የገጽ መሸጎጫ(እንዲሁም የፋይል ሲስተም መሸጎጫ ተብሎም ይጠራል) ያቆያል፣ በከርነል የሚተዳደር ራም ክልል፣ ቋት የሚያነብ እና የሚጽፍ መሳሪያዎችን ለማገድ። የመረጃ ቋቱ ኢንጂን ከመጠባበቂያ ገንዳው ውስጥ የሌለ ገጽ ሲጠይቅ፣ የስርዓተ ክወናው ኮርነል ለማከማቻ መቆጣጠሪያው አካላዊ የ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 →

ይህ ሦስተኛው ንብርብር በአብዛኛው ለመተግበሪያ ገንቢዎች የማይታይ ነው ነገር ግን የውሂብ ጎታ ቋት ገንዳ ባልተዘጋጀባቸው ስርዓቶች ላይ በጣም አስፈላጊ ነው። የስርዓተ ክወናው ገጽ መሸጎጫ በሁሉም ሂደቶች የተጋራ ነው፣ ስለዚህ ከእርስዎ መተግበሪያ አገልጋይ፣ የድር አገልጋይ እና በተመሳሳይ አስተናጋጅ ላይ ከሚሰሩ ማናቸውም ሶፍትዌሮች ጋር ይወዳደራል። በልዩ የውሂብ ጎታ አገልጋዮች ላይ ይህ ውድድር በጣም አናሳ ነው፣ እና የስርዓተ ክወናው መሸጎጫ ትርጉም ያለው የሁለተኛ ዕድል ቋት ይሰጣል። በተጋሩ አስተናጋጆች ወይም ኮንቴይነሮች ላይ ጥብቅ የማህደረ ትውስታ ገደቦች፣ የስርዓተ ክወናው መሸጎጫ ለማገዝ ብዙ ጊዜ በጣም ትንሽ ነው።

በተግባር ውስጥ ለአብዛኛው አፈጻጸም የትኛው የመሸጎጫ ንብርብር ተጠያቂ ነው?

በገሃዱ አለም የምርት ስርዓቶች፣ ቋት ገንዳ የአፈጻጸም ውጤቶችን በሰፊ ህዳግ ይቆጣጠራል። በአጠቃቀም ጉዳዮች ላይ እያንዳንዱ ሽፋን በተለያየ መንገድ የሚያበረክተው ለዚህ ነው፡

  • የመጠይቅ ውጤት መሸጎጫ፡ ከፍተኛው ጥቅማ ንባብ ከባድ በሆኑ፣ በአብዛኛው የማይለዋወጡ የውሂብ ስብስቦች — መጠይቆችን ሪፖርት ማድረግ፣ የተሸጎጡ ዳሽቦርዶች፣ ይፋዊ ይዘት የመጨረሻ ነጥቦች። ጻፍ-ከባድ ጠረጴዛዎች ላይ ጥቅም የለውም።
  • የውሂብ ጎታ ቋት ገንዳ፡ ሁለንተናዊ የስራ ፈረስ። እያንዳንዱ የምርት ዳታቤዝ አገልጋይ መጀመሪያ እዚህ መስተካከል አለበት። ሁለቱንም በዘፈቀደ እና በቅደም ተከተል የመዳረሻ ንድፎችን በብቃት ይቆጣጠራል።
  • የስርዓተ ክወናው ገጽ መሸጎጫ፡ የመያዣ ገንዳው መጠኑ ሲቀንስ የደህንነት መረብን ያቀርባል። እንዲሁም ትኩስ ገጾችን ከመያዣ ገንዳው ላይ የሚያስወጡትን ትላልቅ ጠረጴዛዎች በቅደም ተከተል ሲቃኙ በከፍተኛ ሁኔታ ይረዳል።
  • የማከማቻ ተቆጣጣሪ መሸጎጫ (የሃርድዌር ንብርብር)፡ አራተኛው፣ ብዙ ጊዜ የማይታለፍ ንብርብር — NVMe SSDs እና RAID ተቆጣጣሪዎች በባትሪ ወይም በ capacitor መጠባበቂያ ላይ መሸጎጫዎችን ይጽፋሉ። ይህ በfsync መዘግየት ወጪ የፅሁፍ መጠንን ሳይቀንስ ዘላቂነትን ይከላከላል።
  • መተግበሪያ-ንብርብር መሸጎጫ (Redis፣ Memcached): ሙሉ በሙሉ ከመረጃ ቋቱ በላይ ተቀምጧል፣ ተከታታይ የጥያቄ ውጤቶችን ወይም የተቆጠሩ ነገሮችን በመሸጎጥ የውሂብ ጎታውን በጭራሽ ላለመምታት - በሺዎች ለሚቆጠሩ በተመሳሳይ ጊዜ ተጠቃሚዎችን ለሚያገለግሉ ለብዙ ተከራይ የሳኤኤስ መድረኮች ተስማሚ።

ዘመናዊ የንግድ መድረኮች መሸጎጫ አርክቴክቸርን ለአስተማማኝነት በመጠን እንዴት መጠቀም ይችላሉ?

በብዙ ሞጁሎች ውስጥ ለሚሰሩ ንግዶች - CRM ፣ የፕሮጀክት አስተዳደር ፣ ኢ-ኮሜርስ ፣ ትንታኔ - የመሸጎጫ አርክቴክቸር ቡድኖች እያደጉ ሲሄዱ የመድረክ ምላሽን በቀጥታ ይወስናል። በደንብ በተሸፈነው የመሸጎጫ ስልት ላይ የተገነቡ መድረኮች ተመጣጣኝ የመሠረተ ልማት ወጪ ሳይኖር በአስር ሺዎች ለሚቆጠሩ በተመሳሳይ ጊዜ ተጠቃሚዎችን ሊያገለግል ይችላል። ዋናው ነገር የመሸጎጫ ድንበሮችን የሚያከብሩ የውሂብ መዳረሻ ቅጦችን መንደፍ ነው፡ ትኩስ መረጃዎችን ትንሽ እና የመዳረሻ ንድፎችን ሊተነበይ የሚችል፣ የተገለበጡ ቅጂዎችን በመጠቀም የማከማቻ ገንዳ ጭነት ለማሰራጨት እና እንደ Redis ያለ የመተግበሪያ-ንብርብር መሸጎጫ ከመረጃ ቋቱ ፊት ለፊት ለብዙ ተጠቃሚዎች ተመሳሳይ ውሂብ በአንድ ጊዜ የሚያገለግሉ የመጨረሻ ነጥቦችን ማስቀመጥ ነው።

መዋይዝ የተነደፈው በትክክል ይህንን ፍልስፍና በማሰብ ነው። ከ138,000 በላይ ተጠቃሚዎችን በሚሰጡ 207 የተቀናጁ የንግድ ሞጁሎች ፣ የመድረክ ዳታ ንብርብር የተነደፈው አብዛኛው ንባብ ከመሸጎጫ ነው - የምላሽ ሰአቶችን በፍጥነት ጠብቆ ማቆየት እና የመሠረተ ልማት ወጪዎች በ$19/ወር ማስጀመሪያ ዕቅድ ወይም በ$49/በወር ፕሮፌሽናል ደረጃ ላይ እየሰሩ እንደሆነ ሊገመቱ ይችላሉ።

ብዙ ጊዜ የሚጠየቁ ጥያቄዎች

የመጠይቁን መሸጎጫ ማሰናከል ሁልጊዜ የውሂብ ጎታ አፈጻጸምን ያሻሽላል?

ሁልጊዜ አይደለም፣ ነገር ግን ለጽሑፍ-ከባድ የሥራ ጫናዎች በተለምዶ ይሠራል። የጥያቄው መሸጎጫ ወጥነትን ለመጠበቅ ዓለም አቀፋዊ ሙቴክስ ያስፈልገዋል፣ ይህም በከፍተኛ ተጓዳኝነት ስር ማነቆ ይሆናል። MySQL 8.0 የጥያቄ መሸጎጫውን ሙሉ በሙሉ በዚህ ምክንያት አስወግዷል። PostgreSQL በመጠባበቂያ ገንዳ እና በመተግበሪያ-ንብርብር መሸጎጫ ላይ በመተማመን አብሮ የተሰራ የጥያቄ መሸጎጫ በጭራሽ አልተጠቀመም። የእርስዎ የተነበበ-ለመጻፍ ምጥጥን ከፍ ያለ ከሆነ እና ጥያቄዎችዎ በጣም የሚደጋገሙ ከሆነ፣ የጥያቄ መሸጎጫ እውነተኛ ጥቅማ ጥቅሞችን ሊያመጣ ይችላል - ያለበለዚያ ያንን የማስተካከያ ጥረት በመጠባበቂያ ገንዳ ውስጥ ያስገቡ።

የእኔ መያዣ ገንዳ በትክክል መመዘኑን እንዴት አውቃለሁ?

የእርስዎን ቋት ገንዳ ምት ምጥጥን ይቆጣጠሩ፡ ከመዋኛ ገንዳው የሚቀርቡት የገጽ ጥያቄዎች መቶኛ እና የዲስክ ንባብ ከሚያስፈልጋቸው ጋር። በ OLTP የስራ ጫና ላይ ከ95% በታች የሆነ የውድድር መጠን የመዋኛ ገንዳውን መጠን ለመጨመር ምልክት ነው። በ MySQL ውስጥ፣ ENGINE INNODB STATUS ያሳዩን ይጠይቁ እና የመጠባበቂያ ገንዳውን የመምታት መጠን ይመልከቱ። በPostgreSQL፣ የpg_statio_user_tables እይታ ከዲስክ የተነበቡ ክምር ብሎኮችን ከማጠራቀሚያ ገንዳ የሚቀርቡትን ያጋልጣል። ሙሉ የስራ ስብስብዎን - ሙሉ የውሂብ ስብስብዎን ሳይሆን - በ RAM ውስጥ እንዲኖር ለማድረግ ዓላማ ያድርጉ።

በመሸጎጫ ንብርብሮች እና በብዙ ተከራይ የሳአኤስ አስተማማኝነት መካከል ያለው ግንኙነት ምንድን ነው?

በብዙ ተከራይ ሳአኤስ ውስጥ፣ የመሸጎጫ ንብርብሮች የአንድ ተከራይ ከባድ መጠይቅ ሸክም ለሌሎች ተከራዮች ሁሉ አፈጻጸምን የሚቀንስ "ጫጫታ ያለው ጎረቤት" ችግሮችን ይከላከላል። ተከራይን ጠንቅቆ የሚያውቅ የመተግበሪያ መሸጎጫ በቲቲኤል ላይ የተመሰረተ ተቀባይነት የሌለው የያንዳንዱ ተከራይ ትኩስ መረጃ በሬዲስ ውስጥ ያስቀምጣል፣ ይህም ከትላልቅ ሂሳቦች የሚመጣውን የማከማቻ ገንዳ ግፊት በእጅጉ ይቀንሳል። በመረጃ ቋት-ደረጃ ግንኙነት መዋሃድ ከሞቀ ቋት ገንዳ ጋር ተደምሮ ከየትኛውም አካውንት የፈነዳ እንቅስቃሴ የጋራ ገጾችን ከመሸጎጫ እንደማያጸዳ እና በመድረክ ላይ የቆይታ ጊዜ እንዲፈጠር ያደርጋል።


የመሸጎጫ ንብርብሮች የውሂብ ጎታ ተራ ነገሮች አይደሉም - እነሱ በፍጥነት የሚቆዩ መድረኮችን የማያቋርጥ የመሠረተ ልማት እሳት ማጥፋትን ከሚፈልጉ የሚለያዩ የሕንፃ መሠረቶች ናቸው። ለእነዚህ እውነታዎች አስቀድሞ የተመቻቸ መድረክ የሚያስፈልገው ንግድ እየገነቡ ወይም እየሰሩ ከሆነ፣Mewayzን app.mewayz.com ላይ ያስሱ — 207 ሞጁሎች፣ አንድ ወጥ መድረክ ነው፣ ይህም ከመጀመሪያው ተጠቃሚዎ እስከ መቶ ሺህዎ ድረስ በአስተማማኝ ሁኔታ ለመስራት የተሰራ።

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Related Guide

HR Management Guide →

Manage your team effectively: employee profiles, leave management, payroll, and performance reviews.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime