PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

የሪፖርቱን ግልባጭ እንዲያነቡ ሀሳብ አቀርባለሁ አሌክሲ ሌሶቭስኪ ከ Data Egret "የ PostgreSQL ክትትል መሰረታዊ ነገሮች"

በዚህ ዘገባ ውስጥ አሌክሲ ሌሶቭስኪ ስለ ፖስትግሬስ ስታቲስቲክስ ዋና ዋና ነጥቦች, ምን ማለት እንደሆነ እና ለምን በክትትል ውስጥ መካተት እንዳለባቸው ይናገራሉ; በክትትል ውስጥ ምን ቻርቶች መሆን እንዳለባቸው፣ እንዴት እንደሚታከሉ እና እንዴት እንደሚተረጉሙ። ሪፖርቱ ለፖስትግሬስ መላ ፍለጋ ለሚፈልጉ የውሂብ ጎታ አስተዳዳሪዎች፣ የስርዓት አስተዳዳሪዎች እና ገንቢዎች ጠቃሚ ይሆናል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ስሜ Alexey Lesovsky እባላለሁ, እኔ Data Egret እወክላለሁ.

ስለ ራሴ ጥቂት ቃላት። የጀመርኩት ከረጅም ጊዜ በፊት እንደ ስርዓት አስተዳዳሪ ነው።

ሁሉንም አይነት ሊኑክስ አስተዳድራለሁ፣ ከሊኑክስ ጋር የተያያዙ የተለያዩ ነገሮችን ሰርቻለሁ፣ ማለትም ቨርቹዋልላይዜሽን፣ ክትትል፣ ከፕሮክሲዎች ጋር ሰርቻለሁ፣ ወዘተ. ነገር ግን የሆነ ጊዜ ላይ በዳታቤዝ (PostgreSQL) ላይ የበለጠ ተሳትፎ ጀመርኩ። በጣም ወደድኩት። እና በአንድ ወቅት፣ አብዛኛውን የስራ ሰዓቴን ከ PostgreSQL ጋር መገናኘት ጀመርኩ። እናም ቀስ በቀስ የ PostgreSQL DBA ሆንኩ።

እና በሙያዬ ውስጥ ሁል ጊዜ በስታቲስቲክስ ፣ በክትትል ፣ በቴሌሜትሪ ርዕሶች ላይ ፍላጎት ነበረኝ። እና የስርዓት አስተዳዳሪ በነበርኩበት ጊዜ በዛቢክስ ላይ ጠንክሬ እሰራ ነበር። እና እንደ ትንሽ የስክሪፕት ስብስብ ጻፈ zabbix-ቅጥያዎች. በዘመኑ በጣም ተወዳጅ ነበር። እና እዚያም ሊኑክስን ብቻ ሳይሆን የተለያዩ አካላትን በጣም የተለያዩ አስፈላጊ ነገሮችን መከታተል ተችሏል.

አሁን PostgreSQL እየሰራሁ ነው። ከPostgreSQL ስታቲስቲክስ ጋር እንዲሰሩ የሚያስችልዎ ሌላ ነገር እየጻፍኩ ነው። ይባላል pgCenter (በሀብሬ ላይ ያለው ጽሑፍ - Postgres ስታቲስቲክስ ያለ ነርቮች እና ውጥረት).

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ትንሽ መግቢያ። ከደንበኞቻችን፣ ከደንበኞቻችን ጋር ምን አይነት ሁኔታዎች አሉ? ከመረጃ ቋቱ ጋር የተያያዘ አንድ ዓይነት አደጋ አለ። እናም የመረጃ ቋቱ ቀድሞውኑ ወደነበረበት ሲመለስ የመምሪያው ኃላፊ ወይም የልማት ኃላፊው መጥቶ “ጓደኞች ፣ የውሂብ ጎታውን መከታተል አለብን ፣ ምክንያቱም አንድ መጥፎ ነገር ስለተፈጠረ እና ለወደፊቱ ይህ እንዳይከሰት አስፈላጊ ነው” ብለዋል ። እና ዳታቤዝዎን - PostgreSQL ፣ MySQL ወይም አንዳንድ ሌሎችን መከታተል እንዲችሉ የክትትል ስርዓትን የመምረጥ ወይም ያለውን የክትትል ስርዓት የማላመድ አስደሳች ሂደት እዚህ ይጀምራል። እና ባልደረቦች ማቅረብ ጀመሩ፡- “እንዲህ ያለ እና እንደዚህ ያለ የውሂብ ጎታ እንዳለ ሰምቻለሁ። እንጠቀምበት።" ባልደረቦች እርስ በርስ መጨቃጨቅ ይጀምራሉ. እና በመጨረሻ አንድ ዓይነት የውሂብ ጎታ እንመርጣለን ፣ ግን የ PostgreSQL ክትትል በእሱ ውስጥ በደካማ ሁኔታ ተወክሏል እና ሁል ጊዜ አንድ ነገር መጨረስ አለብን። አንዳንድ ማከማቻዎችን ከ GitHub ውሰዱ፣ ጠርገሯቸው፣ ስክሪፕቶችን ማላመድ፣ በሆነ መንገድ አስተካክሏቸው። እና በመጨረሻ ወደ አንድ ዓይነት የእጅ ሥራ ይወድቃል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ስለዚህ, በዚህ ዘገባ ውስጥ, ለ PostgreSQL ብቻ ሳይሆን ለዳታቤዝ ጭምር ክትትልን እንዴት እንደሚመርጡ አንዳንድ እውቀትን ልሰጥዎ እሞክራለሁ. እና ከሱ የተወሰነ ጥቅም ለማግኘት ክትትልዎን እንዲጨርሱ የሚያስችልዎትን እውቀት ለመስጠት፣በጊዜ ውስጥ ሊፈጠሩ የሚችሉ ማናቸውንም መጪ ድንገተኛ ሁኔታዎች ለመከላከል የውሂብ ጎታዎን ከጥቅማጥቅም ጋር መከታተል ይችላሉ።

እና በዚህ ሪፖርት ውስጥ ያሉት ሐሳቦች፣ DBMS ወይም noSQL ቢሆን ከማንኛውም የውሂብ ጎታ ጋር በቀጥታ ሊጣጣሙ ይችላሉ። ስለዚህ, እዚህ PostgreSQL ብቻ ሳይሆን, በ PostgreSQL ውስጥ ይህን እንዴት ማድረግ እንደሚቻል ብዙ የምግብ አዘገጃጀት መመሪያዎች ይኖራሉ. PostgreSQL ለክትትል ያለው የጥያቄዎች ምሳሌዎች፣የህግ አካላት ምሳሌዎች ይኖራሉ። እና የእርስዎ DBMS በክትትል ውስጥ እንዲያስቀምጧቸው የሚፈቅዱ ተመሳሳይ ነገሮች ካሉት፣ እርስዎም ማስተካከል፣ ማከል ይችላሉ እና ጥሩ ይሆናል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪሪፖርት አላደርግም።
መለኪያዎችን እንዴት ማድረስ እና ማከማቸት እንደሚችሉ ይናገሩ። ስለድህረ-ሂደት ውሂብ እና ለተጠቃሚው ስለመስጠት ምንም አልናገርም። እና ስለ ማስጠንቀቅ ምንም አልናገርም።
ነገር ግን በታሪኩ ሂደት የተለያዩ የክትትል ምስሎችን አሳይሻለሁ ፣ በሆነ መንገድ እነሱን እወቅሳቸዋለሁ። ቢሆንም፣ ለእነዚህ ምርቶች ማስታወቂያ ወይም ፀረ-ማስታወቂያ ላለመፍጠር ብራንዶችን ላለመጥቀስ እሞክራለሁ። ስለዚህ፣ ሁሉም በአጋጣሚዎች የዘፈቀደ ናቸው እና በምናባችሁ ላይ ይቆያሉ።
PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
በመጀመሪያ, ክትትል ምን እንደሆነ እንረዳ. ክትትል ማድረግ በጣም አስፈላጊ ነገር ነው. ይህንን ሁሉም ሰው ይረዳል። ነገር ግን በተመሳሳይ ጊዜ ክትትል ከንግድ ምርት ጋር የተገናኘ አይደለም እና የኩባንያውን ትርፍ በቀጥታ አይጎዳውም, ስለዚህ ክትትል ሁልጊዜ በቀሪው መሰረት ይሰጣል. ጊዜ ካለን በክትትል ውስጥ ተሰማርተናል፣ ጊዜ ከሌለ እሺ፣ ወደ ኋላ መዝገብ ውስጥ እናስቀምጠው እና አንድ ቀን ወደ እነዚህ ተግባራት እንመለሳለን።

ስለዚህ ከልምዳችን ወደ ደንበኞች ስንመጣ ክትትል ብዙ ጊዜ ያልዳበረ እና በመረጃ ቋቱ የተሻለ ስራ እንድንሰራ የሚያግዙን ምንም አይነት አስደሳች ነገሮች የሉትም። እና ስለዚህ ክትትል ሁልጊዜ መጨረስ አለበት.

