 ஒரு தரவுத்தளம் ACID இணக்கமாக இருந்தால் என்ன அர்த்தம்?
கணினி அறிவியலில், ACID (அணு, நிலைத்தன்மை, தனிமைப்படுத்தல், ஆயுள்) என்பது தரவுத்தள பரிவர்த்தனைகளின் பண்புகளின் தொகுப்பாகும், இது பிழைகள், மின் செயலிழப்புகள் மற்றும் பிற விபத்துக்கள் இருந்தபோதிலும் தரவு செல்லுபடியாகும் தன்மைக்கு உத்தரவாதம் அளிக்கும் நோக்கம் கொண்டது. தரவுத்தளங்களின் சூழலில், ACID பண்புகளை திருப்திபடுத்தும் தரவுத்தள செயல்பாடுகளின் வரிசையானது (தரவில் உள்ள ஒரு தருக்கச் செயல்பாடாகக் கருதப்படலாம்) பரிவர்த்தனை எனப்படும். எடுத்துக்காட்டாக, ஒரு வங்கிக் கணக்கிலிருந்து மற்றொரு வங்கிக் கணக்கிற்குப் பணப் பரிமாற்றம், ஒரு கணக்கில் டெபிட் செய்வது மற்றும் மற்றொரு கணக்கில் வரவு வைப்பது போன்ற பல மாற்றங்களை உள்ளடக்கியதும், ஒரே பரிவர்த்தனையாகும். 1983 ஆம் ஆண்டில், ஆண்ட்ரியாஸ் ராய்ட்டர் மற்றும் தியோ ஹார்டர் ஆகியோர் ACID என்ற சுருக்கத்தை உருவாக்கினர், இது ஜிம் கிரேவின் முந்தைய படைப்பை உருவாக்கியது, அவர் பரிவர்த்தனை கருத்தை வகைப்படுத்தும் போது அணு, நிலைத்தன்மை மற்றும் ஆயுள் ஆகியவற்றைக் குறிப்பிட்டார், ஆனால் தனிமைப்படுத்தப்படவில்லை. இந்த நான்கு பண்புகள் பரிவர்த்தனை முன்னுதாரணத்தின் முக்கிய உத்தரவாதங்களாகும், இது தரவுத்தள அமைப்புகளின் வளர்ச்சியின் பல அம்சங்களை பாதித்துள்ளது. கிரே மற்றும் ராய்ட்டரின் கூற்றுப்படி, IBM தகவல் மேலாண்மை அமைப்பு 1973 ஆம் ஆண்டிலேயே ACID பரிவர்த்தனைகளை ஆதரித்தது (அதன் சுருக்கம் பின்னர் உருவாக்கப்பட்டது என்றாலும்). அணுமின்மை முதன்மைக் கட்டுரை: அணு (தரவுத்தள அமைப்புகள்) பரிவர்த்தனைகள் பெரும்பாலும் பல அறிக்கைகளால் ஆனவை. ஒவ்வொரு பரிவர்த்தனையும் ஒரு "யூனிட்" ஆகக் கருதப்படுவதற்கு அணுசக்தி உத்தரவாதம் அளிக்கிறது, அது முழுவதுமாக வெற்றிபெறுகிறது அல்லது முற்றிலும் தோல்வியடைகிறது: பரிவர்த்தனையை உருவாக்கும் அறிக்கைகள் ஏதேனும் முடிவடையவில்லை என்றால், முழு பரிவர்த்தனையும் தோல்வியடையும் மற்றும் தரவுத்தளமும் மாறாமல் இருக்கும். ஒரு அணு அமைப்பு ஒவ்வொரு சூழ்நிலையிலும் அணுசக்திக்கு உத்தரவாதம் அளிக்க வேண்டும், மின் செயலிழப்புகள், பிழைகள் மற்றும் செயலிழப்புகள் உட்பட. அணுசக்தியின் உத்தரவாதமானது தரவுத்தளத்திற்கான புதுப்பிப்புகளை ஓரளவு மட்டுமே நிகழாமல் தடுக்கிறது, இது முழுத் தொடரையும் முழுவதுமாக நிராகரிப்பதை விட பெரிய சிக்கல்களை ஏற்படுத்தும். இதன் விளைவாக, மற்றொரு தரவுத்தள கிளையண்ட் மூலம் பரிவர்த்தனை நடந்து கொண்டிருப்பதைக் கவனிக்க முடியாது. ஒரு நேரத்தில், அது இன்னும் நடக்கவில்லை, அடுத்ததாக, அது ஏற்கனவே முழுவதுமாக நிகழ்ந்துள்ளது (அல்லது பரிவர்த்தனை செயல்பாட்டில் ரத்து செய்யப்பட்டால் எதுவும் நடக்கவில்லை). நிலைத்தன்மை முதன்மைக் கட்டுரை: Consistency (database systems) ஒரு பரிவர்த்தனையானது தரவுத்தளத்தை ஒரு நிலையான நிலையில் இருந்து மற்றொரு நிலைக்கு கொண்டு வர முடியும் என்பதை உறுதிப்படுத்துகிறது, தரவுத்தள மாறுபாடுகளைப் பாதுகாக்கிறது: தரவுத்தளத்தில் எழுதப்பட்ட எந்தத் தரவும் கட்டுப்பாடுகள், அடுக்குகள், உட்பட அனைத்து வரையறுக்கப்பட்ட விதிகளின்படி செல்லுபடியாகும். தூண்டுதல்கள் மற்றும் அவற்றின் எந்த கலவையும். இது சட்டவிரோத பரிவர்த்தனை மூலம் தரவுத்தள ஊழலைத் தடுக்கிறது. குறிப்பு ஒருமைப்பாடு முதன்மை முக்கிய வெளிநாட்டு முக்கிய உறவுக்கு உத்தரவாதம் அளிக்கிறது. தனிமைப்படுத்துதல் முதன்மைக் கட்டுரை: தனிமைப்படுத்துதல் (தரவுத்தள அமைப்புகள்) பரிவர்த்தனைகள் பெரும்பாலும் ஒரே நேரத்தில் செயல்படுத்தப்படுகின்றன (எ.கா., பல பரிவர்த்தனைகள் ஒரே நேரத்தில் ஒரு அட்டவணையைப் படித்து எழுதுதல்). பரிவர்த்தனைகளை ஒரே நேரத்தில் செயல்படுத்துவதால், பரிவர்த்தனைகள் தொடர்ச்சியாக செயல்படுத்தப்பட்டால் பெறப்படும் அதே நிலையில் தரவுத்தளத்தை விட்டுவிடுவதை தனிமைப்படுத்துதல் உறுதி செய்கிறது. தனிமைப்படுத்தல் என்பது கூட்டுக் கட்டுப்பாட்டின் முக்கிய குறிக்கோள்; பயன்படுத்தப்படும் தனிமைப்படுத்தல் அளவைப் பொறுத்து, முழுமையற்ற பரிவர்த்தனையின் விளைவுகள் மற்ற பரிவர்த்தனைகளுக்குத் தெரியாமல் போகலாம். Durability முதன்மைக் கட்டுரை: Durability (தரவுத்தள அமைப்புகள்) ஒரு முறை பரிவர்த்தனை செய்யப்பட்டால், அது கணினி செயலிழந்தாலும் (எ.கா. மின்வெட்டு அல்லது செயலிழந்தால்) அது உறுதியாக இருக்கும் என்பதற்கு நீடித்து உத்திரவாதம் அளிக்கிறது. இது வழக்கமாக முடிக்கப்பட்ட பரிவர்த்தனைகள் (அல்லது அவற்றின் விளைவுகள்) நிலையற்ற நினைவகத்தில் பதிவு செய்யப்படுகின்றன என்பதாகும்.
ACID என்பது அணு, நிலைத்தன்மை, தனிமைப்படுத்தல் மற்றும் நீடித்த தன்மையைக் குறிக்கும் சுருக்கமாகும். அணு என்பது செயல்கள் முற்றிலும் அல்லது இல்லாமலேயே நிகழும்; ஒரு செயலின் ஒரு பகுதி மட்டுமே முடிக்கப்பட்ட பகுதியளவு எழுதுதல் அல்லது சூழ்நிலை இல்லை. ஒரு தரவுத்தளத்தைப் பொறுத்தவரை, தரவு ஒரு பரிவர்த்தனையில் எழுதப்பட்டிருந்தால், அந்த பரிவர்த்தனை முழுவதுமாக முடிவடைகிறது அல்லது ஒரு பகுதி அல்லது சிதைந்த நிலையில் எந்தத் தரவையும் விட்டுவிடாமல் முற்றிலும் தோல்வியடைகிறது. நிலைத்தன்மை என்பது ஒரு செல்லுபடியாகும் நிலையில் இருந்து மற்றொரு செல்லுபடியாகும் மாநிலத்திற்கு செல்லுபடியாகும் நிலையில் உள்ளிட எந்த வழியும் இல்லாமல் பரிவர்த்தனைகள் மாநிலத்தை எடுத்துச் செல்வதாகும். தனிமைப்படுத்தல் என்பது ஒரே தரவுத்தளத்தில் உள்ள பல வாசகர்கள்/எழுத்தாளர்கள் ஒருவருக்கொருவர் குறுக்கிடுவதில்லை மற்றும் மற்றொரு செயலின் விளைவுகளைப் பற்றி கவலைப்படாமல் தொடரலாம். நீடித்து நிலை என்பது தோல்விகள் மற்றும் பணிநிறுத்தங்கள் முழுவதும் பாதுகாக்கப்படுவதைக் குறிக்கிறது, எ.கா. நிலை நிரந்தர சேமிப்பிற்கு நிலைத்திருக்கும்.