បញ្ហា (The Problem)៖ អ្នកប្រើប្រាស់ HPC (High-Performance Computing) តែងជួបប្រទះការខាតបង់ធនធាន និងការចំណាយខ្ពស់នៅពេលប្រើប្រាស់ប្រព័ន្ធកុំព្យូទ័រពពកជាប្រពៃណី (VM clusters) ខណៈប្រព័ន្ធ Serverless នៅមានកម្រិតទាក់ទងនឹងការផ្ទុកទិន្នន័យ (Statelessness) និងពេលវេលាប្រតិបត្តិការ។
វិធីសាស្ត្រ (The Methodology)៖ ការសិក្សានេះស្នើឡើងនូវប្រព័ន្ធកូនកាត់ឈ្មោះ Mashup ដែលប្រើប្រាស់ឧបករណ៍បញ្ជាការសម្រេចចិត្តទីតាំង (Placement Decision Controller) ដើម្បីវិភាគ និងជ្រើសរើសបរិយាកាសគណនាដ៏ល្អបំផុតសម្រាប់កិច្ចការនីមួយៗ។
លទ្ធផលសំខាន់ៗ (The Verdict)៖
| វិធីសាស្ត្រ (Method) | គុណសម្បត្តិ (Pros) | គុណវិបត្តិ (Cons) | លទ្ធផលគន្លឹះ (Key Result) |
|---|---|---|---|
| Mashup (Hybrid Execution with PDC) Mashup (ការអនុវត្តបែបកូនកាត់ជាមួយប្រព័ន្ធ PDC) |
ជ្រើសរើសបរិស្ថានប្រតិបត្តិការល្អបំផុតដោយស្វ័យប្រវត្តិ (Serverless ឬ VM) សម្រាប់កិច្ចការនីមួយៗ ដែលជួយសន្សំទាំងពេល និងថវិកា។ វាជួយកាត់បន្ថយបញ្ហាភាពយឺតយ៉ាវនៃការចាប់ផ្តើម (Cold-start) និងការផ្ទេរទិន្នន័យ។ | ទាមទារឱ្យមានការដំណើរការសាកល្បងការងារ (Profiling) ម្តងជាមុនសិន ដើម្បីឱ្យប្រព័ន្ធអាចវាយតម្លៃនិងសម្រេចចិត្តទីតាំងបានត្រឹមត្រូវ។ | កាត់បន្ថយពេលវេលាប្រតិបត្តិការជាមធ្យម 34% និងចំណាយ 43% បើធៀបនឹងប្រព័ន្ធ Pegasus និង Kepler ព្រមទាំងលឿនជាងប្រព័ន្ធ VM cluster សុទ្ធរហូតដល់ចន្លោះពី 37% ទៅ 68%។ |
| Traditional VM-based Cluster ការប្រើប្រាស់ប្រព័ន្ធកុំព្យូទ័រពពកជាប្រពៃណី (VM Cluster) |
គ្មានបញ្ហាភាពយឺតយ៉ាវពេលចាប់ផ្តើម (Cold-start) ហើយសក្តិសមបំផុតសម្រាប់កិច្ចការដែលត្រូវការរយៈពេលដំណើរការយូរនិងមានការផ្លាស់ប្តូរទិន្នន័យច្រើន។ | ចំណាយខ្ពស់និងងាយប្រឈមនឹងបញ្ហាការរៀបចំធនធានលើសតម្រូវការ (Over-provisioning) ដែលធ្វើឱ្យខាតបង់ធនធានចោលពេលកិច្ចការមួយចំនួនរង់ចាំគ្នា។ | ប្រើពេលយូរជាងនិងមានតម្លៃថ្លៃជាងប្រព័ន្ធ Mashup (Mashup ចំណាយអស់តិចជាងប្រមាណពី 58% ទៅ 62% បើធៀបនឹងប្រព័ន្ធនេះ)។ |
| Serverless-only Execution ការអនុវត្តតាមបែប Serverless សុទ្ធ (AWS Lambda) |
គិតលុយតែពេលដំណើរការជាក់ស្តែង (Pay-as-you-go) គ្មានធនធានទំនេរចោល និងងាយស្រួលពង្រីកទំហំដោយស្វ័យប្រវត្តិសម្រាប់កិច្ចការដែលធ្វើស្របគ្នាច្រើន។ | មានដែនកំណត់រយៈពេលដំណើរការយ៉ាងតឹងរ៉ឹង (ឧ.ត្រឹម 15 នាទី) ប្រឈមបញ្ហា Cold-start និងទាមទារការសរសេរអានទិន្នន័យតាមរយៈ Storage ខាងក្រៅដែលធ្វើឱ្យយឺតយ៉ាវ។ | មានដំណើរការយឺតជាងប្រព័ន្ធ VM-based Cluster ធម្មតាជាង 10% ដោយសារបន្ទុកបន្ថែម (Overheads) នៃការសរសេរ/អានទិន្នន័យ។ |
| State-of-the-art Workflow Managers (Pegasus, Kepler) ប្រព័ន្ធគ្រប់គ្រងលំហូរការងារទំនើបៗ (Pegasus និង Kepler) |
មានមុខងារដ៏រឹងមាំក្នុងការគ្រប់គ្រង កំណត់កាលវិភាគការងារស្មុគស្មាញ និងការកាត់បន្ថយការគណនាស្ទួននៅលើប្រព័ន្ធ VM Cluster។ | មិនមានសមត្ថភាពក្នុងការទាញយកអត្ថប្រយោជន៍ពីស្ថាបត្យកម្មប្រព័ន្ធ Serverless ដើម្បីបង្កើនល្បឿន ឬកាត់បន្ថយតម្លៃចំណាយនៅឡើយទេ។ | ដំណើរការយឺតជាងប្រព័ន្ធ Mashup កូនកាត់ជាមធ្យម 34% លើបរិស្ថានកុំព្យូទ័រពពកដូចគ្នា។ |
ការចំណាយលើធនធាន (Resource Cost)៖ ការអនុវត្តប្រព័ន្ធនេះទាមទារនូវគណនី Cloud Computing ធំៗ ព្រមទាំងការយល់ដឹងពីការកំណត់រចនាសម្ព័ន្ធកូដកម្រិតខ្ពស់ និងថវិកាសម្រាប់ជួលការផ្ទុកទិន្នន័យខ្នាតធំ។
ការសិក្សានេះពឹងផ្អែកទាំងស្រុងលើប្រព័ន្ធពពកពាណិជ្ជកម្មខ្នាតធំ (AWS និង GCP) និងឈុតទិន្នន័យហ្សែន/ជីវព័ត៌មានវិទ្យា (Bioinformatics) មកពីបរទេស។ សម្រាប់ប្រទេសកម្ពុជា ការទាញយក ឬបញ្ជូនទិន្នន័យរាប់ Terabytes ទៅកាន់ Cloud Datacenter ដែលស្ថិតនៅក្រៅប្រទេស អាចជួបបញ្ហាល្បឿនអ៊ីនធឺណិត (Latency) និងការចំណាយលើកម្រិតបញ្ជូនអ៊ីនធឺណិតខ្ពស់ (Bandwidth Cost)។
ទោះបីជាមានបញ្ហាប្រឈមផ្នែកហេដ្ឋារចនាសម្ព័ន្ធអ៊ីនធឺណិតក្តី យុទ្ធសាស្ត្រ Mashup នេះមានសក្តានុពលខ្ពស់សម្រាប់ជួយអ្នកស្រាវជ្រាវកម្ពុជាក្នុងការប្រើប្រាស់កុំព្យូទ័រកម្រិតខ្ពស់ដោយមិនបាច់ចំណាយទុនធំ។
ជារួម Mashup ផ្តល់នូវដំណោះស្រាយដ៏ឆ្លាតវៃសម្រាប់ស្ថាប័ននៅកម្ពុជាដែលខ្វះខាតធនធានម៉ាស៊ីនមេផ្ទាល់ខ្លួន ដើម្បីអាចចូលរួមក្នុងការស្រាវជ្រាវវិទ្យាសាស្ត្រកម្រិតខ្ពស់បានក្នុងតម្លៃសមរម្យ និងប្រកបដោយប្រសិទ្ធភាព។
ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖
| ពាក្យបច្ចេកទេស | ការពន្យល់ជាខេមរភាសា (Khmer Explanation) | និយមន័យសាមញ្ញ (Simple Definition) |
|---|---|---|
| Serverless Computing | ជាទម្រង់នៃការគណនាលើពពកដែលអ្នកប្រើប្រាស់មិនចាំបាច់គ្រប់គ្រងម៉ាស៊ីនមេ (server) ទេ ដោយប្រព័ន្ធនឹងបែងចែកធនធានដោយស្វ័យប្រវត្តិសម្រាប់ដំណើរការកូដតែម្តង ហើយគិតប្រាក់ទៅតាមទំហំធនធាននិងពេលវេលាដែលបានប្រើប្រាស់ជាក់ស្តែងប៉ុណ្ណោះ។ | ដូចជាការជួលតាក់ស៊ីជិះដែលអ្នកបង់លុយតាមចម្ងាយផ្លូវដែលបានធ្វើដំណើរជាក់ស្តែង ដោយមិនចាំបាច់ខ្វល់ពីការទិញឡាន ការថែទាំ ឬចាក់សាំងដោយខ្លួនឯងឡើយ។ |
| HPC Workflows | ជាបណ្តុំនៃកិច្ចការគណនាបែបវិទ្យាសាស្ត្រស្មុគស្មាញនិងធំៗ ដែលត្រូវបានតភ្ជាប់គ្នាតាមលំដាប់លំដោយ ដើម្បីដោះស្រាយបញ្ហា ឬវិភាគទិន្នន័យក្នុងកម្រិតខ្ពស់ (High-Performance Computing)។ | ដូចជាសង្វាក់ផលិតកម្មនៅក្នុងរោងចក្រ ដែលកិច្ចការនីមួយៗបញ្ជូនលទ្ធផលបន្តបន្ទាប់គ្នាជាដំណាក់កាលរហូតចេញជាផលិតផលសម្រេច។ |
| Directed Acyclic Graph (DAG) | ជារចនាសម្ព័ន្ធទិន្នន័យដែលបង្ហាញពីទំនាក់ទំនងនិងលំដាប់លំដោយរវាងកិច្ចការនីមួយៗក្នុងលំហូរការងារ ដោយមានទិសដៅដើរទៅមុខច្បាស់លាស់ពីកិច្ចការមួយទៅមួយទៀត ហើយមិនអាចវិលត្រឡប់ថយក្រោយជារង្វង់បានឡើយ។ | ដូចជាការធ្វើម្ហូបតាមសៀវភៅមគ្គុទ្ទេសក៍ ដែលអ្នកត្រូវធ្វើជំហានទី១ឱ្យចប់សិន ទើបអាចបន្តទៅជំហានទី២និងទី៣ ដោយមិនអាចរំលង ឬធ្វើច្រាសទិសបានឡើយ។ |
| Cold-start overhead | ជាពេលវេលាយឺតយ៉ាវនៅពេលទើបនឹងចាប់ផ្តើមដំណើរការកូដដំបូងនៅក្នុងប្រព័ន្ធ Serverless ដោយសារប្រព័ន្ធកុំព្យូទ័រពពកត្រូវចំណាយពេលរៀបចំបរិស្ថានការងារ និងទាញយកទិន្នន័យផ្សេងៗមុនពេលវាអាចដំណើរការកូដបាន។ | ដូចជាការបញ្ឆេះម៉ាស៊ីនឡានដែលទុកចោលយូរនៅពេលព្រឹកត្រជាក់ ដែលត្រូវការពេលបញ្ឆេះកម្តៅម៉ាស៊ីនមួយសន្ទុះមុនពេលអ្នកអាចបើកបរវាបានលឿន។ |
| Stateless execution | ជាលក្ខណៈនៃដំណើរការប្រព័ន្ធកុំព្យូទ័រដែលមិនរក្សាទុកទិន្នន័យ ឬចងចាំស្ថានភាពណាមួយពីការដំណើរការលើកមុនឡើយ។ រាល់ការដំណើរការថ្មីគឺចាប់ផ្តើមពីទទេ ហើយវាត្រូវពឹងផ្អែកលើការទាញយកនិងរក្សាទុកលទ្ធផលនៅកន្លែងផ្ទុកខាងក្រៅជានិច្ច។ | ដូចជាមនុស្សដែលរលាយការចងចាំរាល់ពេលងើបពីគេង ដែលគាត់ត្រូវសរសេររឿងរ៉ាវគ្រប់យ៉ាងទុកក្នុងសៀវភៅរាល់យប់ ដើម្បីអាចអាននិងចងចាំនៅថ្ងៃបន្ទាប់។ |
| Placement Decision Controller (PDC) | ជាយន្តការស្នូលរបស់ប្រព័ន្ធ Mashup ដែលធ្វើការសាកល្បង វិភាគ និងសម្រេចចិត្តដោយស្វ័យប្រវត្តិថា តើកិច្ចការណាមួយគួរតែដំណើរការលើ Serverless ឬគួរដំណើរការលើម៉ាស៊ីននិម្មិត (VM cluster) ដើម្បីសម្រេចបានល្បឿនលឿននិងចំណាយអស់តិចបំផុត។ | ដូចជាមេការសំណង់ដ៏ឆ្លាតវៃម្នាក់ ដែលប៉ាន់ស្មាននិងចាត់តាំងជាងជំនាញឱ្យសាកសមទៅនឹងប្រភេទការងារនីមួយៗ ដើម្បីឱ្យការងារឆាប់ចប់និងមិនខ្ជះខ្ជាយថវិកា។ |
| Virtual Machine (VM) cluster | ជាបណ្តុំនៃម៉ាស៊ីនកុំព្យូទ័រនិម្មិតនៅលើប្រព័ន្ធពពកដែលត្រូវបានតភ្ជាប់គ្នាជាបណ្តាញ ដើម្បីធ្វើការរួមគ្នាលើកិច្ចការធំមួយ ដែលទាមទារការកំណត់ទំហំនិងបង់ប្រាក់ជួលធនធានទុកជាមុន មិនថាយើងប្រើប្រាស់វាពេញលេញឬអត់នោះទេ។ | ដូចជាការជួលក្រុមការងារពេញម៉ោងប្រចាំខែដើម្បីធ្វើការរួមគ្នាក្នុងគម្រោងមួយ ដែលអ្នកត្រូវបង់ប្រាក់ខែឱ្យពួកគេរាល់ខែ ទោះបីជាថ្ងៃខ្លះគ្មានការងារធ្វើក៏ដោយ។ |
អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖
ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