ዳታቤዝ እንደዚህ ያሉ ውስብስብ ነገሮች ናቸው እርስዎም መከታተል ያለብዎት ምክንያቱም የውሂብ ጎታዎች የመረጃ ማከማቻ ናቸው። እና መረጃው ለኩባንያው በጣም አስፈላጊ ነው, በማንኛውም መንገድ ሊጠፋ አይችልም. ግን በተመሳሳይ ጊዜ የውሂብ ጎታዎች በጣም ውስብስብ የሶፍትዌር ክፍሎች ናቸው. እነሱ ከብዙ ክፍሎች የተሠሩ ናቸው. እና ከእነዚህ ክፍሎች ውስጥ ብዙዎቹ ክትትል ሊደረግባቸው ይገባል.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪስለ PostgreSQL በተለይ እየተነጋገርን ከሆነ ፣ እሱ ብዙ ቁጥር ያላቸውን አካላት ያካተተ እንደ መርሃግብር ሊወከል ይችላል። እነዚህ ክፍሎች እርስ በርስ ይገናኛሉ. እና በተመሳሳይ ጊዜ ፣ ​​PostgreSQL ስታትስቲክስ ሰብሳቢ ንዑስ ስርዓት ተብሎ የሚጠራው አለው ፣ ይህም ስለ እነዚህ ንዑስ ስርዓቶች አሠራር ስታቲስቲክስን ለመሰብሰብ እና ለአስተዳዳሪው ወይም ለተጠቃሚው እነዚህን ስታቲስቲክስ ለማየት እንዲችል በይነገጽ እንዲያቀርቡ ያስችልዎታል።

ይህ ስታቲስቲክስ በአንዳንድ የተግባሮች ስብስብ እና እይታ (እይታ) መልክ ቀርቧል። በተጨማሪም ጠረጴዛዎች ተብለው ሊጠሩ ይችላሉ. ማለትም፣ መደበኛ የpsql ደንበኛን በመጠቀም ከመረጃ ቋቱ ጋር መገናኘት፣እነዚህን ተግባራት እና እይታዎች መምረጥ እና ስለ PostgreSQL ንኡስ ስርዓቶች አሰራር የተወሰኑ ቁጥሮችን ማግኘት ይችላሉ።

እነዚህን ቁጥሮች ወደ እርስዎ ተወዳጅ የክትትል ስርዓት ማከል, ግራፎችን መሳል, ባህሪያትን ማከል እና በረጅም ጊዜ ውስጥ ትንታኔዎችን ማግኘት ይችላሉ.

ነገር ግን በዚህ ዘገባ ውስጥ እነዚህን ሁሉ ተግባራት ያለ ምንም ልዩነት አልሸፍንም, ምክንያቱም አንድ ሙሉ ቀን ሊወስድ ይችላል. በጥሬው ሁለት፣ ሶስት ወይም አራት ነገሮችን እጠቅሳለሁ እና ክትትልን የተሻለ ለማድረግ እንዴት እንደሚረዱ እነግርዎታለሁ።
PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
እና የውሂብ ጎታውን ስለመቆጣጠር ከተነጋገርን, ምን ክትትል ሊደረግበት ይገባል? በመጀመሪያ ደረጃ ተገኝነትን መከታተል አለብን ምክንያቱም የመረጃ ቋቱ ለደንበኞች መረጃን የሚያቀርብ አገልግሎት ስለሆነ እና ተገኝነትን መከታተል አለብን, እንዲሁም አንዳንድ የጥራት እና የመጠን ባህሪያትን ያቀርባል.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ከመረጃ ቋታችን ጋር የሚገናኙትን ደንበኞቻችንንም መከታተል አለብን ምክንያቱም ሁለቱም መደበኛ ደንበኞች ሊሆኑ እና የውሂብ ጎታውን ሊጎዱ የሚችሉ ጎጂ ደንበኞች ሊሆኑ ይችላሉ። በተጨማሪም ክትትል እና ክትትል ያስፈልጋቸዋል.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ደንበኞች ከመረጃ ቋቱ ጋር ሲገናኙ ከኛ መረጃ ጋር መስራት መጀመራቸው ግልፅ ነው ስለዚህ ደንበኞቻችን ከውሂብ ጋር እንዴት እንደሚሰሩ መከታተል አለብን፡ ከየትኞቹ ሰንጠረዦች ጋር በመጠኑም ቢሆን ከየትኛዎቹ ኢንዴክሶች ጋር። ማለትም በደንበኞቻችን የተፈጠረውን የሥራ ጫና መገምገም አለብን።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ግን የሥራ ጫናው በእርግጥ ጥያቄዎችን ያካትታል። አፕሊኬሽኖች ከመረጃ ቋቱ ጋር ይገናኛሉ፣ መጠይቆችን በመጠቀም መረጃን ያገኛሉ፣ ስለዚህ በመረጃ ቋቱ ውስጥ ያሉን ጥያቄዎችን መገምገም ፣ በቂ መሆናቸውን መከታተል ፣ በትክክል አለመፃፍ ፣ አንዳንድ አማራጮች በፍጥነት እንዲሰሩ እንደገና መፃፍ እና መደረግ አለባቸው ። እና በተሻለ አፈፃፀም.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እና ስለ የውሂብ ጎታ እየተነጋገርን ስለሆነ, የውሂብ ጎታ ሁልጊዜ የጀርባ ሂደቶች ናቸው. የበስተጀርባ ሂደቶች የውሂብ ጎታውን አፈፃፀም በጥሩ ደረጃ ያቆያሉ, ስለዚህ ለማሄድ የተወሰነ መጠን ያለው ግብዓቶች ያስፈልጋቸዋል. እና በተመሳሳይ ጊዜ, ከደንበኛ ጥያቄ ሀብቶች ጋር መደራረብ ይችላሉ, ስለዚህ የጀርባ ሂደቶች ስግብግብ ስራ የደንበኛ ጥያቄዎችን አፈፃፀም ላይ በቀጥታ ሊጎዳ ይችላል. ስለዚህ ከበስተጀርባ ሂደቶች ጋር ምንም አይነት የተዛባ እንዳይኖር ክትትል እና ክትትል ያስፈልጋቸዋል.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እና ያ ሁሉ ከመረጃ ቋት ክትትል አንጻር በስርዓት መለኪያ ውስጥ ይቀራል። ነገር ግን በአብዛኛው የእኛ መሠረተ ልማቶች ወደ ደመናዎች ስለሚሄዱ የአንድ ግለሰብ አስተናጋጅ የሥርዓት መለኪያዎች ሁልጊዜ ወደ ከበስተጀርባ ይለፋሉ. ግን በመረጃ ቋቶች ውስጥ አሁንም ጠቃሚ ናቸው እና በእርግጥ የስርዓት መለኪያዎችን መከታተል አስፈላጊ ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በስርዓት መለኪያዎች, ሁሉም ነገር ብዙ ወይም ያነሰ ጥሩ ነው, ሁሉም ዘመናዊ የክትትል ስርዓቶች እነዚህን መለኪያዎች አስቀድመው ይደግፋሉ, ነገር ግን በአጠቃላይ አንዳንድ ክፍሎች አሁንም በቂ አይደሉም እና አንዳንድ ነገሮች መጨመር አለባቸው. እኔም እነሱን እነካቸዋለሁ, ብዙ ስላይዶች ስለእነሱ ይሆናሉ.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
የዕቅዱ የመጀመሪያ ነጥብ ተደራሽነት ነው። ተደራሽነት ምንድን ነው? በእኔ ግንዛቤ ውስጥ መገኘት የመሠረቱ ግንኙነቶችን የማገልገል ችሎታ ነው ፣ ማለትም ፣ መሠረቱ ይነሳል ፣ እሱ ፣ እንደ አገልግሎት ፣ ከደንበኞች ግንኙነቶችን ይቀበላል። እና ይህ ተደራሽነት በአንዳንድ ባህሪያት ሊገመገም ይችላል. እነዚህ ባህሪያት በዳሽቦርዶች ላይ ለማሳየት በጣም ምቹ ናቸው.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
ዳሽቦርዶች ምን እንደሆኑ ሁሉም ሰው ያውቃል። ይህ አስፈላጊውን መረጃ ጠቅለል አድርጎ በማያ ገጹ ላይ አንድ ጊዜ ሲመለከቱ ነው። እና በመረጃ ቋቱ ውስጥ ችግር አለ ወይም አለመኖሩን ወዲያውኑ መወሰን ይችላሉ።
በዚህ መሠረት የመረጃ ቋቱ እና ሌሎች ቁልፍ ባህሪዎች መገኘት ሁል ጊዜ በዳሽቦርድ ላይ መቀመጥ አለባቸው ስለዚህ ይህ መረጃ ሁል ጊዜ ከእርስዎ ጋር ነው። አንዳንድ ተጨማሪ ዝርዝሮች በአደጋዎች ምርመራ ፣ በአንዳንድ የድንገተኛ ሁኔታዎች ምርመራ ፣ ቀድሞውኑ በሁለተኛ ደረጃ ዳሽቦርዶች ላይ መቀመጥ አለባቸው ፣ ወይም ወደ የሶስተኛ ወገን የክትትል ስርዓቶች በሚመሩ መሰርሰሪያ አገናኞች ውስጥ ተደብቀዋል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

የአንድ የታወቀ የክትትል ስርዓት ምሳሌ. ይህ በጣም ጥሩ የክትትል ስርዓት ነው. ብዙ መረጃዎችን ይሰበስባል, ነገር ግን በእኔ እይታ, ስለ ዳሽቦርዶች እንግዳ ጽንሰ-ሀሳብ አለው. "ዳሽቦርድ ፍጠር" አገናኝ አለ. ዳሽቦርድ ሲፈጥሩ ግን ባለ ሁለት አምድ ዝርዝር፣ የገበታዎች ዝርዝር ይፈጥራሉ። እና የሆነ ነገር ማየት ሲፈልጉ, ጠቅ ማድረግ, ማሸብለል, የተፈለገውን ገበታ በመዳፊት መፈለግ ይጀምራሉ. እና ይሄ ጊዜ ይወስዳል, ማለትም እንደዚህ ያሉ ዳሽቦርዶች የሉም. የግራፎች ዝርዝሮች ብቻ አሉ።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ወደ እነዚህ ዳሽቦርዶች ምን መጨመር አለበት? እንደ ምላሽ ጊዜ ባለው ባህሪ መጀመር ይችላሉ. PostgreSQL የpg_stat_statements እይታ አለው። በነባሪነት ተሰናክሏል፣ ነገር ግን ሁልጊዜ መንቃት እና ጥቅም ላይ መዋል ከሚገባቸው አስፈላጊ የስርዓት እይታዎች አንዱ ነው። በመረጃ ቋቱ ውስጥ ስለተፈጸሙት ሁሉም አሂድ መጠይቆች መረጃን ያከማቻል።

