இன்டர் சிஸ்டம்ஸ் ஐஆர்ஐஎஸ் உலகளாவிய பரிவர்த்தனைகள்

இன்டர் சிஸ்டம்ஸ் ஐஆர்ஐஎஸ் உலகளாவிய பரிவர்த்தனைகள்InterSystems IRIS DBMS ஆனது தரவுகளை சேமிப்பதற்கான சுவாரஸ்யமான கட்டமைப்புகளை ஆதரிக்கிறது - குளோபல்ஸ். அடிப்படையில், இவை பரிவர்த்தனைகள், தரவு மரங்களை கடப்பதற்கான வேகமான செயல்பாடுகள், பூட்டுகள் மற்றும் அதன் சொந்த ஆப்ஜெக்ட் ஸ்கிரிப்ட் மொழி போன்ற பல்வேறு கூடுதல் நன்மைகளுடன் கூடிய பல-நிலை விசைகள் ஆகும்.

"Globals என்பது தரவுகளை சேமிப்பதற்கான புதையல்-வாள்கள்" என்ற கட்டுரைகளின் தொடரில் குளோபல்ஸ் பற்றி மேலும் வாசிக்க:

மரங்கள். பகுதி 1
மரங்கள். பகுதி 2
அரிதான வரிசைகள். பகுதி 3

உலகளாவிய நாடுகளில் பரிவர்த்தனைகள் எவ்வாறு செயல்படுத்தப்படுகின்றன, என்ன அம்சங்கள் உள்ளன என்பதில் நான் ஆர்வமாக இருந்தேன். எல்லாவற்றிற்கும் மேலாக, இது வழக்கமான அட்டவணைகளை விட தரவை சேமிப்பதற்கான முற்றிலும் மாறுபட்ட கட்டமைப்பாகும். மிகவும் கீழ் நிலை.

தொடர்புடைய தரவுத்தளங்களின் கோட்பாட்டிலிருந்து அறியப்பட்டபடி, பரிவர்த்தனைகளின் நல்ல செயலாக்கம் தேவைகளைப் பூர்த்தி செய்ய வேண்டும். ACID:

A - அணு (அணுசக்தி). பரிவர்த்தனையில் செய்யப்பட்ட அனைத்து மாற்றங்களும் அல்லது எதுவும் பதிவு செய்யப்படவில்லை.

சி - நிலைத்தன்மை. பரிவர்த்தனை முடிந்ததும், தரவுத்தளத்தின் தருக்க நிலை உள்நிலையில் சீரானதாக இருக்க வேண்டும். பல வழிகளில் இந்தத் தேவை புரோகிராமரைப் பற்றியது, ஆனால் SQL தரவுத்தளங்களில் இது வெளிநாட்டு விசைகளைப் பற்றியது.

நான் - தனிமைப்படுத்து. இணையாக இயங்கும் பரிவர்த்தனைகள் ஒன்றையொன்று பாதிக்கக் கூடாது.

டி - நீடித்தது. பரிவர்த்தனையை வெற்றிகரமாக முடித்த பிறகு, குறைந்த மட்டங்களில் உள்ள சிக்கல்கள் (உதாரணமாக, மின் செயலிழப்பு) பரிவர்த்தனையால் மாற்றப்பட்ட தரவைப் பாதிக்கக்கூடாது.

குளோபல்ஸ் என்பது தொடர்பில்லாத தரவு கட்டமைப்புகள். அவை மிகக் குறைந்த வன்பொருளில் அதிவேகமாக இயங்கும் வகையில் வடிவமைக்கப்பட்டுள்ளன. பயன்படுத்தி உலகளாவிய பரிவர்த்தனைகளை செயல்படுத்துவதைப் பார்ப்போம் அதிகாரப்பூர்வ IRIS டோக்கர் படம்.

IRIS இல் பரிவர்த்தனைகளை ஆதரிக்க, பின்வரும் கட்டளைகள் பயன்படுத்தப்படுகின்றன: TSTART, TCOMMIT, ட்ரால்பேக்.

1. அணுசக்தி

சரிபார்க்க எளிதான வழி அணு. தரவுத்தள கன்சோலில் இருந்து சரிபார்க்கிறோம்.

