Skip to content

ዓለም

World ሌሎች አካላትን የያዘ ዓለም አቀፋዊ አካል ነው። World የሚከተሉትን ያካትታል:

ጎራዎች ፣ እኩዮች ወይም ሚናዎች የተመዘገቡ ወይም ያልተመዘገቡ ሲሆኑ World የ (un)register መመሪያ ግብ ነው ።

የዓለም ሁኔታ እይታ (WSV)

የዓለም ሁኔታ እይታ የአሁኑን የብሎክቼይን ሁኔታ በሜሞሪ ውስጥ የሚወክል ነው ። እሱ World ፣ የተሰማሩ ብሎኮች ሃሽስ ፣ የትራንስክሽን ማውጫዎች እና ለአሁኑ ዘመን የተመረጡ እኩዮችን ያጠቃልላል ። ሙሉው ብሎክ ጥቅማጥቅሞች እንደ ተለዋዋጭ WSV ውሂብ ከመተባበር ይልቅ ከ Kura ይሰጣሉ ።

WSV መጠይቆች የሚነበቡበት እና የብሎክ አፈፃፀም የሚለዋወጥበት ሁኔታ ነው ። በራሱ ዘላቂ የእውነት ምንጭ አይደለም ። ዘላቂ ታሪክ በ Kura ውስጥ ይቀመጣል ፣ እና WSV ከ Kura ብሎኮች እንደገና ሊገነባ ወይም ከሁኔታ ቅጽበታዊ ገጽ እይታ ሊጫን ይችላል ከዚያም አዳዲስ Kura ብሎኮችን በማስገባት ይይዛል.

የ WSV ትራኮች ምንድን ናቸው

የ WSV ነገር ከ World የበለጠ ሰፊ ነው፤ በተግባር የሚከተሉትን ይዟል፦

  • World: መለኪያዎች, እኩዮች, ጎራዎች, መለያዎች, ሀብቶች, NFTs, ሚናዎች, ፍቃዶች, ማስነሳት, አስፈፃሚ ውሂብ, እና ሌሎች የተመዘገቡ የውሂብ ሞዴል ዕቃዎችን
  • የተዋቀሩ የብሎክ ሃሽዎች እና የቅርብ ጊዜው የተዋወቀው ቁመት
  • መጠይቆች እና ደረሰኞች የሚጠቀሙባቸው የግብይት-ወደ-ብሎክ መረጃ ጠቋሚዎች
  • በስምምነት የተጠቀመበት የአሁኑ እና የቀድሞው የኮሚት ቶፖሎጂ
  • ከተቀበሉት ብሎኮች የተገኙ የማስታወስ ማውጫዎች፣ ለምሳሌ የመረጃ ተደራሽነት ግዴታዎች፣ ደረሰኝ ማስቀመጫዎች፣ የፒን ዓላማዎች እና የጥያቄ ትንታኔ ምልክቶች።
  • ለዲተሪሚኒስት ብሎክ አፈፃፀም የሚያስፈልጉ የፍጥነት ጊዜ ውቅር ቅጽበታዊ ገጽ እይታዎች ፣ ለምሳሌ ምስጠራ ፣ አስተዳደር ፣ ቧንቧ ፣ ይዘት ፣ ቀረጻ እና Nexus ቅንጅቶች።

መጠይቆች በተለምዶ በእነዚህ መዋቅሮች ላይ ለማንበብ ብቻ StateView ይቀበላሉ ። አንድ እይታ ለጥያቄ አፈፃፀም ተከታታይ ቅጽበታዊ ገጽ እይታ ነው ፣ ይህም የ WSV ቀጥተኛ ለውጥ አይፈቅድም።

WSV እንዴት እንደሚለወጥ

WSV ለውጦች ከመፈጸማቸው በፊት በደረጃ ይወሰዳሉ። የብሎክ አፈፃፀም የብሎክ ስኮፕ የስቴት ሽፋን ይፈጥራል ፣ እና እያንዳንዱ ተቀባይነት ያለው ግብይት መመሪያዎቹን በግብይት ስኮፕ ሽፋን ውስጥ ተግባራዊ ያደርጋል። በእነዚያ ግብይቶች የሚነሱ መረጃዎች በተመሳሳይ ብሎክ አውድ ውስጥ የሚሰሩ ናቸው ። የጊዜ መንስኤዎች ለብሎክ ከግብይት ውጤቶች በኋላ ይገመገማሉ.