በዚህ መሠረት የጥያቄዎችን አጠቃላይ የአፈፃፀም ጊዜ ወስደን ከላይ የተጠቀሱትን መስኮች በመጠቀም በጥያቄዎች ብዛት መከፋፈል ከመቻሉ መጀመር እንችላለን ። ነገር ግን ይህ በሆስፒታሉ ውስጥ አማካይ የሙቀት መጠን ነው. በሌሎች መስኮች ላይ መገንባት እንችላለን - አነስተኛው የጥያቄ አፈፃፀም ጊዜ ፣ ​​ከፍተኛው እና መካከለኛ። እና እኛ እንኳን መቶኛዎችን መገንባት እንችላለን ፣ PostgreSQL ለዚህ ተጓዳኝ ተግባራት አሉት። እና የውሂብ ጎታችን ቀደም ሲል ለተጠናቀቁ ጥያቄዎች የምላሽ ጊዜን የሚያሳዩ አንዳንድ ቁጥሮች ማግኘት እንችላለን ማለትም የውሸት '1 ምረጥ' ጥያቄን አንፈፅም እና የምላሽ ሰዓቱን አንመለከትም፣ ነገር ግን ቀደም ሲል ለተጠናቀቁት ጥያቄዎች የምላሽ ጊዜን እንመረምራለን እና አንዱን እንሳል የተለየ ምስል, ወይም በእሱ ላይ በመመስረት ግራፍ እንገነባለን.

በተጨማሪም ስርዓቱ በአሁኑ ጊዜ እያመነጨ ያለውን የስህተት ብዛት መከታተል አስፈላጊ ነው. ለዚህ ደግሞ የpg_stat_database እይታን መጠቀም ትችላለህ። የ xact_rollback መስክ ላይ እያነጣጠርን ነው። ይህ መስክ በመረጃ ቋቱ ውስጥ የሚከሰቱትን መልሶ ማግኘቶች ቁጥር ብቻ ሳይሆን የስህተቶችን ብዛት ግምት ውስጥ ያስገባል። በአንፃራዊነት፣ ይህን አሃዝ በእኛ ዳሽቦርድ ውስጥ ማሳየት እና በአሁኑ ጊዜ ስንት ስህተቶች እንዳሉን ማየት እንችላለን። ብዙ ስህተቶች ካሉ, ይህ ቀድሞውኑ ወደ ምዝግብ ማስታወሻዎች ውስጥ ለመመልከት እና ምን አይነት ስህተቶች እንዳሉ እና ለምን እንደሚከሰቱ ለማየት እና ከዚያም ኢንቬስት ለማድረግ እና ለመፍታት ጥሩ ምክንያት ነው.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እንደ ታኮሜትር ያለ ነገር ማከል ይችላሉ. እነዚህ በሴኮንድ የግብይቶች ብዛት እና በሴኮንድ የጥያቄዎች ብዛት ናቸው። በአንፃራዊነት፣ እነዚህን ቁጥሮች እንደ የውሂብ ጎታህ ወቅታዊ አፈጻጸም ልትጠቀምባቸው ትችላለህ እና በጥያቄዎች ላይ ከፍተኛ ጫናዎች መኖራቸውን፣ የግብይቶች ከፍተኛ ደረጃዎች፣ ወይም በተቃራኒው የውሂብ ጎታው ከስር ተጭኗል ምክንያቱም የሆነ የኋላ ታሪክ ስለወደቀ ነው። ይህንን ምስል ሁል ጊዜ ማየት እና ለፕሮጀክታችን እንዲህ ዓይነቱ አፈፃፀም የተለመደ መሆኑን ማስታወስ አስፈላጊ ነው ፣ እና ከላይ እና ከዚያ በታች ያሉት እሴቶች ቀድሞውኑ አንዳንድ ችግሮች እና ለመረዳት የማይችሉ ናቸው ፣ ይህ ማለት ለምን እንደዚህ ያሉ ቁጥሮች ማየት አለብን ማለት ነው ። .

የግብይቱን ብዛት ለመገመት የpg_stat_database እይታን እንደገና መመልከት እንችላለን። የግብይቶችን ብዛት በሰከንድ ለማግኘት የግብይቶችን ቁጥር እና የተመለሱትን ቁጥር ማከል እንችላለን።

ብዙ ጥያቄዎች ከአንድ ግብይት ጋር ሊጣጣሙ እንደሚችሉ ሁሉም ሰው ያውቃል? ስለዚህ TPS እና QPS ትንሽ የተለያዩ ናቸው።

የጥያቄዎች ብዛት በሰከንድ ከpg_stat_statements ሊገኝ ይችላል እና የሁሉም የተፈጸሙ ጥያቄዎች ድምርን በቀላሉ ያሰሉ። አሁን ያለውን ዋጋ ከቀዳሚው ጋር በማነፃፀር፣ በመቀነስ፣ ዴልታ አግኝተን መጠኑን እንደምናገኝ ግልጽ ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ከፈለጉ ተጨማሪ መለኪያዎችን ማከል ይችላሉ፣ ይህም የውሂብ ጎታችንን ተገኝነት ለመገምገም እና ማንኛውም የእረፍት ጊዜ ካለ ለመከታተል ይረዳል።

ከነዚህ መለኪያዎች ውስጥ አንዱ የሰአት ጊዜ ነው። ነገር ግን በ PostgreSQL ውስጥ ያለው የጊዜ ቆይታ ትንሽ አስቸጋሪ ነው። ምክንያቱን እነግራችኋለሁ። PostgreSQL ሲጀምር የስራ ሰዓትን ሪፖርት ማድረግ ይጀምራል። ነገር ግን አንዳንድ ጊዜ ለምሳሌ አንዳንድ ስራዎች በምሽት እየሰሩ ከሆነ የ OOM ገዳይ መጣ እና የ PostgreSQL የልጅ ሂደትን በግዳጅ ካቋረጠ, በዚህ ሁኔታ PostgreSQL የሁሉንም ደንበኞች ግንኙነት ያቋርጣል, የተበላሸውን የማስታወሻ ቦታ እንደገና ያስጀምራል እና ከማገገም ይጀምራል. የመጨረሻው የፍተሻ ነጥብ. እና ይህ ከፍተሻ ነጥቡ ማገገም ሲቆይ, የውሂብ ጎታ ግንኙነቶችን አይቀበልም, ማለትም, ይህ ሁኔታ እንደ የእረፍት ጊዜ ሊቆጠር ይችላል. ነገር ግን ይህ የሰዓት ቆጣሪውን ዳግም አያስጀምርም ፣ ምክንያቱም ፖስታ ቤቱ ከመጀመሪያው ጊዜ ጀምሮ የጀመረበትን ጊዜ ግምት ውስጥ ያስገባል። ስለዚህ, እንደዚህ ያሉ ሁኔታዎች ሊዘለሉ ይችላሉ.

እንዲሁም የቫኩም ሰራተኞችን ቁጥር መከታተል አለብዎት. በ PostgreSQL ውስጥ አውቶቫክዩም ምን እንደሆነ ሁሉም ሰው ያውቃል? ይህ በ PostgreSQL ውስጥ አስደሳች ንዑስ ስርዓት ነው። ስለ እሱ ብዙ ጽሑፎች ተጽፈዋል ፣ ብዙ ሪፖርቶች ተደርገዋል። ስለ ቫክዩም ፣ እንዴት መሥራት እንዳለበት ብዙ ውይይት። ብዙዎች እንደ አስፈላጊ ክፋት ይቆጥሩታል። ግን ነው። ይህ በየትኛውም ግብይቶች የማይፈለጉትን ጊዜ ያለፈባቸውን የረድፎች ስሪቶች የሚያጸዳ እና በጠረጴዛዎች እና በመረጃዎች ውስጥ ለአዳዲስ ረድፎች ቦታን ነፃ የሚያደርግ አንድ ዓይነት ቆሻሻ ሰብሳቢ ነው።

ለምን ክትትል ሊደረግበት ይገባል? ምክንያቱም ቫክዩም አንዳንድ ጊዜ በጣም ይጎዳል. ከፍተኛ መጠን ያለው ሀብቶችን ያጠፋል እና የደንበኛ ጥያቄዎች በዚህ መሰቃየት ይጀምራሉ.

እና በሚቀጥለው ክፍል ስለምናገረው በpg_stat_activity እይታ በኩል ክትትል ሊደረግበት ይገባል። ይህ እይታ በመረጃ ቋቱ ውስጥ ያለውን የአሁኑን እንቅስቃሴ ያሳያል። እና በዚህ እንቅስቃሴ፣ አሁን እየሰሩ ያሉትን የቫኩም ብዛት መከታተል እንችላለን። ቫክዩም (vacuums) መከታተል እና ከገደቡ ካለፍን፣ ይህ የPostgreSQL ቅንብሮችን ለመመልከት እና የቫኩም አሠራሩን ለማመቻቸት አጋጣሚ መሆኑን ማየት እንችላለን።

