Home » គ្រីបតូ »

SHARDING ពន្យល់៖ តើវាជាអ្វី និងរបៀបដែលវាជួយធ្វើមាត្រដ្ឋាន

Sharding គឺជាយុទ្ធសាស្ត្រសំខាន់មួយសម្រាប់បង្កើនសមត្ថភាពធ្វើមាត្រដ្ឋានដោយបែងចែកបន្ទុកការងារឆ្លងកាត់ផ្នែកជាច្រើន។

Sharding គឺជាវិធីសាស្រ្តមួយដែលត្រូវបានប្រើប្រាស់ក្នុងការគណនាដើម្បីបង្កើនប្រសិទ្ធភាព និងការធ្វើមាត្រដ្ឋានដោយបំបែកសំណុំទិន្នន័យ ឬកិច្ចការគណនាទៅជាផ្នែកតូចៗដែលអាចគ្រប់គ្រងបានច្រើនជាងគេស្គាល់ថាជា shards ។ shard នីមួយៗគឺជាសំណុំរងឯករាជ្យដាច់ដោយឡែកនៃសំណុំទិន្នន័យទាំងមូល ហើយអាចត្រូវបានរក្សាទុក ឬដំណើរការដោយឡែកពីអ្នកដទៃ។

បច្ចេកទេសនេះត្រូវបានអនុវត្តយ៉ាងទូលំទូលាយក្នុងវិស័យដូចជា៖

  • មូលដ្ឋានទិន្នន័យ៖ នៅក្នុងប្រព័ន្ធមូលដ្ឋានទិន្នន័យដែលបានចែកចាយ ការចែករំលែកពាក់ព័ន្ធនឹងការបែងចែកមូលដ្ឋានទិន្នន័យទៅជាបំណែកតូចៗ។ shard នីមួយៗជាធម្មតាមានគ្រោងការណ៍ដូចគ្នា ប៉ុន្តែមានជួរទិន្នន័យផ្សេងគ្នា។
  • Blockchain៖ នៅក្នុងបណ្តាញ blockchain ការចែករំលែកចែកចាយនូវសុពលភាព និងទំនួលខុសត្រូវការផ្ទុកនៅលើថ្នាំងផ្សេងៗគ្នា ដើម្បីជៀសវាងការផ្ទុកលើសចំណុះផ្នែកណាមួយនៃប្រព័ន្ធ។

ហេតុអ្វីត្រូវប្រើ Sharding?

នៅពេលដែលប្រព័ន្ធរីកចម្រើន ដូច្នេះតម្រូវការលើហេដ្ឋារចនាសម្ព័ន្ធរបស់ពួកគេ។ ជាឧទាហរណ៍ មូលដ្ឋានទិន្នន័យដែលទទួលបានសំណួររាប់ពាន់ក្នុងមួយវិនាទីអាចពិបាកក្នុងការរក្សាដំណើរការនៅពេលដែលដាក់ក្នុងម៉ាស៊ីនមេ ឬប្រព័ន្ធតែមួយ។ Sharding ផ្តល់មធ្យោបាយជុំវិញបញ្ហាស្ទះនេះដោយបើក៖

  • ដំណើរការប៉ារ៉ាឡែល៖ ក្រឡាចត្រង្គនីមួយៗអាចគ្រប់គ្រងបន្ទុកដាច់ដោយឡែកក្នុងពេលដំណាលគ្នា ដោយធ្វើអោយប្រសើរឡើងនូវដំណើរការ។
  • ការចែកចាយធនធាន៖ ការរីករាលដាលទិន្នន័យនៅលើម៉ាស៊ីនជាច្រើនអាចបង្កើនប្រសិទ្ធភាពការប្រើប្រាស់អង្គចងចាំ កែលម្អការប្រើប្រាស់ CPU និងពង្រីកសមត្ថភាពផ្ទុកទិន្នន័យ។
  • Controlled Growth៖ អង្គការអាចធ្វើមាត្រដ្ឋានបានកាន់តែច្បាស់ដោយការបន្ថែម shards ថ្មីតាមតម្រូវការ ជំនួសឱ្យការជំនួសប្រព័ន្ធទាំងមូល។

តាម​ការ​យល់​ឃើញ ការ​បំបែក​គឺ​ដូច​ជា​ការ​បំបែក​សៀវភៅ​បញ្ជី​ធំ​ទៅ​ជា​ឯកសារ​តូចៗ​មួយ​ចំនួន ដែល​នីមួយៗ​ត្រូវ​បាន​គ្រប់គ្រង​ដោយ​ឯករាជ្យ ប៉ុន្តែ​ទាំង​អស់​គ្នា​បង្កើត​សំណុំ​ទិន្នន័យ​ពេញលេញ។