ኮንሰስ አንድ ብሎክ ካቀረበ በኋላ, ፒር በመጀመሪያ በ Kura ውስጥ የተዋቀረውን ብሎክ ያከማቻል. ይህ የኮንሰስ እርምጃ ካልተሳካ, WSV አይራመድም እና የኮንሰንሰስ ዑደት እንደገና ይሞክራል ወይም የብሎክ ጥቅማጥቅሞችን ያከማቻል። ብሎኩ በ Kura ረድፍ ውስጥ ሲቀበለው ፣ Iroha ከፈፀም በኋላ የብሎክ ውጤቶችን ይተግብራል ፣ የተወሰዱ መረጃ ጠቋሚዎችን ያዘምን እና ደረጃውን የጠበቀ WSV ለውጦችን በስቴት እይታ መቆለፊያ ስር ያደርጋል ። ይህ አንባቢዎች በከፊል የተሰማራ ብሎክን እንዳያዩ ይጠብቃል።

የስምምነት ወሳኝ ደንብ እኩዮች ተመሳሳይ WSV በተመሳሳይ የተዋቀሩ ብሎኮች መድረስ አለበት ነው. በቀጥታ አካባቢያዊ አርትዖቶች ወደ WSV ውሂብ ማለፍ መመሪያዎች እና እኩዮች በማረጋገጫ ወይም በድጋሚ በሚጫወቱበት ጊዜ ይለያያሉ ያደርጋል.

ጅምር እና ዳግም ማጫወት

ሲጀምር Iroha በመጀመሪያ Kura ን ይጀምራል እና የተከማቹትን የብሎክ ቁመት ይማራል። ከዚያም የአቋም ቅጽበታዊ ገጽ እይታን ለመጫን ይሞክራል ። ምንም ቅጽበታዊ እይታ ከሌለ ወይም ቅጽበታዊ ምስል እንደ መልሶ ማግኘት የሚችል ከሆነ ፣ Iroha የመጀመሪያውን ሁኔታ ይፈጥራል እና ከተቀበለባቸው ብሎኮች ከ Kura ይተካል ። አንድ ቅጽበታዊ ገጽ እይታ ትክክለኛ ከሆነ ግን ከ Kura በስተጀርባ, የጠፋው ከፍታ ክልል ብቻ ነው የሚጫወት.

መልሶ ማጫወት እያንዳንዱን የተከማቸ ብሎክ ያረጋግጣል ፣ ለዚያ ከፍታ የኮሚት ዝርዝርን እንደገና ይገነባል ፣ የብሎክ ውጤቶችን ወደ WSV ይተግብራል ፣ እና የሚገኘውን ሁኔታ ያደራጃል። ይህ ማለት Kura ለ WSV የመልሶ ማግኛ መንገድ ነው ፣ ቅጽበታዊ ገጽ እይታዎች ደግሞ መላውን ሰንሰለት መልሶ ማጫወትን ለማስቀረት የሚያስችል ማመቻቸት ናቸው።

Kura ማከማቻ

Kura የ Iroha ቀጣይነት ያለው ብሎክ ማከማቻ ነው። የተፈረሙ ብሎኮችን እና የመልሶ ማግኛ ሜታዳታዎችን ያከማቻል ። የ WSV ሁለተኛ ተለዋዋጭ ቅጂ አያከማችም።

የ Kura ማከማቻ በ kura.store_dir ሥር ላይ የተመሠረተ ነው ። በዚያ ስር ውስጥ ፣ ብሎክ ውሂብ በመንገድ ወይም በሴግመንት ይከፈላል ። ለሴግሜንት ዋና ፋይሎች የሚከተሉት ናቸው-