Kill ^a
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3
TCOMMIT

பின்னர் நாங்கள் முடிக்கிறோம்:

Write ^a(1), “ ”, ^a(2), “ ”, ^a(3)

நாங்கள் பெறுகிறோம்:

1 2 3

எல்லாம் நன்றாக இருக்கிறது. அணுத்தன்மை பராமரிக்கப்படுகிறது: அனைத்து மாற்றங்களும் பதிவு செய்யப்படுகின்றன.

பணியை சிக்கலாக்குவோம், ஒரு பிழையை அறிமுகப்படுத்துவோம் மற்றும் பரிவர்த்தனை எவ்வாறு சேமிக்கப்படுகிறது, ஓரளவு அல்லது இல்லை.

அணுவை மீண்டும் சரிபார்க்கலாம்:

Kill ^A
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3

பின்னர் நாங்கள் கொள்கலனை வலுக்கட்டாயமாக நிறுத்தி, அதை ஏவிவிட்டு பார்ப்போம்.

docker kill my-iris

இந்த கட்டளையானது, செயலிழப்பை உடனடியாக நிறுத்த ஒரு SIGKILL சிக்னலை அனுப்புவதால், கிட்டத்தட்ட ஒரு விசை நிறுத்தத்திற்குச் சமமானதாகும்.

ஒருவேளை பரிவர்த்தனை ஓரளவு சேமிக்கப்பட்டதா?

WRITE ^a(1), ^a(2), ^a(3)
^
<UNDEFINED> ^a(1)

- இல்லை, அது பிழைக்கவில்லை.

ரோல்பேக் கட்டளையை முயற்சிப்போம்:

Kill ^A
TSTART
Set ^a(1) = 1
Set ^a(2) = 2
Set ^a(3) = 3
TROLLBACK

WRITE ^a(1), ^a(2), ^a(3)
^
<UNDEFINED> ^a(1)

ஒன்றும் பிழைக்கவில்லை.

2. நிலைத்தன்மை

உலகளாவிய அடிப்படையிலான தரவுத்தளங்களில், உலகளாவிய விசைகளும் உருவாக்கப்படுவதால் (உலகம் என்பது ஒரு தொடர்புடைய அட்டவணையை விட தரவைச் சேமிப்பதற்கான கீழ்-நிலை அமைப்பு என்பதை உங்களுக்கு நினைவூட்டுகிறேன்), சீரான தேவையைப் பூர்த்தி செய்ய, விசையில் மாற்றம் சேர்க்கப்பட வேண்டும் உலகளாவிய மாற்றம் போன்ற அதே பரிவர்த்தனையில்.

எடுத்துக்காட்டாக, எங்களிடம் ஒரு உலகளாவிய ^ நபர் இருக்கிறார், அதில் நாங்கள் ஆளுமைகளைச் சேமித்து, TIN ஐ ஒரு சாவியாகப் பயன்படுத்துகிறோம்.

^person(1234567, ‘firstname’) = ‘Sergey’
^person(1234567, ‘lastname’) = ‘Kamenev’
^person(1234567, ‘phone’) = ‘+74995555555
...

கடைசி பெயர் மற்றும் முதல் பெயர் மூலம் விரைவான தேடலைப் பெற, நாங்கள் ^இண்டெக்ஸ் விசையை உருவாக்கினோம்.

^index(‘Kamenev’, ‘Sergey’, 1234567) = 1

தரவுத்தளமானது சீரானதாக இருக்க, நாம் இப்படிப்பட்ட நபரைச் சேர்க்க வேண்டும்:

TSTART
^person(1234567, ‘firstname’) = ‘Sergey’
^person(1234567, ‘lastname’) = ‘Kamenev’
^person(1234567, ‘phone’) = ‘+74995555555
^index(‘Kamenev’, ‘Sergey’, 1234567) = 1
TCOMMIT

அதன்படி, நீக்கும் போது நாம் ஒரு பரிவர்த்தனையையும் பயன்படுத்த வேண்டும்:

TSTART
Kill ^person(1234567)
ZKill ^index(‘Kamenev’, ‘Sergey’, 1234567)
TCOMMIT