មូលហេតុចម្បងមួយសម្រាប់ការអនុវត្តការចែករំលែកគឺដើម្បីកែលម្អ ការធ្វើមាត្រដ្ឋានប្រព័ន្ធ។ នៅពេលដែលមូលដ្ឋានអ្នកប្រើប្រាស់កើនឡើង ហើយកម្មវិធីប្រមូលទិន្នន័យកាន់តែច្រើន ប្រព័ន្ធត្រូវតែអាចគ្រប់គ្រងបន្ទុកកាន់តែច្រើនដោយមិនធ្វើឱ្យខូចមុខងារ។ Sharding ផ្តល់នូវដំណោះស្រាយជាក់ស្តែងចំពោះបញ្ហាប្រឈមនេះតាមវិធីសំខាន់ៗមួយចំនួន៖

គុណសម្បត្តិនៃការធ្វើមាត្រដ្ឋានផ្ដេក

ការបំបែកជាទម្រង់នៃ ការធ្វើមាត្រដ្ឋានផ្ដេក ដែលត្រូវបានគេស្គាល់ថាជា ស្ថាបត្យកម្មខ្នាតចេញ។ ជាជាងការពឹងផ្អែកលើម៉ាស៊ីនដែលមានថាមពលកាន់តែខ្លាំងឡើងតែមួយ (ការធ្វើមាត្រដ្ឋានបញ្ឈរ) ម៉ាស៊ីនដែលមិនសូវមានថាមពលច្រើនអាចដំណើរការស្របគ្នាបាន៖

  • លទ្ធភាពធ្វើមាត្រដ្ឋាន៖ ប្រព័ន្ធអាចរីកចម្រើនជាលំដាប់ដោយបន្ថែម shards ថ្មីនៅលើ servers ថ្មីតាមតម្រូវការប៉ុណ្ណោះ។
  • ប្រសិទ្ធភាពចំណាយ៖ ជារឿយៗវាថោកជាងក្នុងការដំណើរការម៉ាស៊ីនល្មមៗជាច្រើន ជាងម៉ាស៊ីនទំនើបតែមួយ។
  • ភាពអាចជឿជាក់បាន៖ ការបរាជ័យក្នុងផ្នែកតែមួយ មិនចាំបាច់ធ្វើឱ្យប្រព័ន្ធទាំងមូលធ្លាក់ចុះនោះទេ ធ្វើអោយប្រសើរឡើងនូវភាពធន់។

ការផ្ទុកសមតុល្យ និងការអនុវត្ត

ដោយសារតែ shard នីមួយៗគ្រប់គ្រងតែផ្នែកមួយនៃបន្ទុកការងារ ការ sharding ធ្វើអោយប្រសើរឡើងនូវដំណើរការនៃប្រព័ន្ធទាំងមូល។ ប្រតិបត្តិការសរសេរ និងអានត្រូវបានចែកចាយ កាត់បន្ថយភាពយឺតយ៉ាវ និងការពារការផ្ទុកលើសចំណុះរបស់ម៉ាស៊ីនមេតែមួយ៖

  • ប្រសិទ្ធភាព​សំណួរ៖ មូលដ្ឋាន​ទិន្នន័យ​អាច​ដំណើរការ​សំណួរ​បាន​លឿន​ជាង​មុន​ដោយ​ការ​ស្វែងរក​ជួរ​ដេក​តិច​ជាង​ក្នុង​មួយ​ shard។
  • ប្រសិទ្ធភាពនៃការសរសេរ៖ ទិន្នន័យចូលត្រូវបានសរសេរទៅកាន់ shards ផ្សេងៗគ្នាក្នុងពេលដំណាលគ្នា ដែលអាចឱ្យការបញ្ចូលលឿនជាងមុន និងកាត់បន្ថយហានិភ័យ backlog ។

កម្មវិធីពិភពលោកពិត

ប្រព័ន្ធខ្នាតធំជាច្រើនប្រើប្រាស់ការចែករំលែកប្រកបដោយប្រសិទ្ធភាព៖

  • Google និង Facebook៖ ពួកគេប្រើការចែករំលែកមូលដ្ឋានទិន្នន័យ ដើម្បីគាំទ្រចរាចរណ៍សកល ខណៈពេលដែលរក្សាបាននូវទិន្នន័យ និងល្បឿន។
  • Ethereum 2.0៖ នៅក្នុង blockchain Ethereum កំពុងអនុវត្ត sharding ដើម្បីដោះស្រាយបញ្ហាការកកស្ទះបណ្តាញ និងបញ្ហាការធ្វើមាត្រដ្ឋានរបស់វា។

