ACID ការពារទិន្នន័យមូលដ្ឋានទិន្នន័យរបស់អ្នក
គំរូ ACID នៃការរចនាមូលដ្ឋានទិន្នន័យគឺជាគំនិតមួយក្នុងចំណោមគំនិតចាស់បំផុតនិងសំខាន់បំផុតនៃទ្រឹស្តីមូលដ្ឋានទិន្នន័យ។ វាកំណត់បានបួនគោលដៅដែលគ្រប់ប្រព័ន្ធគ្រប់គ្រងទិន្នន័យត្រូវខិតខំដើម្បីសម្រេចបាន: អាតូមភាពភាពស៊ីសង្វាក់ឯកោនិងភាពធន់។ មូលដ្ឋានទិន្នន័យទំនាក់ទំនងដែលបរាជ័យក្នុងការបំពេញតាមគោលដៅទាំងបួននេះមិនអាចចាត់ទុកថាគួរឱ្យទុកចិត្តបានទេ។ មូលដ្ឋានទិន្នន័យដែលមានលក្ខណៈទាំងនេះត្រូវបានគេចាត់ទុកថាជា ACID-compliant ។
កំណត់ ACID
ចូរចំណាយពេលមួយភ្លែតដើម្បីពិនិត្យមើលលក្ខណៈនីមួយៗទាំងនេះដោយលំអិត:
- បរិមាណអាលុយមីញ៉ូមបញ្ជាក់ថាការកែប្រែមូលដ្ឋានទិន្នន័យត្រូវធ្វើតាមច្បាប់ "ទាំងអស់ឬគ្មានអ្វី" ។ រាល់ប្រតិបត្តិការត្រូវបានគេនិយាយថាជា "អាតូមិច" ។ ប្រសិនបើផ្នែកមួយនៃប្រតិបត្តិការបរាជ័យ, ប្រតិបត្តិការទាំងមូលបរាជ័យ។ វាមានសារៈសំខាន់ណាស់ដែលប្រព័ន្ធគ្រប់គ្រងមូលដ្ឋានទិន្នន័យរក្សានូវប្រភេទអាតូមនៃប្រតិបត្តិការទោះបីជាមានបញ្ហាប្រព័ន្ធទិន្នន័យឌីជីថលប្រព័ន្ធប្រតិបត្តិការឬបញ្ហាផ្នែករឹងក៏ដោយ។
- ភាពស្របគ្នា ចែងថាមានតែទិន្នន័យត្រឹមត្រូវប៉ុណ្ណោះនឹងត្រូវបានសរសេរទៅកាន់មូលដ្ឋានទិន្នន័យ។ ប្រសិនបើហេតុផលមួយចំនួនប្រតិបត្តិការត្រូវបានប្រតិបត្តិដែលបំពានច្បាប់រក្សាលំនឹងរបស់មូលដ្ឋានទិន្នន័យនោះប្រតិបត្តិការទាំងមូលនឹងត្រូវរមៀលហើយមូលដ្ឋានទិន្នន័យនឹងត្រូវបានស្ដារឡើងវិញទៅតាមស្ថានភាពដែលស្របតាមច្បាប់ទាំងនោះ។ ម្យ៉ាងវិញទៀតប្រសិនបើប្រតិបត្តិការជោគជ័យកើតឡើងវានឹងយកមូលដ្ឋានទិន្នន័យពីរដ្ឋមួយដែលស្របនឹងច្បាប់ទៅរដ្ឋផ្សេងទៀតដែលស្របតាមច្បាប់ផងដែរ។
- ការដាច់ចេញពីគ្នា តម្រូវឱ្យមានប្រតិបត្តិការច្រើនក្នុងពេលតែមួយមិនប៉ះពាល់ដល់ការអនុវត្តគ្នាទៅវិញទៅមក។ ឧទាហរណ៍ប្រសិនបើ Joe ដោះដូរប្រតិបត្តការប្រឆាំងនឹងមូលដ្ឋានទិន្នន័យនៅពេលដំណាលគ្នាម៉ារីបានចេញប្រតិបត្តិការផ្សេងគ្នាប្រតិបត្តិការទាំងពីរគួរតែដំណើរការនៅលើមូលដ្ឋានទិន្នន័យដាច់ដោយឡែក។ មូលដ្ឋានទិន្នន័យគួរតែអនុវត្តរាល់ប្រតិបត្តិការរបស់ Joe មុនពេលប្រតិបត្តិម៉ារីឬផ្ទុយមកវិញ។ នេះរារាំងការជួញដូររបស់ Joe ពីការអានទិន្នន័យកម្រិតមធ្យមដែលត្រូវបានផលិតឡើងជាផលប៉ះពាល់នៃផ្នែកមួយនៃប្រតិបត្តិការរបស់ម៉ារីដែលនឹងមិនត្រូវបានប្រព្រឹត្តទៅមូលដ្ឋានទិន្នន័យ។ ចំណាំថាទ្រព្យសម្បត្តិដាច់ស្រយាលមិនធានាថាប្រតិបត្តិការណាមួយនឹងត្រូវអនុវត្តជាមុនទេ - គ្រាន់តែប្រតិបត្តិការនោះនឹងមិនរំខានដល់គ្នាទៅវិញទៅមក
- ការធានាបាន យូរអង្វែង ធានាថាប្រតិបត្តិការណាមួយដែលបានប្រព្រឹត្តទៅលើមូលដ្ឋានទិន្នន័យនឹងមិនបាត់បង់ទេ។ ការធានាបានយូរគឺត្រូវបានធានាតាមរយៈការប្រើប្រាស់ទិន្នន័យបម្រុងទុកទិន្នន័យនិងកំណត់ត្រាប្រតិបត្ដិការដែលជួយសម្រួលដល់ការស្តារប្រតិបត្តិការប្រតិបត្តិការឡើងវិញទោះបីជាមានការខកខានផ្នែកទន់ឬផ្នែករឹងណាមួយក៏ដោយ។
របៀបដែល ACID ធ្វើការនៅក្នុងការអនុវត្ត
អ្នកគ្រប់គ្រងទិន្នន័យប្រើយុទ្ធសាស្ត្រជាច្រើនដើម្បីពង្រឹង ACID ។
មួយត្រូវបានប្រើដើម្បីពង្រឹងអាតូមនិងយូរអង្វែងគឺការ សរសេរមុនពេល ចុះចត (WAL) ដែលព័ត៌មានលំអិតនៃប្រតិបត្តិណាមួយត្រូវបានសរសេរជាលើកដំបូងទៅក្នុងកំណត់ហេតុដែលរួមបញ្ចូលទាំងការធ្វើឡើងវិញនិងមិនធ្វើវិញព័ត៌មាន។ វាធានាថាប្រសិនបើទិន្នន័យបរាជ័យនៃការតម្រៀបទិន្នន័យអាចពិនិត្យមើល កំណត់ហេតុនិងប្រៀបធៀបមាតិការបស់វាទៅនឹងស្ថានភាពរបស់មូលដ្ឋានទិន្នន័យ។
វិធីសាស្រ្តមួយទៀតដែលត្រូវបានប្រើដើម្បីដោះស្រាយអាតូមនិងភាពធន់គឺ ស្រមោលទំព័រ ដែលទំព័រស្រមោលត្រូវបានបង្កើតនៅពេលទិន្នន័យត្រូវបានកែប្រែ។ ភាពទាន់សម័យរបស់សំណួរត្រូវបានសរសេរទៅទំព័រស្រមោលជាជាងទៅទិន្នន័យពិតនៅក្នុងមូលដ្ឋានទិន្នន័យ។ មូលដ្ឋានទិន្នន័យរបស់វាត្រូវបានកែប្រែតែប៉ុណ្ណោះនៅពេលការកែប្រែបញ្ចប់។
យុទ្ធសាស្រ្តមួយផ្សេងទៀតត្រូវបានគេហៅថាពិធីសារ ប្រព្រឹត្តទៅពីរដំណាក់កាល ជាពិសេសមានប្រយោជន៍នៅក្នុងប្រព័ន្ធមូលដ្ឋានទិន្នន័យចែកចាយ។ ពិធីការនេះបំបែកសំណើដើម្បីកែប្រែទិន្នន័យជាពីរដំណាក់កាល: ដំណាក់កាលស្នើសុំនិងដំណាក់កាលប្រព្រឹត្ត។ នៅក្នុងដំណាក់កាលស្នើសុំ DBMSs ទាំងអស់នៅលើបណា្ដញដែលទទួលរងផលប៉ះពាល់ពីការធ្វើជំនួញត្រូវបញ្ជាក់ថាពួកគេបានទទួលវាហើយមានលទ្ធភាពអនុវត្តប្រតិបត្តិការ។ នៅពេលការបញ្ជាក់ត្រូវបានទទួលពី DBMSs ពាក់ព័ន្ធទាំងអស់ដំណាក់កាលប្រឆំាងបញ្ចប់នៅក្នុងទិន្នន័យដែលត្រូវបានកែប្រែ។