வேறு வார்த்தைகளில் கூறுவதானால், சீரான தேவையை பூர்த்தி செய்வது புரோகிராமரின் தோள்களில் முழுமையாக உள்ளது. ஆனால் குளோபல்ஸ் என்று வரும்போது, ​​இது அவர்களின் குறைந்த அளவிலான இயல்பு காரணமாக சாதாரணமானது.

3. தனிமைப்படுத்தல்

இங்கிருந்துதான் காடுகளின் ஆரம்பம். பல பயனர்கள் ஒரே நேரத்தில் ஒரே தரவுத்தளத்தில் வேலை செய்கிறார்கள், அதே தரவை மாற்றுகிறார்கள்.

பல பயனர்கள் ஒரே நேரத்தில் ஒரே குறியீடு களஞ்சியத்தில் பணிபுரிந்து, ஒரே நேரத்தில் பல கோப்புகளில் ஒரே நேரத்தில் மாற்றங்களைச் செய்ய முயற்சிக்கும்போது நிலைமை ஒப்பிடத்தக்கது.

தரவுத்தளம் உண்மையான நேரத்தில் அனைத்தையும் வரிசைப்படுத்த வேண்டும். தீவிர நிறுவனங்களில் பதிப்புக் கட்டுப்பாட்டுக்கு (கிளைகளை ஒன்றிணைத்தல், மோதல்களைத் தீர்ப்பது போன்றவை) பொறுப்பான ஒரு சிறப்பு நபர் கூட இருக்கிறார் என்பதைக் கருத்தில் கொண்டு, தரவுத்தளம் இதையெல்லாம் உண்மையான நேரத்தில் செய்ய வேண்டும், பணியின் சிக்கலான தன்மை மற்றும் சரியான தன்மை தரவுத்தள வடிவமைப்பு மற்றும் அதற்கு சேவை செய்யும் குறியீடு.

பயனர்கள் ஒரே தரவில் வேலை செய்தால், முரண்பாடுகளைத் தவிர்ப்பதற்காக அவர்கள் செய்யும் செயல்களின் அர்த்தத்தை தரவுத்தளத்தால் புரிந்து கொள்ள முடியாது. மற்றொரு பரிவர்த்தனையுடன் முரண்படும் ஒரு பரிவர்த்தனையை மட்டுமே இது செயல்தவிர்க்க முடியும் அல்லது அவற்றை வரிசையாக செயல்படுத்த முடியும்.

மற்றொரு சிக்கல் என்னவென்றால், ஒரு பரிவர்த்தனையின் போது (ஒரு உறுதிப்பாட்டிற்கு முன்), தரவுத்தளத்தின் நிலை சீரற்றதாக இருக்கலாம், எனவே மற்ற பரிவர்த்தனைகள் தரவுத்தளத்தின் சீரற்ற நிலைக்கு அணுகல் இல்லாதது விரும்பத்தக்கது, இது தொடர்புடைய தரவுத்தளங்களில் அடையப்படுகிறது. பல வழிகளில்: ஸ்னாப்ஷாட்களை உருவாக்குதல், பல பதிப்பு வரிசைகள் மற்றும் பல.

பரிவர்த்தனைகளை இணையாகச் செய்யும்போது, ​​அவை ஒன்றுக்கொன்று குறுக்கிடாமல் இருப்பது நமக்கு முக்கியம். இது தனிமையின் சொத்து.

SQL 4 தனிமை நிலைகளை வரையறுக்கிறது:

  • பதிவு செய்யப்படாததைப் படிக்கவும்
  • படிக்கவும்
  • மீண்டும் மீண்டும் படிக்கலாம்
  • சீரியலிசபிள்

ஒவ்வொரு நிலையையும் தனித்தனியாகப் பார்ப்போம். ஒவ்வொரு நிலையையும் செயல்படுத்துவதற்கான செலவுகள் கிட்டத்தட்ட அதிவேகமாக வளரும்.

பதிவு செய்யப்படாததைப் படிக்கவும் - இது தனிமைப்படுத்தலின் மிகக் குறைந்த நிலை, ஆனால் அதே நேரத்தில் வேகமானது. பரிவர்த்தனைகள் ஒருவருக்கொருவர் செய்த மாற்றங்களைப் படிக்கலாம்.