ሌላው የ PostgreSQL ባህሪ PostgreSQL በረጅም ግብይቶች በጣም የታመመ መሆኑ ነው። በተለይም ለረጅም ጊዜ ከተንጠለጠሉ እና ምንም ሳያደርጉ ከሚደረጉ ግብይቶች. እነዚህ ስታትስቲክስ ስራ ፈት-በግብይት የሚባሉት ናቸው። እንዲህ ዓይነቱ ግብይት መቆለፊያዎችን ይይዛል, ቫክዩም እንዳይሠራ ይከላከላል. እና በውጤቱም - ጠረጴዛዎቹ ያበጡ, መጠኑ ይጨምራሉ. እና ከእነዚህ ሰንጠረዦች ጋር አብረው የሚሰሩ መጠይቆች በዝግታ መስራት ይጀምራሉ, ምክንያቱም ሁሉንም የረድፎች ስሪቶች ከማስታወሻ ወደ ዲስክ እና ከኋላ አካፋ ማድረግ ያስፈልግዎታል. ስለዚህ፣ ጊዜ፣ የረዥም ግብይቶች ቆይታ፣ ረጅሙ የቫኩም ጥያቄዎችም ክትትል ያስፈልጋቸዋል። እና ለ OLTP ጭነት ከ 10-20-30 ደቂቃዎች በላይ ለረጅም ጊዜ ሲሰሩ የቆዩ አንዳንድ ሂደቶችን ከተመለከትን ለእነሱ ትኩረት መስጠት እና እንዲጨርሱ ማስገደድ ወይም መተግበሪያውን ማመቻቸት አለብን ። አልተጠሩም እና ይህን ያህል ጊዜ አይሰቅሉም. ለትንታኔ ጭነት, ከ10-20-30 ደቂቃዎች የተለመደ ነው, ረዘም ያሉም አሉ.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
በመቀጠል ከተገናኙ ደንበኞች ጋር አማራጭ አለን. አስቀድመን ዳሽቦርድ ስንመሠርት፣ ቁልፍ የተደራሽነት መለኪያዎችን በላዩ ላይ ለጥፈን፣ ስለተገናኙ ደንበኞች ተጨማሪ መረጃ ማከል እንችላለን።

ስለ የተገናኙ ደንበኞች ያለው መረጃ አስፈላጊ ነው, ምክንያቱም ከ PostgreSQL እይታ አንጻር, የተለያዩ አይነት ደንበኞች አሉ. ጥሩ ደንበኞች አሉ እና መጥፎ ደንበኞች አሉ.

ቀላል ምሳሌ። ደንበኛ ስል አፕሊኬሽኑን ማለቴ ነው። አፕሊኬሽኑ ከመረጃ ቋቱ ጋር ተገናኝቷል እና ወዲያውኑ ጥያቄዎቹን ወደዚያ መላክ ይጀምራል ፣መረጃ ቋቱ ሂደቱን ያከናውናል እና ያስፈጽማል እና ውጤቱን ለደንበኛው ይመልሳል። እነዚህ ጥሩ እና ትክክለኛ ደንበኞች ናቸው.

ደንበኛው የተገናኘባቸው ሁኔታዎች አሉ, ግንኙነቱን ያቆያል, ነገር ግን ምንም አያደርግም. ስራ ፈት ባለ ሁኔታ ውስጥ ነው።

ግን መጥፎ ደንበኞች አሉ. ለምሳሌ, ተመሳሳዩ ደንበኛ ተገናኝቷል, ግብይት ከፍቷል, በመረጃ ቋቱ ውስጥ የሆነ ነገር አደረገ እና ከዚያም ወደ ኮዱ ውስጥ ገባ, ለምሳሌ የውጭ ምንጭ ለማግኘት ወይም እዚያ የተቀበለውን ውሂብ ለማስኬድ. ግን በተመሳሳይ ጊዜ ግብይቱን አልዘጋውም. እና ግብይቱ በመረጃ ቋቱ ውስጥ ተንጠልጥሎ በመስመሩ ላይ መቆለፊያውን ይይዛል። ይህ መጥፎ ሁኔታ ነው. እና ትግበራው በድንገት በውስጡ የሆነ ቦታ በልዩ ሁኔታ ቢወድቅ (ልዩ) ፣ ከዚያ ግብይቱ ለረጅም ጊዜ ክፍት ሆኖ ሊቆይ ይችላል። እና ይሄ በቀጥታ የ PostgreSQL አፈጻጸም ላይ ተጽዕኖ ያሳድራል። PostgreSQL በዝግታ ይሰራል። ስለዚህ, እንደዚህ አይነት ደንበኞችን በጊዜ መከታተል እና ስራቸውን በግዳጅ ማቆም አስፈላጊ ነው. እና እንደዚህ አይነት ሁኔታዎች እንዳይኖሩ ማመልከቻዎን ማመቻቸት ያስፈልግዎታል.

ሌሎች መጥፎ ደንበኞች ደንበኞችን እየጠበቁ ናቸው. ነገር ግን በሁኔታዎች ምክንያት መጥፎ ይሆናሉ. ለምሳሌ ቀላል የስራ ፈት ግብይት፡ ግብይት ሊከፍት ይችላል፣ በአንዳንድ መስመሮች ላይ መቆለፊያዎችን ይወስዳል፣ ከዚያም በኮዱ ውስጥ የሆነ ቦታ ይወድቃል፣ የተንጠለጠለ ግብይት ይተወዋል። ሌላ ደንበኛ ይመጣል፣ ተመሳሳዩን ውሂብ ይጠይቁ፣ ነገር ግን መቆለፊያ ያጋጥመዋል፣ ምክንያቱም የተንጠለጠለበት ግብይት አስቀድሞ አንዳንድ አስፈላጊ ረድፎችን ይይዛል። እና ሁለተኛው ግብይት በጉጉት የሚቆየው የመጀመሪያው ግብይት ሲጠናቀቅ ወይም አስተዳዳሪው በግዳጅ ሲዘጋው ነው። ስለዚህ በመጠባበቅ ላይ ያሉ ግብይቶች የውሂብ ጎታውን ግንኙነት ገደብ ሊጠራቀሙ እና ሊጥሉ ይችላሉ። እና ገደቡ ሲሞላ፣ አፕሊኬሽኑ ከአሁን በኋላ ከመረጃ ቋቱ ጋር መስራት አይችልም። ይህ ቀድሞውኑ ለፕሮጀክቱ ድንገተኛ ሁኔታ ነው. ስለዚህ, መጥፎ ደንበኞችን በወቅቱ መከታተል እና ምላሽ መስጠት ያስፈልጋል.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ሌላው የክትትል ምሳሌ. እና እዚህ ጥሩ ዳሽቦርድ አለ። ከላይ ባሉት ግንኙነቶች ላይ መረጃ አለ. የዲቢ ግንኙነት - 8 ቁርጥራጮች. እና ሁሉም ነገር ነው። የትኛዎቹ ደንበኞች ንቁ እንደሆኑ፣ የትኞቹ ደንበኞች ስራ ፈት እንደሆኑ፣ ምንም ሳያደርጉ ስለመሆኑ ምንም መረጃ የለንም። ስለ ተንጠልጣይ ግብይቶች እና በመጠባበቅ ላይ ያሉ ግንኙነቶች ምንም መረጃ የለም፣ ማለትም ይህ የግንኙነቶችን ብዛት የሚያሳይ ምስል ነው እና ያ ነው። እና ከዚያ ለራስዎ ይገምቱ።
PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
በዚህ መሰረት፣ ይህንን መረጃ ወደ ክትትል ለማከል፣ የpg_stat_activity ስርዓት እይታን መመልከት ያስፈልግዎታል። በ PostgreSQL ውስጥ ብዙ ጊዜ ካጠፉ ፣ ይህ ጓደኛዎ መሆን ያለበት በጣም ጥሩ እይታ ነው ፣ ምክንያቱም በ PostgreSQL ውስጥ ያለውን የአሁኑን እንቅስቃሴ ያሳያል ፣ ማለትም በእሱ ውስጥ ምን እየተከሰተ እንዳለ። ለእያንዳንዱ ሂደት በዚህ ሂደት ላይ መረጃን የሚያሳይ የተለየ መስመር አለ፡ ከየትኛው አስተናጋጅ ግንኙነቱ እንደተሰራ፣ በምን ተጠቃሚ ስር፣ በምን ስም፣ ግብይቱ ሲጀመር፣ ምን አይነት ጥያቄ በአሁኑ ጊዜ እየተፈፀመ ነው፣ ምን ጥያቄ በመጨረሻ ተፈፀመ። እና በዚህ መሠረት የደንበኛውን ሁኔታ በስታቲስቲክስ መስክ መገምገም እንችላለን. በአንፃራዊነት፣ በዚህ መስክ መቧደን እና አሁን በመረጃ ቋቱ ውስጥ ያሉትን ስታቲስቲክስ እና ከዚህ ስታቲስቲክስ ጋር ያሉ ግንኙነቶችን በመረጃ ቋቱ ውስጥ ማግኘት እንችላለን። እና ቀደም ሲል የተቀበሉትን ቁጥሮች ወደ መቆጣጠሪያችን መላክ እና በእነሱ ላይ ግራፎችን መሳል እንችላለን።
እንዲሁም የግብይቱን ቆይታ መገምገም አስፈላጊ ነው. ቀደም ሲል የቫኩምዎችን ቆይታ መገምገም አስፈላጊ እንደሆነ ተናግሬያለሁ, ነገር ግን ግብይቶች በተመሳሳይ መንገድ ይገመገማሉ. xact_start እና query_start መስኮች አሉ። እነሱ በአንጻራዊ ሁኔታ የግብይቱን የመጀመሪያ ጊዜ እና የጥያቄውን መጀመሪያ ጊዜ ያሳያሉ። የአሁኑን የጊዜ ማህተም የሚያሳየው የአሁን() ተግባርን እንይዛለን እና ግብይቱን ቀንስ እና የጊዜ ማህተሞችን እንጠይቃለን። እና የግብይቱን ቆይታ, የጥያቄውን ጊዜ እናገኛለን.