ដូច្នេះ តាមរយៈការបំបែកមុខងារ និងការគ្រប់គ្រងធនធានដែលបានចែកចាយ ការចែករំលែកក្លាយជាកត្តាជំរុញដ៏មានឥទ្ធិពលនៃការលូតលាស់ប្រព័ន្ធ និងការអនុវត្តដែលអាចទុកចិត្តបានតាមមាត្រដ្ឋាន។

Cryptocurrencies ផ្តល់នូវសក្តានុពលត្រឡប់មកវិញខ្ពស់ និងសេរីភាពហិរញ្ញវត្ថុកាន់តែច្រើនតាមរយៈវិមជ្ឈការ ប្រតិបត្តិការនៅក្នុងទីផ្សារដែលបើកចំហ 24/7 ។ ទោះជាយ៉ាងណាក៏ដោយ ពួកវាជាទ្រព្យសម្បត្តិដែលមានហានិភ័យខ្ពស់ដោយសារតែការប្រែប្រួលខ្លាំង និងកង្វះបទប្បញ្ញត្តិ។ ហានិភ័យចម្បងរួមមានការខាតបង់ឆាប់រហ័ស និងការបរាជ័យផ្នែកសុវត្ថិភាពតាមអ៊ីនធឺណិត។ គន្លឹះនៃភាពជោគជ័យគឺការវិនិយោគតែជាមួយយុទ្ធសាស្រ្តច្បាស់លាស់ និងជាមួយដើមទុនដែលមិនប៉ះពាល់ដល់ស្ថិរភាពហិរញ្ញវត្ថុរបស់អ្នក។

Cryptocurrencies ផ្តល់នូវសក្តានុពលត្រឡប់មកវិញខ្ពស់ និងសេរីភាពហិរញ្ញវត្ថុកាន់តែច្រើនតាមរយៈវិមជ្ឈការ ប្រតិបត្តិការនៅក្នុងទីផ្សារដែលបើកចំហ 24/7 ។ ទោះជាយ៉ាងណាក៏ដោយ ពួកវាជាទ្រព្យសម្បត្តិដែលមានហានិភ័យខ្ពស់ដោយសារតែការប្រែប្រួលខ្លាំង និងកង្វះបទប្បញ្ញត្តិ។ ហានិភ័យចម្បងរួមមានការខាតបង់ឆាប់រហ័ស និងការបរាជ័យផ្នែកសុវត្ថិភាពតាមអ៊ីនធឺណិត។ គន្លឹះនៃភាពជោគជ័យគឺការវិនិយោគតែជាមួយយុទ្ធសាស្រ្តច្បាស់លាស់ និងជាមួយដើមទុនដែលមិនប៉ះពាល់ដល់ស្ថិរភាពហិរញ្ញវត្ថុរបស់អ្នក។

ខណៈពេលដែល sharding ផ្តល់នូវអត្ថប្រយោជន៍នៃការធ្វើមាត្រដ្ឋានយ៉ាងច្រើន វាក៏បង្ហាញពីបញ្ហាប្រឈមមួយចំនួនដែលទាមទារការធ្វើផែនការយ៉ាងប្រុងប្រយ័ត្នផងដែរ។ Sharding មិន​មែន​ជា​ដំណោះ​ស្រាយ​ជា​សាកល​ទេ ហើយ​ត្រូវ​តែ​ត្រូវ​បាន​អនុវត្ត​ដោយ​គិតគូរ​ដើម្បី​ជៀសវាង​បញ្ហា​ប្រតិបត្តិការ​ចុះ​ក្រោម។

បញ្ហាប្រឈមសំខាន់ៗនៃការចែករំលែក