படிக்கவும் தனிமைப்படுத்தலின் அடுத்த நிலை, இது ஒரு சமரசம். பரிவர்த்தனைகள் ஒப்பந்தத்திற்கு முன் ஒருவருக்கொருவர் மாற்றங்களைப் படிக்க முடியாது, ஆனால் உறுதிமொழிக்குப் பிறகு செய்யப்பட்ட எந்த மாற்றங்களையும் அவர்கள் படிக்க முடியும்.

T1 போன்ற அதே தரவுகளுடன் பணிபுரிந்த T2, T3 ... Tn போன்ற பரிவர்த்தனைகளில் நீண்ட பரிவர்த்தனை T1 இருந்தால், T1 இல் தரவைக் கோரும்போது ஒவ்வொரு முறையும் வெவ்வேறு முடிவைப் பெறுவோம். இந்த நிகழ்வு மீண்டும் மீண்டும் செய்ய முடியாத வாசிப்பு என்று அழைக்கப்படுகிறது.

மீண்டும் மீண்டும் படிக்கலாம் — இந்தத் தனிமைப்படுத்தப்பட்ட நிலையில், தரவைப் படிக்க ஒவ்வொரு கோரிக்கைக்கும், முடிவுத் தரவின் ஸ்னாப்ஷாட் உருவாக்கப்பட்டு, அதே பரிவர்த்தனையில், ஸ்னாப்ஷாட்டில் இருந்து தரவு மீண்டும் பயன்படுத்தப்படுவதால், மீண்டும் மீண்டும் படிக்க முடியாத நிகழ்வு எங்களிடம் இல்லை. உபயோகப்பட்டது. இருப்பினும், இந்த தனிமைப்படுத்தப்பட்ட மட்டத்தில் பாண்டம் தரவைப் படிக்க முடியும். இணையான பரிவர்த்தனைகளால் சேர்க்கப்பட்ட புதிய வரிசைகளைப் படிப்பதை இது குறிக்கிறது.

சீரியலிசபிள் - காப்பு மிக உயர்ந்த நிலை. ஒரு பரிவர்த்தனையில் (படித்தல் அல்லது மாற்றுதல்) எந்த வகையிலும் பயன்படுத்தப்படும் தரவு முதல் பரிவர்த்தனை முடிந்த பின்னரே மற்ற பரிவர்த்தனைகளுக்குக் கிடைக்கும் என்ற உண்மையால் இது வகைப்படுத்தப்படுகிறது.

முதலில், பிரதான நூலிலிருந்து ஒரு பரிவர்த்தனையில் செயல்பாடுகள் தனிமைப்படுத்தப்படுகிறதா என்பதைக் கண்டுபிடிப்போம். 2 டெர்மினல் விண்டோக்களை திறப்போம்.

Kill ^t

Write ^t(1)
2

TSTART
Set ^t(1)=2

தனிமை இல்லை. பரிவர்த்தனையைத் திறந்த இரண்டாவது நபர் என்ன செய்கிறார் என்பதை ஒரு நூல் பார்க்கிறது.

வெவ்வேறு நூல்களின் பரிவர்த்தனைகள் அவற்றின் உள்ளே என்ன நடக்கிறது என்பதைப் பார்ப்போம்.

2 டெர்மினல் சாளரங்களைத் திறந்து 2 பரிவர்த்தனைகளை இணையாகத் திறப்போம்.

kill ^t
TSTART
Write ^t(1)
3

TSTART
Set ^t(1)=3

இணையான பரிவர்த்தனைகள் ஒருவருக்கொருவர் தரவைப் பார்க்கின்றன. எனவே, நாங்கள் எளிமையான, ஆனால் மிக விரைவான தனிமைப்படுத்தல் நிலை, READ UNCOMMITED.

கொள்கையளவில், இது உலகளாவிய ரீதியில் எதிர்பார்க்கப்படுகிறது, இதற்காக செயல்திறன் எப்போதும் முன்னுரிமையாக உள்ளது.