ረጅም ግብይቶችን ካየን, አስቀድመው ማጠናቀቅ አለብን. ለOLTP ጭነት፣ ረጅም ግብይቶች ቀድሞውኑ ከ1-2-3 ደቂቃዎች በላይ ናቸው።. ለ OLAP ጭነት ፣ ረጅም ግብይቶች የተለመዱ ናቸው ፣ ግን ከሁለት ሰዓታት በላይ የሚሄዱ ከሆነ ፣ ይህ ደግሞ የሆነ ቦታ ላይ skew እንዳለን የሚያሳይ ምልክት ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
አንዴ ደንበኞቹ ከመረጃ ቋቱ ጋር ከተገናኙ በኋላ ከኛ መረጃ ጋር መስራት ይጀምራሉ። ሰንጠረዦችን ይደርሳሉ, መረጃን ከሠንጠረዥ ለማግኘት ኢንዴክሶችን ይደርሳሉ. እና ደንበኞች ከዚህ መረጃ ጋር እንዴት እንደሚሰሩ መገምገም አስፈላጊ ነው.

ይህ የእኛን የስራ ጫና ለመገምገም እና የትኞቹ ጠረጴዛዎች "በጣም ሞቃታማ" እንዳለን ለመረዳት አስፈላጊ ነው. ለምሳሌ, በአንድ ዓይነት ፈጣን SSD ማከማቻ ላይ "ሙቅ" ጠረጴዛዎችን ለማስቀመጥ በምንፈልግበት ሁኔታዎች ውስጥ ይህ አስፈላጊ ነው. ለምሳሌ, ለረጅም ጊዜ ያልተጠቀምንባቸው አንዳንድ የማህደር ሰንጠረዦች ወደ አንድ ዓይነት "ቀዝቃዛ" ማህደር, ወደ SATA ዲስኮች ሊተላለፉ እና እዚያ እንዲኖሩ ያስችላቸዋል, እንደ አስፈላጊነቱ ይደርሳሉ.

እንዲሁም ከማንኛውም ከተለቀቁ እና ከተሰማሩ በኋላ ያልተለመዱ ነገሮችን ለመለየት ጠቃሚ ነው። ፕሮጀክቱ አንዳንድ አዲስ ባህሪያትን አውጥቷል እንበል። ለምሳሌ፣ ከመረጃ ቋቱ ጋር ለመስራት አዲስ ተግባር አክለናል። እና ለጠረጴዛዎች አጠቃቀም ግራፎችን ከገነባን, በእነዚህ ግራፎች ላይ እነዚህን ያልተለመዱ ነገሮችን በቀላሉ ማግኘት እንችላለን. ለምሳሌ ፍንዳታዎችን ያዘምኑ ወይም ፍንዳታዎችን ይሰርዙ። በጣም የሚታይ ይሆናል.

በተጨማሪም "የተንሳፈፉ" ስታቲስቲክስ ያልተለመዱ ነገሮችን መለየት ይቻላል. ምን ማለት ነው? PostgreSQL በጣም ጠንካራ እና በጣም ጥሩ የመጠይቅ እቅድ አውጪ አለው። እና ገንቢዎቹ ለእድገቱ ብዙ ጊዜ ያሳልፋሉ። እንዴት ነው የሚሰራው? ጥሩ ዕቅዶችን ለመገንባት፣ PostgreSQL በተወሰነ የጊዜ ልዩነት በሰንጠረዦች ውስጥ ስላለው የመረጃ ስርጭት ስታቲስቲክስን ይሰበስባል። እነዚህ በጣም ተደጋጋሚ እሴቶች ናቸው-የልዩ እሴቶች ብዛት ፣ በሰንጠረዡ ውስጥ ስለ NULL መረጃ ፣ ብዙ መረጃ።

በእነዚህ ስታቲስቲክስ መሰረት፣ እቅድ አውጪው በርካታ መጠይቆችን ይገነባል፣ በጣም ጥሩውን ይመርጣል እና ይህን የጥያቄ እቅድ ተጠቅሞ ጥያቄውን በራሱ ለማስፈጸም እና መረጃን ለመመለስ።

እና ስታቲስቲክስ "መንሳፈፍ" ይከሰታል. የጥራት እና የመጠን መረጃ በሰንጠረዡ ውስጥ በሆነ መንገድ ተለውጧል, ነገር ግን ስታቲስቲክስ አልተሰበሰበም. እና የተፈጠሩት እቅዶች ጥሩ ላይሆኑ ይችላሉ። እና እቅዶቻችን ከሚሰበሰበው ክትትል አንፃር እጅግ በጣም ጥሩ ሆኖ ከተገኘ በሠንጠረዡ መሠረት እነዚህን ያልተለመዱ ነገሮችን ለማየት እንችላለን. ለምሳሌ, የሆነ ቦታ ውሂቡ በጥራት ተለውጧል እና በመረጃ ጠቋሚው ምትክ, በሠንጠረዡ ውስጥ ተከታታይ ማለፊያ ጥቅም ላይ መዋል ጀመረ, ማለትም. መጠይቁ 100 ረድፎችን ብቻ መመለስ ከፈለገ (የ 100 ወሰን አለ) ፣ ከዚያ ለዚህ ጥያቄ ሙሉ ዝርዝር ይከናወናል ። እና ይሄ ሁልጊዜ በአፈፃፀም ላይ በጣም መጥፎ ውጤት አለው.

እና በክትትል ውስጥ ልናየው እንችላለን. እና ይህንን ጥያቄ አስቀድመው ይመልከቱ ፣ ለእሱ ያብራሩ ፣ ስታቲስቲክስን ይሰብስቡ ፣ አዲስ ተጨማሪ መረጃ ጠቋሚ ይገንቡ። እና ለዚህ ችግር አስቀድመው ምላሽ ይስጡ. ስለዚህ አስፈላጊ ነው.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ሌላው የክትትል ምሳሌ. ብዙ ሰዎች የሚያውቁት በጣም ተወዳጅ ስለሆነ ይመስለኛል። በፕሮጀክቶቻቸው ውስጥ ማን ይጠቀማል ፕሮሚትየስ? እና ይህን ምርት ከፕሮሜቲየስ ጋር በማጣመር የሚጠቀመው ማነው? እውነታው ግን በዚህ የክትትል መደበኛ ማከማቻ ውስጥ ከ PostgreSQL ጋር ለመስራት ዳሽቦርድ አለ - postgres_ ላኪ ፕሮሜቴየስ. ግን እዚህ አንድ መጥፎ ዝርዝር አለ.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በርካታ ገበታዎች አሉ። እና ባይት እንደ አንድነት ይገለጻል, ማለትም 5 ግራፎች አሉ. እነዚህም መረጃዎችን አስገባ፣ መረጃን አዘምን፣ ዳታ ሰርዝ፣ ዳታ አምጥ እና ውሂብ መመለስ ናቸው። ባይት እንደ ዩኒት ልኬት ተገልጸዋል። እውነታው ግን በ PostgreSQL ውስጥ ያሉ ስታቲስቲክስ መረጃዎችን በ tuple (ረድፎች) ይመልሳል። እና በዚህ መሰረት, እነዚህ ግራፎች የስራ ጫናዎን ብዙ ጊዜ, በደርዘን የሚቆጠሩ ጊዜዎችን ለማቃለል በጣም ጥሩ መንገድ ናቸው, ምክንያቱም ቱፕል ባይት አይደለም, ቱፕል ሕብረቁምፊ ነው, ብዙ ባይት ነው እና ሁልጊዜም ተለዋዋጭ ርዝመት አለው. ማለትም ቱፕልስ በመጠቀም በባይት ውስጥ ያለውን የስራ ጫና ማስላት ከእውነታው የራቀ ስራ ወይም በጣም ከባድ ስራ ነው። ስለዚህ ዳሽቦርድ ወይም አብሮገነብ ክትትልን ሲጠቀሙ በትክክል እንደሚሰራ እና በትክክል የተገመገመ መረጃን ለእርስዎ እንደሚመልስ ሁልጊዜ መረዳት ያስፈልጋል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በእነዚህ ጠረጴዛዎች ላይ ስታቲስቲክስን እንዴት ማግኘት ይቻላል? ይህንን ለማድረግ፣ PostgreSQL የእይታ ቤተሰብ አለው። እና ዋናው እይታ ነው pg_stat_ተጠቃሚ_ሰንጠረዦች. የተጠቃሚ_ጠረጴዛዎች - ይህ ማለት ሰንጠረዦቹ በተጠቃሚው ምትክ የተፈጠሩ ናቸው ማለት ነው። በአንጻሩ፣ የስርዓት እይታዎች አሉ፣ እሱም በ PostgreSQL በራሱ ጥቅም ላይ ይውላል። እና ሁለቱንም ስርዓት እና ተጠቃሚን የሚያካትት Alltables ማጠቃለያ ሰንጠረዥ አለ። በጣም ከሚወዱት ማንኛቸውም መጀመር ይችላሉ።

ከላይ ያሉት መስኮች የማስገቢያዎች ፣ ማሻሻያዎች እና መሰረዣዎች ብዛት ለመገመት ሊያገለግሉ ይችላሉ። የተጠቀምኩበት የምሳሌ ዳሽቦርድ የስራ ጫና ባህሪያትን ለመገምገም እነዚህን መስኮች ይጠቀማል። ስለዚህ, እኛ ደግሞ በእነሱ ላይ መገንባት እንችላለን. ነገር ግን እነዚህ ቱፕልዎች እንጂ ባይት እንዳልሆኑ ማስታወሱ ተገቢ ነው፣ ስለዚህ ወስደን ባይት ማድረግ አንችልም።