መንገድዓላማ
blocks/<segment>/blocks.dataተጓዳኝ Norito ካሬ ጋር የተፈረሙ የብሎክ ጥቅማጥቅሞች።
blocks/<segment>/blocks.indexቋሚ መጠን ያለው (start, length)blocks.data ውስጥ ያለውን የካርታ ብሎክ ቁመት ወደ ባይት ያስገቡ።
blocks/<segment>/blocks.hashesፈጣን ፍለጋ እና ጅምር ማረጋገጫ ለማግኘት በከፍታ ላይ ሃሽዎችን አግድ።
blocks/<segment>/blocks.count.noritoምን ያህል የብሎክ ኢንዴክስ ግቤቶችን ለመጠቀም ደህንነቱ የተጠበቀ እንደሆነ የሚመዘገብ ዘላቂ የኮሚት ማርከር።
blocks/<segment>/da_blocks/የዲስክ-በጀት ማስከበር ትኩስ ፋይል ከ አሮጌ አካላት ውጭ ያስወጣል ጊዜ blocks.data ውጭ የተቀመጡ የማጥፋት ብሎክ ጥቅማጥቅሞች.
blocks/<segment>/pipeline/sidecars.norito እና sidecars.indexየፓይፕ መስመር ማግኛ ጎን ተሽከርካሪዎች በብሎክ ቁመት ተመዝግበዋል ።
blocks/<segment>/pipeline/roster_sidecars.norito እና roster_sidecars.indexበቅርብ ጊዜ በብሎክ ማመሳሰል እና መልሶ ማጫወት ጥቅም ላይ የዋሉ የኮሚት-ሮስተር ጎን ተሽከርካሪዎች።
merge_ledger/<segment>.logከተቀናጁ ብሎኮች ጋር የተጣመሩ የማዋሃድ መለያዎች።
commit-rosters.noritoለቅርብ ጊዜ ብሎኮች የተረጋገጡ የኮሚቴ የምስክር ወረቀቶች እና የማረጋገጫ መቆጣጠሪያ ነጥቦች ተይዘዋል።

Kura ለተከታታይ የታመቀ የማስታወስ ቬክተር ይይዛል-እያንዳንዱ ቁመት የብሎክ ሃሽ እና ፣ አማራጭ ፣ የብሎክ አካል አለው ። የመነሻው ብሎክ በካሽ ውስጥ ይቆያል ፣ እና በጣም የቅርብ ጊዜዎቹ kura.blocks_in_memory ያልሆኑ የመነሻ ብሎኮች አካላቸውን በማስታወስ ያቆያሉ። አሮጌዎቹ የብሎክ አካላት ከሜሞሪ ይወርዳሉ እና አስፈላጊ በሚሆንበት ጊዜ ከ Kura ፋይሎች እንደገና ይጫኑ ።

በጅምር ወቅት strict ሁነታ ከብሎክ ጥቅማጥቅሞች የተከማቹትን ብሎኮችን ያረጋግጣል እና አስፈላጊ ከሆነ የሃሽ ፋይሉን እንደገና ይጽፋል ። fast ሁነታ ከተከማቸ ሃሽ / ኢንዴክስ ሜታዳታ ይጀምራል እናም ይህ ሜታዳታ ወጥ ካልሆነ ወደ ጥብቅ ጅምር ይመለሳል ። Kura የተበላሸ ጅራትን ካገኘ እስከመጨረሻው የተረጋገጠ ክምችት ድረስ ማከማቻውን ይቀንሳል ።

Kura በጀርባ ጸሐፊ አማካኝነት አዳዲስ ብሎኮችን ይጽፋል ። ፀሐፊው የብሎክ ጥቅማጥቅሞችን ፣ ሃሽሶችን እና የመረጃ ጠቋሚዎችን ይጨምራል ፣ ከዚያ በተዋቀረው fsync ፖሊሲ መሠረት ዘላቂውን መቁጠር ምልክት ያደርገዋል። የዲስክ-በጀት አፈፃፀም ንቁ ከሆነ Kura ጡረታ የወጡ ክፍሎችን ማጽዳት ወይም በዕድሜ የገፉ የብሎክ አካላትን ወደ da_blocks/ ማስወገድ ይችላል እንዲሁም ሃሽ እና የኢንዴክስ ግቤቶችን ለማረጋገጫ እና ለመፈለግ ይገኛል ።