உலகளாவிய செயல்பாடுகளில் அதிக அளவிலான தனிமைப்படுத்தல் தேவைப்பட்டால் என்ன செய்வது?

தனிமைப்படுத்தல் நிலைகள் ஏன் தேவைப்படுகின்றன மற்றும் அவை எவ்வாறு செயல்படுகின்றன என்பதைப் பற்றி இங்கே நீங்கள் சிந்திக்க வேண்டும்.

மிக உயர்ந்த தனிமைப்படுத்தல் நிலை, SERIALIZE என்பது, இணையாக செயல்படுத்தப்படும் பரிவர்த்தனைகளின் முடிவு, அவற்றின் தொடர்ச்சியான செயல்பாட்டிற்கு சமமானதாகும், இது மோதல்கள் இல்லாததற்கு உத்தரவாதம் அளிக்கிறது.

ஆப்ஜெக்ட் ஸ்கிரிப்டில் உள்ள ஸ்மார்ட் பூட்டுகளைப் பயன்படுத்தி இதைச் செய்யலாம், இது பல்வேறு பயன்பாடுகளைக் கொண்டுள்ளது: கட்டளையுடன் வழக்கமான, அதிகரிக்கும், பல பூட்டுதல்களைச் செய்யலாம். பூட்டு.

குறைந்த தனிமை நிலைகள் தரவுத்தள வேகத்தை அதிகரிக்க வடிவமைக்கப்பட்ட வர்த்தக பரிமாற்றங்கள் ஆகும்.

பூட்டுகளைப் பயன்படுத்தி தனிமைப்படுத்தலின் வெவ்வேறு நிலைகளை எவ்வாறு அடைவது என்பதைப் பார்ப்போம்.

இந்த ஆபரேட்டர் தரவை மாற்றுவதற்குத் தேவையான பிரத்தியேக பூட்டுகளை மட்டும் எடுக்க அனுமதிக்கிறது, ஆனால் பகிரப்பட்ட பூட்டுகள் என்று அழைக்கப்படுபவை, அவை படிக்கும் போது மற்ற செயல்முறைகளால் மாற்றப்படக் கூடாத தரவைப் படிக்க வேண்டியிருக்கும் போது இணையாக பல நூல்களை எடுக்கலாம்.

ரஷ்ய மற்றும் ஆங்கிலத்தில் இரண்டு-கட்ட தடுப்பு முறை பற்றிய கூடுதல் தகவல்கள்:

இரண்டு கட்ட தடுப்பு
இரண்டு கட்ட பூட்டுதல்

சிரமம் என்னவென்றால், பரிவர்த்தனையின் போது தரவுத்தளத்தின் நிலை சீரற்றதாக இருக்கலாம், ஆனால் இந்த சீரற்ற தரவு மற்ற செயல்முறைகளுக்குத் தெரியும். இதை எப்படி தவிர்ப்பது?

பூட்டுகளைப் பயன்படுத்தி, தரவுத்தளத்தின் நிலை சீரானதாக இருக்கும் தெரிவுநிலை சாளரங்களை உருவாக்குவோம். ஒப்புக்கொள்ளப்பட்ட மாநிலத்தின் தெரிவுநிலை சாளரங்களுக்கான அனைத்து அணுகலும் பூட்டுகளால் கட்டுப்படுத்தப்படும்.

ஒரே தரவில் பகிரப்பட்ட பூட்டுகள் மீண்டும் பயன்படுத்தக்கூடியவை - பல செயல்முறைகள் அவற்றை எடுக்கலாம். இந்த பூட்டுகள் மற்ற செயல்முறைகள் தரவை மாற்றுவதைத் தடுக்கின்றன, அதாவது. நிலையான தரவுத்தள நிலையின் சாளரங்களை உருவாக்க அவை பயன்படுத்தப்படுகின்றன.

தரவு மாற்றங்களுக்கு பிரத்தியேக பூட்டுகள் பயன்படுத்தப்படுகின்றன - ஒரே ஒரு செயல்முறை மட்டுமே அத்தகைய பூட்டை எடுக்க முடியும். ஒரு பிரத்யேக பூட்டை இவர்களால் எடுக்கலாம்:

  1. தரவு இலவசம் என்றால் எந்த செயல்முறையும்
  2. இந்தத் தரவில் பகிரப்பட்ட பூட்டைக் கொண்ட செயல்முறை மட்டுமே பிரத்தியேக பூட்டைக் கோரியது.