በእነዚህ መረጃዎች ላይ በመመስረት, TopN-tables የሚባሉትን መገንባት እንችላለን. ለምሳሌ, Top-5, Top-10. እና ከሌሎቹ በበለጠ ጥቅም ላይ የሚውሉትን ሙቅ ጠረጴዛዎች መከታተል ይችላሉ. ለምሳሌ, ለማስገባት 5 "ሙቅ" ጠረጴዛዎች. እና በእነዚህ TopN-tables መሰረት፣ የስራ ጫናያችንን እንገመግማለን እና ከማንኛውም ልቀቶች እና ዝመናዎች እና ከተሰማሩ በኋላ የስራ ጫናዎችን መገምገም እንችላለን።

የሠንጠረዡን መጠን መገምገምም አስፈላጊ ነው, ምክንያቱም አንዳንድ ጊዜ ገንቢዎች አዲስ ባህሪን ያስወጣሉ, እና የእኛ ጠረጴዛዎች በትልቅ መጠናቸው ማበጥ ይጀምራሉ, ምክንያቱም ተጨማሪ የውሂብ መጠን ለመጨመር ወስነዋል, ነገር ግን ይህ እንዴት እንደሚሆን አልተነበዩም. የውሂብ ጎታውን መጠን ይነካል. እንደዚህ አይነት ጉዳዮችም ለእኛ አስገራሚ ሆነውብናል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እና አሁን ለእርስዎ ትንሽ ጥያቄ። በመረጃ ቋት አገልጋዩ ላይ ያለውን ጭነት ሲመለከቱ ጥያቄው ምንድን ነው? ቀጣዩ ጥያቄህ ምንድን ነው?

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ትክክለኛው ጥያቄ ግን የሚከተለው ነው። ጭነቱ ምን ጥያቄዎችን ያመጣል? ያም ማለት, ጭነቱ የሚያስከትለውን ሂደቶች መመልከት አስደሳች አይደለም. አስተናጋጁ ከመረጃ ቋት ጋር ከሆነ የውሂብ ጎታው እዚያ እየሄደ እንደሆነ ግልጽ ነው እና እዚያም የውሂብ ጎታዎች ብቻ እንደሚወገዱ ግልጽ ነው. Top ን ከከፈትን፣ የሆነ ነገር እያደረጉ ያሉ የ PostgreSQL ሂደቶችን ዝርዝር እዚያ እናያለን። ከላይ ጀምሮ ምን እየሰሩ እንደሆነ ግልጽ አይሆንም.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በዚህ መሠረት ከፍተኛውን ጭነት የሚያስከትሉ ጥያቄዎችን ማግኘት አለብዎት ምክንያቱም የጥያቄ ማስተካከያ እንደ ደንቡ ከ PostgreSQL ውቅር ወይም ከስርዓተ ክወና ወይም ከሃርድዌር ማስተካከያ የበለጠ ትርፍ ይሰጣል። በእኔ ግምት ይህ ከ 80-85-90% ነው. እና ይህ በጣም በፍጥነት ይከናወናል. አወቃቀሩን ከማረም፣ ዳግም ማስጀመርን ከመያዝ፣ በተለይም የውሂብ ጎታውን እንደገና መጀመር ካልቻለ ወይም ሃርድዌርን ከመጨመር ይልቅ ጥያቄውን ለማረም ፈጣን ነው። ከዚህ መጠይቅ የተሻለ ውጤት ለማግኘት መጠይቁን የሆነ ቦታ መፃፍ ወይም መረጃ ጠቋሚ ማከል ቀላል ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
በዚህ መሠረት ጥያቄዎችን እና በቂነታቸውን መከታተል አስፈላጊ ነው. ሌላ የክትትል ምሳሌ እንውሰድ። እና እዚህም, በጣም ጥሩ ክትትል ይመስላል. በማባዛት ላይ መረጃ አለ, በግብአት, በማገድ, በንብረት አጠቃቀም ላይ መረጃ አለ. ሁሉም ነገር ጥሩ ነው, ነገር ግን በጥያቄዎች ላይ ምንም መረጃ የለም. በእኛ የውሂብ ጎታ ውስጥ ምን አይነት መጠይቆች እንደሚሄዱ፣ ለምን ያህል ጊዜ እንደሚሰሩ፣ ከእነዚህ ጥያቄዎች ውስጥ ምን ያህል እንደሆኑ ግልጽ አይደለም። በክትትል ውስጥ ሁል ጊዜ ይህንን መረጃ ሊኖረን ይገባል።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እና ይህን መረጃ ለማግኘት የpg_stat_statements ሞጁሉን መጠቀም እንችላለን። በእሱ መሰረት, የተለያዩ ግራፊክስ መገንባት ይችላሉ. ለምሳሌ, በጣም በተደጋጋሚ በሚጠየቁ ጥያቄዎች ላይ, ማለትም, በተደጋጋሚ በሚደረጉ ጥያቄዎች ላይ መረጃ ማግኘት ይችላሉ. አዎ፣ ከተሰማራ በኋላ እሱን ለማየት እና የጥያቄዎች መጨመር ካለ ለመረዳትም በጣም ጠቃሚ ነው።

ረጅሙን መጠይቆች ማለትም ረጅሙን የሚሄዱትን መጠይቆች መከታተል ይችላሉ። በማቀነባበሪያው ላይ ይሰራሉ, I / Oን ይበላሉ. ይህንንም በመስክ ጠቅላላ_ሰዓት፣ አማካይ_ሰዓት፣ blk_write_time እና blk_read_time ልንገመግመው እንችላለን።

በሃብት አጠቃቀም፣ ከዲስክ የሚያነቡትን፣ ከማህደረ ትውስታ ጋር የሚሰሩትን፣ ወይም በተቃራኒው አንድ አይነት የመፃፍ ጭነትን ለመፍጠር በጣም ከባድ የሆኑትን ጥያቄዎች መገምገም እና መከታተል እንችላለን።

በጣም ለጋስ የሆኑ ጥያቄዎችን መገምገም እንችላለን. ብዙ ቁጥር ያላቸውን ረድፎች የሚመልሱት እነዚህ ጥያቄዎች ናቸው። ለምሳሌ፣ ገደብ ማበጀትን የረሱበት አንዳንድ ዓይነት ጥያቄ ሊሆን ይችላል። እና የሠንጠረዡን ወይም የጥያቄውን አጠቃላይ ይዘት በተጠየቁት ጠረጴዛዎች ላይ ብቻ ይመልሳል።

እና ጊዜያዊ ፋይሎችን ወይም ጊዜያዊ ጠረጴዛዎችን የሚጠቀሙ መጠይቆችን መከታተል ይችላሉ።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ
እና አሁንም የጀርባ ሂደቶች አሉን. የበስተጀርባ ሂደቶች በዋነኛነት የፍተሻ ቦታዎች ናቸው ወይም ደግሞ የፍተሻ ነጥቦች ተብለው ይጠራሉ እነዚህም አውቶቫክዩም እና ማባዛት ናቸው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ሌላው የክትትል ምሳሌ. በግራ በኩል የጥገና ትር አለ, ወደ እሱ ይሂዱ እና ጠቃሚ ነገር ለማየት ተስፋ ያድርጉ. ግን እዚህ, የቫኩም ጊዜ እና የስታቲስቲክስ ስብስብ ብቻ, ሌላ ምንም ነገር የለም. ይህ በጣም ደካማ መረጃ ነው, ስለዚህ በዳታ ቤታችን ውስጥ የጀርባ ሂደቶች እንዴት እንደሚሰሩ እና በስራቸው ላይ ምንም ችግሮች መኖራቸውን ሁልጊዜ መረጃ ማግኘት አለብዎት.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

የፍተሻ ኬላዎችን ስንመለከት የኛ የፍተሻ ኬላዎች "ቆሻሻ" ገፆችን ከተሰበረው ሚሞሪ አካባቢ ወደ ዲስክ እንደሚያፈሱ እና ከዚያም የፍተሻ ነጥብ እንደሚፈጥሩ መታወስ አለበት። PostgreSQL በድንገተኛ አደጋ ከተቋረጠ ይህ የፍተሻ ነጥብ በማገገሚያ ወቅት እንደ ቦታ ሆኖ ሊያገለግል ይችላል።

በዚህ መሠረት ሁሉንም "ቆሻሻ" ገጾችን ወደ ዲስክ ለማንሳት, የተወሰነ መጠን ያለው ጽሑፍ ማድረግ ያስፈልግዎታል. እና እንደ አንድ ደንብ, ከፍተኛ መጠን ያለው ማህደረ ትውስታ ባላቸው ስርዓቶች ላይ, ይህ በጣም ብዙ ነው. እና በአንዳንድ አጭር ክፍተቶች ውስጥ ብዙ ጊዜ የፍተሻ ነጥቦችን ከሠራን የዲስክ አፈፃፀም በጣም ይቀንሳል። እና የደንበኛ ጥያቄዎች በሃብት እጥረት ይሰቃያሉ። ለሀብት ይወዳደራሉ እና ምርታማነት ይጎድላቸዋል።

በዚህ መሠረት፣ በተጠቀሱት መስኮች ላይ በpg_stat_bgwriter በኩል፣ የሚከሰቱትን የፍተሻ ነጥቦች ብዛት መከታተል እንችላለን። እና ለተወሰነ ጊዜ (ለ 10-15-20 ደቂቃዎች, ለግማሽ ሰዓት) ብዙ የፍተሻ ቦታዎች ካሉን, ለምሳሌ, 3-4-5, ከዚያ ይህ ቀድሞውኑ ችግር ሊሆን ይችላል. እና እንደዚህ ያሉ የተትረፈረፈ የፍተሻ ነጥቦችን መንስኤ ምን እንደሆነ አስቀድመው በመረጃ ቋቱ ውስጥ መፈለግ ፣ አወቃቀሩን ይመልከቱ። ምናልባት አንዳንድ ትልቅ መዝገብ እየመጣ ሊሆን ይችላል። አስቀድመን የስራ ጫናዎችን መገምገም እንችላለን, ምክንያቱም አስቀድመን የስራ ጫና ገበታዎችን ስለጨመርን. አስቀድመን የመግቻ ነጥብ መለኪያዎችን ማስተካከል እና የጥያቄ አፈጻጸም ላይ ከፍተኛ ተጽዕኖ እንዳላሳደሩ ማረጋገጥ እንችላለን።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