នៅពេលរចនា ឬប្រតិបត្តិមិនបានល្អ ការបំបែកអាចនាំទៅដល់៖

  • ភាពស្មុគស្មាញក្នុងតក្កវិជ្ជាកម្មវិធី៖ កម្មវិធីត្រូវតែដឹងពីរបៀបដែលទិន្នន័យត្រូវបានបែងចែក និងកន្លែងដែលទិន្នន័យជាក់លាក់ស្ថិតនៅ។
  • ការធ្វើសមតុល្យទិន្នន័យឡើងវិញ៖ នៅពេលដែលការចែកចាយទិន្នន័យមិនស្មើគ្នា បំណែកមួយចំនួនអាចក្លាយជា ចំណុចក្តៅ ដែលបណ្តាលឱ្យមានការរាំងស្ទះដល់ដំណើរការ។
  • ប្រតិបត្តិការ​ឆ្លង​កាត់៖ ប្រតិបត្តិការ​ដែល​មាន​ផ្នែក​ច្រើន​តម្រូវ​ឱ្យ​មាន​ការ​សម្របសម្រួល និង​ជា​ញឹកញាប់​ការ​គ្រប់គ្រង​ប្រតិបត្តិការ​ស្មុគស្មាញ​ដើម្បី​រក្សា​ភាព​ស៊ីសង្វាក់​គ្នា។
  • Operational Overhead៖ បំណែកកាន់តែច្រើនមានន័យថាផ្នែកដែលមានចលនាកាន់តែច្រើន ការត្រួតពិនិត្យ សុវត្ថិភាព និងការបម្រុងទុកកាន់តែស្មុគស្មាញ។

យុទ្ធសាស្ត្រសម្រាប់ការចែករំលែកប្រកបដោយប្រសិទ្ធភាព

ដើម្បី​បង្កើន​អត្ថប្រយោជន៍​ជា​អតិបរមា​នៃ​ការ​ចែក​រំលែក​ខណៈ​ពេល​ដែល​កាត់​បន្ថយ​បញ្ហា​ប្រឈម​របស់​ខ្លួន ការអនុវត្ត​ល្អ​បំផុត​រួម​មាន៖

  • ការជ្រើសរើសសោ Sharding Key ត្រឹមត្រូវ៖ ជម្រើសនៃគន្លឹះ Sharding គឺសំខាន់ណាស់។ វាត្រូវតែចែកចាយបន្ទុកការងារឱ្យស្មើៗគ្នា ដើម្បីការពារការបញ្ឆោតទិន្នន័យ និងចំណុចក្តៅ។
  • ការតាមដាន និងវិភាគ៖ ការធ្វើសវនកម្មទៀងទាត់ធានាបានថា shards នៅតែមានតុល្យភាព។ ឧបករណ៍ត្រួតពិនិត្យអាចជួយរកឃើញភាពមិនប្រក្រតីបានទាន់ពេលវេលា។
  • កាត់បន្ថយសកម្មភាព Cross-Shard៖ រចនាកម្មវិធីដើម្បីដំណើរការជាចម្បងក្នុងផ្នែកតែមួយ ដើម្បីសម្រួលតក្កវិជ្ជា និងបង្កើនប្រសិទ្ធភាពការងារ។
  • ឧបករណ៍បញ្ជូនបន្តដោយស្វ័យប្រវត្តិ៖ ប្រព័ន្ធទំនើបតែងតែភ្ជាប់មកជាមួយឧបករណ៍សម្រាប់កំណត់ទីតាំងទិន្នន័យឡើងវិញតាមលក្ខណៈថាមវន្តនៅពេលផ្ទុកការផ្លាស់ប្តូរ។

ការចែករំលែកក្នុងគំនិតរចនា

ស្ថាបត្យកម្ម​សម្រាប់​ការ​បំបែក​តម្រូវ​ឱ្យ​មាន​ការ​មើល​ឃើញ​ជាមុន។ វាងាយស្រួលជាងក្នុងការសាងសង់ដោយគិតតាំងពីដើមដំបូងជាជាងជួសជុលប្រព័ន្ធ monolithic ដែលមានស្រាប់។ ក្រុមហ៊ុនកំពុងទទួលយកសេវាកម្មខ្នាតតូច និងម៉ូដែលគ្មានម៉ាស៊ីនបម្រើកាន់តែច្រើនឡើង ដែលផ្គូផ្គងយ៉ាងល្អជាមួយស្ថាបត្យកម្មដែលបានបំបែកសម្រាប់ការគ្រប់គ្រង និងអាដាប់ធ័រ។

សរុបមក ការបំបែកគឺជាបច្ចេកទេសដែលបង្ហាញឱ្យឃើញក្នុងការកំណត់ប្រព័ន្ធ កាត់បន្ថយភាពយឺតយ៉ាវ និងគ្រប់គ្រងបរិមាណទិន្នន័យធំ។ ទោះយ៉ាងណាក៏ដោយ វាទាមទារឱ្យមានការរៀបចំផែនការយុទ្ធសាស្ត្រ ការអនុវត្តប្រកបដោយជំនាញ និងការថែទាំជាបន្ត ដើម្បីការពារការដួលរលំ និងដោះសោសក្តានុពលពេញលេញរបស់វា។

វិនិយោគឥឡូវនេះ >>