இன்டர் சிஸ்டம்ஸ் ஐஆர்ஐஎஸ் உலகளாவிய பரிவர்த்தனைகள்

பார்வைத்திறன் சாளரம் குறுகலாக, நீண்ட நேரம் மற்ற செயல்முறைகள் காத்திருக்க வேண்டும், ஆனால் அதனுள் தரவுத்தளத்தின் நிலை மிகவும் சீரானதாக இருக்கும்.

READ_COMMITTED — இந்த நிலையின் சாராம்சம் என்னவென்றால், மற்ற த்ரெட்களில் இருந்து உறுதியான தரவை மட்டுமே பார்க்கிறோம். மற்றொரு பரிவர்த்தனையின் தரவு இன்னும் உறுதி செய்யப்படவில்லை என்றால், அதன் பழைய பதிப்பைப் பார்ப்போம்.

பூட்டு வெளியிடப்படும் வரை காத்திருப்பதற்குப் பதிலாக வேலையை இணையாகச் செய்ய இது அனுமதிக்கிறது.

சிறப்பு தந்திரங்கள் இல்லாமல், IRIS இல் உள்ள தரவின் பழைய பதிப்பை எங்களால் பார்க்க முடியாது, எனவே நாம் பூட்டுகளுடன் செய்ய வேண்டும்.

அதன்படி, சீரான தருணங்களில் மட்டுமே தரவைப் படிக்க அனுமதிக்க, பகிரப்பட்ட பூட்டுகளைப் பயன்படுத்த வேண்டும்.

எங்களிடம் ஒரு பயனர் அடிப்படை ^ஒருவருக்கொருவர் பணத்தை பரிமாற்றம் செய்யும் நபர் இருப்பதாக வைத்துக் கொள்வோம்.

நபர் 123 இலிருந்து 242 நபருக்கு மாற்றும் தருணம்:

LOCK +^person(123), +^person(242)
Set ^person(123, amount) = ^person(123, amount) - amount
Set ^person(242, amount) = ^person(242, amount) + amount
LOCK -^person(123), -^person(242)

டெபிட் செய்வதற்கு முன் 123 நபரிடம் இருந்து பணத்தைக் கோரும் தருணம் ஒரு பிரத்யேக தொகுதியுடன் இருக்க வேண்டும் (இயல்பாக):

LOCK +^person(123)
Write ^person(123)

உங்கள் தனிப்பட்ட கணக்கில் கணக்கு நிலையைக் காட்ட வேண்டும் என்றால், நீங்கள் பகிரப்பட்ட பூட்டைப் பயன்படுத்தலாம் அல்லது அதைப் பயன்படுத்தவே கூடாது:

LOCK +^person(123)#”S”
Write ^person(123)

இருப்பினும், தரவுத்தள செயல்பாடுகள் கிட்டத்தட்ட உடனடியாகச் செய்யப்படுகின்றன என்று நாங்கள் கருதினால் (குளோபல்ஸ் என்பது தொடர்புடைய அட்டவணையை விட மிகக் குறைந்த-நிலை அமைப்பு என்பதை உங்களுக்கு நினைவூட்டுகிறேன்), இந்த நிலைக்கான தேவை குறைகிறது.

மீண்டும் மீண்டும் படிக்கலாம் - இந்த தனிமைப்படுத்தல் நிலை, ஒரே நேரத்தில் பரிவர்த்தனைகள் மூலம் மாற்றியமைக்கக்கூடிய பல தரவைப் படிக்க அனுமதிக்கிறது.

அதன்படி, நாம் மாற்றும் தரவைப் படிக்க பகிரப்பட்ட பூட்டையும், மாற்றும் தரவுகளுக்கு பிரத்தியேக பூட்டுகளையும் வைக்க வேண்டும்.

அதிர்ஷ்டவசமாக, LOCK ஆபரேட்டர், தேவையான அனைத்து பூட்டுகளையும் விரிவாக பட்டியலிட உங்களை அனுமதிக்கிறது, அவற்றில் நிறைய இருக்கலாம், ஒரு அறிக்கையில்.