እንደገና ወደ አውቶቫክዩም እመለሳለሁ ምክንያቱም እንዳልኩት የዲስክን እና የመጠይቅ አፈፃፀምን በቀላሉ ሊጨምር የሚችል ነገር ነው ፣ ስለሆነም ሁል ጊዜ የአውቶቫክዩም መጠንን መለካት አስፈላጊ ነው።

በመረጃ ቋቱ ውስጥ ያሉት የአውቶቫኩም ሰራተኞች ብዛት የተወሰነ ነው። በነባሪነት ፣ ከእነዚህ ውስጥ ሦስቱ አሉ ፣ ስለሆነም ሁል ጊዜ በመረጃ ቋቱ ውስጥ የሚሰሩ ሶስት ሰራተኞች ካሉን ፣ ይህ ማለት የእኛ አውቶቫክዩም አልተዋቀረም ማለት ነው ፣ ገደቦቹን ከፍ ማድረግ ፣ የ autovacuum ቅንብሮችን መከለስ እና ቀድሞውኑ ወደ ውቅር መውጣት አለብን።
የትኞቹ የቫኩም ሰራተኞች ለእኛ እንደሚሰሩ መገምገም አስፈላጊ ነው. ወይ ከተጠቃሚው ተጀመረ፣ ዲቢኤው ገብቶ በእጁ የሆነ አይነት ቫክዩም አስነሳ፣ እና ይሄ ሸክም ፈጠረ። የሆነ ችግር አጋጥሞናል። ወይም ይህ የግብይት ቆጣሪውን የሚፈታው የቫክዩም ብዛት ነው። ለአንዳንድ የPostgreSQL ስሪቶች እነዚህ በጣም ከባድ ቫክዩም ናቸው። እና በዚህ ሠንጠረዥ ውስጥ ያሉትን ሁሉንም ብሎኮች በመቃኘት ሙሉውን ጠረጴዛ እየቀነሱ ስለሆነ በቀላሉ አፈፃፀምን ይጨምራሉ።

እና በእርግጥ, የቫኪዩምስ ቆይታ. ለረጅም ጊዜ የሚሰሩ ረጅም ቫክዩም ካለን ይህ ማለት እንደገና ለቫኪዩም ውቅር ትኩረት መስጠት እና ምናልባት ቅንብሮቹን እንደገና ማጤን አለብን ማለት ነው። ምክንያቱም ቫክዩም ለረጅም ጊዜ (3-4 ሰአታት) በጠረጴዛው ላይ ሲሰራ አንድ ሁኔታ ሊፈጠር ይችላል, ነገር ግን በቫኩም ሥራ ወቅት, ብዙ የሞቱ ረድፎች እንደገና በጠረጴዛው ውስጥ ሊከማቹ ችለዋል. እና ቫክዩም እንደጨረሰ, ይህንን ጠረጴዛ እንደገና ማጽዳት ያስፈልገዋል. እና ወደ አንድ ሁኔታ ደርሰናል - ማለቂያ የሌለው ክፍተት። እናም በዚህ ሁኔታ, ቫክዩም ስራውን አይቋቋመውም, እና ጠረጴዛዎቹ ቀስ በቀስ መጠናቸው ማበጥ ይጀምራሉ, ምንም እንኳን በውስጡ ያለው ጠቃሚ መረጃ መጠን ተመሳሳይ ነው. ስለዚህ, በረጅም ክፍተቶች ውስጥ, ሁልጊዜ ውቅሩን እንመለከታለን እና ለማመቻቸት እንሞክራለን, ግን በተመሳሳይ ጊዜ, የደንበኛ ጥያቄዎች አፈፃፀም እንዳይጎዳ.

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

አሁን ምንም የዥረት ማባዛት ባልነበረበት ምንም የ PostgreSQL ጭነት የለም። ማባዛት መረጃን ከዋና ወደ ቅጂ የማዛወር ሂደት ነው።

በ PostgreSQL ውስጥ ማባዛት በግብይት መዝገብ በኩል ይዘጋጃል። ጌታው የግብይት መዝገብ ያመነጫል. በአውታረ መረቡ ግንኙነት ላይ ያለው የግብይት ምዝግብ ማስታወሻ ወደ ቅጂው ይሄዳል, ከዚያም በማባዛቱ ላይ ይባዛል. ሁሉም ነገር ቀላል ነው።

በዚህ መሰረት፣ የpg_stat_replication እይታ የማባዛት መዘግየትን ለመከታተል ጥቅም ላይ ይውላል። ግን ለእሷ ቀላል አይደለም. በስሪት 10, እይታው ብዙ ለውጦችን አድርጓል. በመጀመሪያ፣ አንዳንድ መስኮች እንደገና ተሰይመዋል። እና አንዳንድ መስኮች ተጨምረዋል. በ 10 ኛው እትም ፣ የማባዛት መዘግየትን በሰከንዶች ውስጥ ለመገምገም የሚያስችሉዎት መስኮች ታዩ። በጣም ምቹ ነው. ከስሪት 10 በፊት፣ በባይት የማባዛት መዘግየትን መገመት ተችሏል። ይህ ባህሪ በ 10 ኛው ስሪት ውስጥ ቀርቷል ፣ ማለትም ለእርስዎ የበለጠ ምቹ የሆነውን መምረጥ ይችላሉ - በባይት ውስጥ ያለውን መዘግየት ይገምግሙ ወይም መዘግየትን በሰከንዶች ውስጥ ይገምግሙ። ብዙዎች ሁለቱንም ያደርጋሉ።

ይሁን እንጂ የማባዛት መዘግየትን ለመገምገም በግብይቱ ውስጥ የምዝግብ ማስታወሻውን አቀማመጥ ማወቅ ያስፈልግዎታል. እና እነዚህ የግብይት ምዝግብ ማስታወሻዎች በpg_stat_replication እይታ ውስጥ ብቻ ናቸው። በአንፃራዊነት፣ በግብይት መዝገብ ውስጥ ሁለት ነጥቦችን ለመውሰድ pg_xlog_location_diff() ተግባርን መጠቀም እንችላለን። በመካከላቸው ያለውን ዴልታ አስሉ እና የማባዛት መዘግየትን በባይት ያግኙ። በጣም ምቹ እና ቀላል ነው.

በስሪት 10 ይህ ተግባር ወደ pg_wal_lsn_diff() ተቀይሯል። በአጠቃላይ በሁሉም ተግባራት, እይታዎች, መገልገያዎች, "xlog" የሚለው ቃል በተገናኘበት ቦታ "ዋል" በሚለው ዋጋ ተተካ. ይህ በሁለቱም እይታዎች እና ተግባራት ውስጥ ነው. ይህ እንደዚህ ያለ ፈጠራ ነው።

በተጨማሪም፣ በ10ኛው እትም በተለይ መዘግየቱን የሚያሳዩ መስመሮች ተጨምረዋል። እነዚህም የመጻፍ መዘግየት፣ የመፍቻ መዘግየት፣ የመድገም መዘግየት ናቸው። ያም ማለት እነዚህን ነገሮች መከታተል አስፈላጊ ነው. የማባዛት መዘግየት እንዳለን ከተመለከትን ታዲያ ለምን እንደመጣ፣ ከየት እንደመጣ መመርመር እና ችግሩን ማስተካከል አለብን።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በስርዓት መለኪያዎች ሁሉም ነገር ማለት ይቻላል በሥርዓት ነው። ማንኛውም ክትትል ሲወለድ በስርዓት መለኪያዎች ይጀምራል. ይህ የአቀነባባሪዎች፣ የማህደረ ትውስታ፣ የስዋፕ፣ የኔትወርክ እና የዲስክ አጠቃቀም ነው። ግን ሆኖም ፣ ብዙ መለኪያዎች በነባሪነት የሉም።

በሂደቱ አወጋገድ ሁሉም ነገር በቅደም ተከተል ከሆነ, ዲስኩን ለማስወገድ ችግሮች አሉ. እንደ ደንቡ, ክትትል ገንቢዎች የመተላለፊያ ይዘት መረጃን ይጨምራሉ. በአዮፕስ ወይም ባይት ውስጥ ሊሆን ይችላል. ነገር ግን ስለ መዘግየት እና የዲስክ መሳሪያ አጠቃቀም ይረሳሉ. እነዚህ የእኛ ዲስኮች ምን ያህል እንደተጫኑ እና ምን ያህል ፍጥነት እንደሚቀንስ ለመገምገም የሚያስችሉን በጣም አስፈላጊ መለኪያዎች ናቸው. ከፍተኛ መዘግየት ካለን, ይህ ማለት በዲስኮች ላይ አንዳንድ ችግሮች አሉ ማለት ነው. ከፍተኛ አጠቃቀም ካለን, ይህ ማለት ዲስኮች መቋቋም አይችሉም ማለት ነው. እነዚህ ከመተላለፊያ ይዘት የበለጠ የጥራት ባህሪያት ናቸው.

ነገር ግን፣ ፕሮሰሰርን እንደገና ጥቅም ላይ ለማዋል እንደሚደረገው እነዚህ መረጃዎች ከ/proc ፋይል ስርዓት ሊገኙ ይችላሉ። ለምን ይህ መረጃ በክትትል ውስጥ አልተጨመረም, አላውቅም. ግን አሁንም በክትትልዎ ውስጥ መኖሩ አስፈላጊ ነው።