LOCK +^person(123, amount)#”S”
чтение ^person(123, amount)

பிற செயல்பாடுகள் (இந்த நேரத்தில் இணையான நூல்கள் ^நபரை (123, தொகை) மாற்ற முயல்கின்றன, ஆனால் முடியாது)

LOCK +^person(123, amount)
изменение ^person(123, amount)
LOCK -^person(123, amount)

чтение ^person(123, amount)
LOCK -^person(123, amount)#”S”

காற்புள்ளிகளால் பிரிக்கப்பட்ட பூட்டுகளை பட்டியலிடும்போது, ​​அவை தொடர்ச்சியாக எடுக்கப்படுகின்றன, ஆனால் நீங்கள் இதைச் செய்தால்:

LOCK +(^person(123),^person(242))

பின்னர் அவை அனைத்தும் ஒரே நேரத்தில் அணுவாக எடுக்கப்படுகின்றன.

சீரியலைஸ் — நாம் பூட்டுகளை அமைக்க வேண்டும், இதனால் இறுதியில் பொதுவான தரவைக் கொண்ட அனைத்து பரிவர்த்தனைகளும் வரிசையாக செயல்படுத்தப்படும். இந்த அணுகுமுறைக்கு, பெரும்பாலான பூட்டுகள் பிரத்தியேகமாக இருக்க வேண்டும் மற்றும் செயல்திறனுக்காக உலகின் மிகச்சிறிய பகுதிகளில் எடுக்கப்பட வேண்டும்.

உலகளாவிய ^ நபரிடம் நிதிகளை டெபிட் செய்வது பற்றி நாம் பேசினால், SERIALIZE தனிமைப்படுத்தல் நிலை மட்டுமே அதற்கு ஏற்கத்தக்கது, ஏனெனில் பணத்தை கண்டிப்பாக தொடர்ச்சியாக செலவழிக்க வேண்டும், இல்லையெனில் அதே தொகையை பல முறை செலவழிக்க முடியும்.

4. ஆயுள்

நான் பயன்படுத்தி கொள்கலனை கடுமையாக வெட்டுவதன் மூலம் சோதனைகளை நடத்தினேன்

docker kill my-iris

அடித்தளம் அவற்றை நன்கு பொறுத்துக்கொண்டது. எந்த பிரச்சனையும் கண்டறியப்படவில்லை.

முடிவுக்கு

உலகளாவியவர்களுக்கு, InterSystems IRIS பரிவர்த்தனை ஆதரவைக் கொண்டுள்ளது. அவை உண்மையிலேயே அணு மற்றும் நம்பகமானவை. உலகளாவிய அடிப்படையிலான தரவுத்தளத்தின் நிலைத்தன்மையை உறுதிப்படுத்த, புரோகிராமர் முயற்சிகள் மற்றும் பரிவர்த்தனைகளின் பயன்பாடு தேவைப்படுகிறது, ஏனெனில் அது வெளிநாட்டு விசைகள் போன்ற சிக்கலான உள்ளமைக்கப்பட்ட கட்டுமானங்களைக் கொண்டிருக்கவில்லை.

பூட்டுகளைப் பயன்படுத்தாமல் குளோபல்களின் தனிமைப்படுத்தல் நிலை READ UNCOMMITED ஆகும், மேலும் பூட்டுகளைப் பயன்படுத்தும் போது அது SERILIZE நிலை வரை உறுதி செய்யப்படலாம்.

உலகளாவிய பரிவர்த்தனைகளின் சரியான தன்மை மற்றும் வேகம் புரோகிராமரின் திறமையைப் பொறுத்தது: படிக்கும் போது பரவலாகப் பகிரப்பட்ட பூட்டுகள் பயன்படுத்தப்படுகின்றன, தனிமைப்படுத்தலின் அளவு அதிகமாகும், மேலும் குறுகிய பிரத்தியேக பூட்டுகள் எடுக்கப்பட்டால், செயல்திறன் வேகமாக இருக்கும்.

ஆதாரம்: www.habr.com

கருத்தைச் சேர்