ለኔትወርክ በይነገጾችም ተመሳሳይ ነው። በጥቅሎች፣ በባይት ውስጥ ስለ ኔትወርክ የመተላለፊያ ይዘት መረጃ አለ፣ ሆኖም ግን ስለ መዘግየት ምንም መረጃ የለም እና ስለ አጠቃቀሙ ምንም መረጃ የለም ፣ ምንም እንኳን ይህ ጠቃሚ መረጃ ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

ማንኛውም ክትትል የራሱ ድክመቶች አሉት. እና ምንም አይነት ክትትል ቢወስዱ, ሁልጊዜ የተወሰኑ መስፈርቶችን ማሟላት ይሳነዋል. ሆኖም ግን እነሱ ያዳብራሉ, አዲስ ባህሪያት ተጨምረዋል, አዲስ ነገሮች, ስለዚህ አንድ ነገር ይምረጡ እና ይጨርሱት.

እና ለመጨረስ, ሁልጊዜ የተሰጠው ስታቲስቲክስ ምን ማለት እንደሆነ እና በእሱ ላይ ችግሮችን እንዴት መፍታት እንደሚችሉ ሀሳብ ሊኖርዎት ይገባል.

እና ጥቂት ቁልፍ ነጥቦች፡-

  • ሁሉም ነገር ከመሠረቱ ጋር የተስተካከለ መሆኑን በፍጥነት ለመገምገም ሁል ጊዜ ተገኝነትን መከታተል ፣ ዳሽቦርዶች ይኑሩ።
  • መጥፎ ደንበኞችን ለማጥፋት እና እነሱን ለመተኮስ ሁል ጊዜ ደንበኞች ከመረጃ ቋትዎ ጋር ምን እንደሚሰሩ ማወቅ ያስፈልግዎታል።
  • እነዚህ ደንበኞች ከውሂብ ጋር እንዴት እንደሚሠሩ መገምገም አስፈላጊ ነው. ሾለ የሥራ ጫናዎ ሀሳብ ሊኖርዎት ይገባል.
  • ይህ የሥራ ጫና እንዴት እንደሚፈጠር መገምገም አስፈላጊ ነው, በምን አይነት ጥያቄዎች እርዳታ. መጠይቆችን መገምገም, ማመቻቸት, ማረም, ኢንዴክሶችን መገንባት ይችላሉ. በጣም አስፈላጊ ነው.
  • የበስተጀርባ ሂደቶች የደንበኛ ጥያቄዎች ላይ አሉታዊ ተጽዕኖ ሊያሳድሩ ስለሚችሉ በጣም ብዙ ሀብቶችን እንደማይጠቀሙ ማረጋገጥ አስፈላጊ ነው.
  • የስርዓት መለኪያዎች የአገልጋዮችን አቅም ለመጨመር፣ ለመለካት እቅድ ለማውጣት ይፈቅድልዎታል፣ ስለዚህ እነሱን መከታተል እና መገምገም አስፈላጊ ነው።

PostgreSQL ክትትል መሰረታዊ ነገሮች. አሌክሲ ሌሶቭስኪ

በዚህ ርዕስ ላይ ፍላጎት ካሎት እነዚህን ማገናኛዎች መከተል ይችላሉ.
http://bit.do/stats_collector ከስታቲስቲክስ ሰብሳቢው ኦፊሴላዊ ሰነድ ነው. የሁሉም የስታቲስቲክስ እይታዎች መግለጫ እና የሁሉም መስኮች መግለጫ አለ። እነሱን ማንበብ, መረዳት እና መተንተን ይችላሉ. እና በእነሱ መሰረት, የራስዎን ገበታዎች ይገንቡ, ወደ ክትትልዎ ይጨምሩ.

ምሳሌዎችን ጠይቅ፡-
http://bit.do/dataegret_sql
http://bit.do/lesovsky_sql

ይህ የእኛ የድርጅት ማከማቻ እና የራሴ ነው። የናሙና ጥያቄዎች አሏቸው። ከተከታታይ ምረጥ * ምንም ጥያቄዎች የሉም፣ የሆነ ነገር አለ። ሊነበቡ የሚችሉ ምቹ እሴቶችን ከጥሬ ቁጥሮች፣ ማለትም እነዚህ ባይት፣ ጊዜ የሚፈቅዱ አስደሳች ተግባራትን በመጠቀም ከመቀላቀል ጋር አስቀድመው ዝግጁ የሆኑ ጥያቄዎች አሉ። እነሱን መምረጥ ፣ ማየት ፣ መተንተን ፣ ወደ ክትትልዎ ማከል ፣ በእነሱ ላይ በመመስረት የራስዎን ቁጥጥር መገንባት ይችላሉ ።

ጥያቄዎች

ጥያቄ፡ ብራንዶችን እንደማታስተዋውቅ ተናግረሃል፣ ግን አሁንም እያሰብኩኝ ነው - በፕሮጀክቶችህ ውስጥ ምን አይነት ዳሽቦርዶች ትጠቀማለህ?
መልስ፡ በተለያዩ መንገዶች። ወደ ደንበኛው እንደመጣን እና እሱ አስቀድሞ የራሱ ክትትል አለው. እና ደንበኛው በእሱ ክትትል ውስጥ ምን መጨመር እንዳለበት እንመክርዎታለን. በጣም መጥፎው ሁኔታ በዛቢክስ ነው. TopN-ግራፊክስን የመገንባት አቅም ስለሌለው። እኛ እራሳችን እንጠቀማለን ኦክሜትርምክንያቱም እነዚህን ሰዎች በክትትል ላይ አማክረናል። በእኛ TOR ላይ በመመስረት PostgreSQL ክትትል አድርገዋል። የራሴን ፔት-ፕሮጀክት እየጻፍኩ ነው፣ እሱም በፕሮሜቲየስ በኩል መረጃን የሚሰበስብ እና ወደ ውስጥ ይስባል ግራፋና. የእኔ ተግባር በፕሮሜቲየስ ውስጥ የራሴን ላኪ ማድረግ እና ከዚያ ሁሉንም ነገር በግራፋና ውስጥ መሳል ነው።

ጥያቄ፡ የAWR ሪፖርቶች ወይም ... ውህደቶች አናሎግ አሉ? እንደዚህ ያለ ነገር ያውቃሉ?
መልስ፡- አዎ፣ AWR ምን እንደሆነ አውቃለሁ፣ አሪፍ ነገር ነው። በአሁኑ ጊዜ በግምት የሚከተለውን ሞዴል የሚተገበሩ የተለያዩ ብስክሌቶች አሉ. በተወሰነ የጊዜ ክፍተት፣ አንዳንድ መነሻ መስመሮች ለተመሳሳይ PostgreSQL ወይም ወደተለየ ማከማቻ ይጻፋሉ። በበይነመረብ ላይ እነሱን ጎግል ማድረግ ይችላሉ, እነሱ ናቸው. ከእንደዚህ አይነት ገንቢዎች አንዱ በ PostgreSQL ክር ውስጥ በ sql.ru መድረክ ላይ ይቀመጣል። እዚያ ሊይዙት ይችላሉ. አዎ, እንደዚህ አይነት ነገሮች አሉ, ጥቅም ላይ ሊውሉ ይችላሉ. በተጨማሪም በውስጡ pgCenter እኔም ተመሳሳይ ነገር ለማድረግ የሚያስችል ነገር እጽፋለሁ.

PS1 postgres_exporter እየተጠቀሙ ከሆነ ምን ዳሽቦርድ እየተጠቀሙ ነው? ከእነሱ ውስጥ በርካቶች አሉ. ቀድሞውንም ጊዜ ያለፈባቸው ናቸው። ማህበረሰቡ የዘመነ አብነት መፍጠር ይችላል?

PS2 በአፈጻጸም ክትትል እና በራስ ሰር ማስተካከያ ጥቆማዎች ላይ የሚያተኩር የባለቤትነት SaaS አቅርቦት በመሆኑ pganalyze ተወግዷል።

በዳሰሳ ጥናቱ ውስጥ የተመዘገቡ ተጠቃሚዎች ብቻ መሳተፍ ይችላሉ። ስግን እንእባክህን።

የትኛው በራሱ የሚስተናገደው የድህረ ግሪስኮ ክትትል (ከዳሽቦርድ ጋር) ምርጥ ነው ብለው ያስባሉ?

  • 30,0%Zabbix + ጭማሪዎች ከአሌክሲ ሌሶቭስኪ ወይም ዛቢክስ 4.4 ወይም libzbxpgsql + zabbix libzbxpgsql + zabbix3

  • 0,0%https://github.com/lesovsky/pgcenter0

  • 0,0%https://github.com/pg-monz/pg_monz0

  • 20,0%https://github.com/cybertec-postgresql/pgwatch22

  • 20,0%https://github.com/postgrespro/mamonsu2

  • 0,0%https://www.percona.com/doc/percona-monitoring-and-management/conf-postgres.html0

  • 10,0%pganalyze የባለቤትነት SaaS ነው - መሰረዝ አይቻልም1

  • 10,0%https://github.com/powa-team/powa1

  • 0,0%https://github.com/darold/pgbadger0

  • 0,0%https://github.com/darold/pgcluu0

  • 0,0%https://github.com/zalando/PGObserver0

  • 10,0%https://github.com/spotify/postgresql-metrics1

10 ተጠቃሚዎች ድምጽ ሰጥተዋል። 26 ተጠቃሚዎች ድምፀ ተአቅቦ አድርገዋል።

ምንጭ: hab.com

አስተያየት ያክሉ