தரவுத்தளங்களின் உண்மையான வாள்கள்-பொருளாளர்கள் - குளோபல்கள் - நீண்ட காலமாக அறியப்பட்டிருக்கிறார்கள், ஆனால் இன்றுவரை சிலருக்கு அவற்றை எவ்வாறு திறம்பட பயன்படுத்துவது என்பது தெரியும் அல்லது இந்த சூப்பர்வீபனை வைத்திருக்கவே இல்லை.
நீங்கள் குளோபல்களைப் பயன்படுத்தினால், அவை உண்மையிலேயே சிறந்து விளங்கும் பணிகளுக்கு, நீங்கள் சிறந்த முடிவுகளை அடையலாம். செயல்திறனில் அல்லது சிக்கலை எளிதாக்குவதில் (, ).
குளோபல்ஸ் என்பது தரவைச் சேமித்து செயலாக்குவதற்கான ஒரு சிறப்பு வழியாகும், இது SQL இல் உள்ள அட்டவணைகளிலிருந்து முற்றிலும் வேறுபட்டது. அவை 1966 இல் மொழியில் தோன்றின. (பரிணாம வளர்ச்சி - , இனிமேல் COS) மருத்துவ தரவுத்தளங்களில் உள்ளது, இன்னும் உள்ளது , மேலும் நம்பகத்தன்மை மற்றும் உயர் செயல்திறன் தேவைப்படும் வேறு சில பகுதிகளிலும் ஊடுருவியுள்ளன: நிதி, வர்த்தகம் போன்றவை.
நவீன DBMS-களில் உள்ள குளோபல்கள் பரிவர்த்தனைகள், பதிவு செய்தல், நகலெடுத்தல் மற்றும் பகிர்வு ஆகியவற்றை ஆதரிக்கின்றன. இதன் பொருள் அவை நவீன, நம்பகமான, விநியோகிக்கப்பட்ட மற்றும் வேகமான அமைப்புகளை உருவாக்கப் பயன்படுத்தப்படலாம்.
குளோபல்கள் உங்களை தொடர்புடைய மாதிரிக்கு மட்டுப்படுத்தாது. குறிப்பிட்ட பணிகளுக்கு உகந்ததாக தரவு கட்டமைப்புகளை வடிவமைக்க அவை உங்களுக்கு சுதந்திரத்தை வழங்குகின்றன. பல பயன்பாடுகளுக்கு, குளோபல்களை விவேகத்துடன் பயன்படுத்துவது உண்மையிலேயே ஒரு ரகசிய ஆயுதமாக இருக்கலாம், இது தொடர்புடைய டெவலப்பர்கள் கனவு காணக்கூடிய செயல்திறனை வழங்குகிறது.
தரவு சேமிப்பு முறையாக குளோபல்களை உயர்-நிலை மற்றும் கீழ்-நிலை என பல நவீன நிரலாக்க மொழிகளில் பயன்படுத்தலாம். எனவே, இந்தக் கட்டுரையில், அவை தோன்றிய மொழியை விட, குளோபல்களில் குறிப்பாக கவனம் செலுத்துவேன்.
2. குளோபல்ஸ் எவ்வாறு செயல்படுகிறது
முதலில் குளோபல்கள் எவ்வாறு செயல்படுகின்றன, அவற்றின் பலங்கள் என்ன என்பதைப் புரிந்துகொள்வோம். குளோபல்களை வெவ்வேறு கோணங்களில் பார்க்கலாம். கட்டுரையின் இந்தப் பகுதியில், அவற்றை மரங்களாகவோ அல்லது படிநிலை தரவுக் கடைகளாகவோ பார்ப்போம்.
எளிமையாகச் சொன்னால், குளோபல் என்பது ஒரு தொடர்ச்சியான வரிசை - இது தானாகவே வட்டில் சேமிக்கப்படும் ஒரு வரிசை.
தரவைச் சேமிப்பதற்கு எளிமையான எதையும் கற்பனை செய்வது கடினம். குறியீட்டில் (COS/M மொழிகளில்), இது ஒரு வழக்கமான துணை வரிசையிலிருந்து குறியீட்டால் மட்டுமே வேறுபடுகிறது ^ பெயருக்கு முன்.
உலகளாவிய அளவில் தரவைச் சேமிக்க SQL கற்க வேண்டிய அவசியமில்லை; அவற்றுடன் பணிபுரிவதற்கான கட்டளைகள் மிகவும் எளிமையானவை. நீங்கள் அவற்றை ஒரு மணி நேரத்தில் கற்றுக்கொள்ளலாம்.
எளிமையான உதாரணத்துடன் ஆரம்பிக்கலாம். இரண்டு கிளைகளைக் கொண்ட ஒரு நிலை மரம். உதாரணங்கள் COS இல் எழுதப்பட்டுள்ளன.

Set ^a("+7926X") = "John Sidorov"
Set ^a("+7916Y") = "Sergey Smith"
நீங்கள் ஒரு உலகளாவிய (Set கட்டளை) கட்டளையில் தகவலைச் செருகும்போது, மூன்று விஷயங்கள் தானாகவே நடக்கும்:
- தரவை வட்டில் சேமிக்கிறது.
- அட்டவணைப்படுத்துதல். அடைப்புக்குறிக்குள் இருப்பது சாவி (ஆங்கில இலக்கியத்தில் - "சப்ஸ்கிரிப்ட்"), மற்றும் சமங்களின் வலதுபுறத்தில் மதிப்பு ("முனை மதிப்பு") உள்ளது.
- வரிசைப்படுத்தப்படுகிறது. தரவு விசையின்படி வரிசைப்படுத்தப்படுகிறது. வரிசையைக் கடக்கும்போது, முதல் உறுப்பு "செர்ஜி ஸ்மித்" ஆகவும், இரண்டாவது உறுப்பு "ஜான் சிடோரோவ்" ஆகவும் இருக்கும். உலகளாவியத்திலிருந்து பயனர்களின் பட்டியலை மீட்டெடுக்கும்போது, தரவுத்தளம் வரிசைப்படுத்துவதில் நேரத்தை வீணாக்காது. மேலும், எந்தவொரு விசையிலிருந்தும் தொடங்கி வரிசைப்படுத்தப்பட்ட பட்டியல் வெளியீட்டை நீங்கள் கோரலாம், இல்லாத ஒன்று கூட (வெளியீடு இல்லாத ஒன்றைத் தொடர்ந்து முதல் உண்மையான விசையுடன் தொடங்கும்).
இந்த செயல்பாடுகள் அனைத்தும் நம்பமுடியாத வேகமானவை. ஒரு வீட்டு கணினியில், ஒரே செயல்பாட்டில் 750,000 செருகல்கள்/வினாடி வரை மதிப்புகளைப் பெற்றேன். மல்டி-கோர் செயலிகளில், மதிப்புகள் அடையலாம் செருகல்கள்/வினாடி.
நிச்சயமாக, செருகும் வேகம் உங்களுக்கு அதிகம் சொல்லாது. உதாரணமாக, நீங்கள் உரை கோப்புகளுக்கு மிக விரைவாக தகவல்களை எழுதலாம்—இது போல. விசா செயலாக்கம் வேலை செய்கிறது. ஆனால் குளோபல்களில், எளிதாகவும் விரைவாகவும் அணுகக்கூடிய கட்டமைக்கப்பட்ட, குறியீட்டு சேமிப்பிடத்தைப் பெறுகிறோம்.

- குளோபல்களின் மிகப்பெரிய பலம் புதிய முனைகளைச் செருகும் வேகம் ஆகும்.
- உலகளாவிய தரவு எப்போதும் குறியிடப்படுகிறது. அதை ஒரு மட்டத்திலும் மரத்தின் ஆழத்திலும் கடந்து செல்வது எப்போதும் வேகமானது.
உலகளவில் இன்னும் சில இரண்டாம் மற்றும் மூன்றாம் நிலை கிளைகளைச் சேர்ப்போம்.
Set ^a("+7926X", "city") = "Moscow"
Set ^a("+7926X", "city", "street") = "Req Square"
Set ^a("+7926X", "age") = 25
Set ^a("+7916Y", "city") = "London"
Set ^a("+7916Y", "city", "street") = "Baker Street"
Set ^a("+7916Y", "age") = 36

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

Set ^b("a", "b", "c", "d") = 1
Set ^b("a", "b", "c", "e") = 2
Set ^b("a", "b", "f", "g") = 3
வெற்று வட்டங்கள் என்பது மதிப்பு ஒதுக்கப்படாத முனைகள் ஆகும்.
குளோபல்களை நன்கு புரிந்துகொள்ள, அவற்றை மற்ற மரங்களுடன் ஒப்பிடுவோம்: தோட்ட மரங்கள் மற்றும் கோப்பு முறைமை பெயர்களைக் கொண்ட மரங்கள்.
குளோபல்களில் உள்ள மரங்களை நமக்கு மிகவும் பரிச்சயமான படிநிலை அமைப்புகளுடன் ஒப்பிடுவோம்: தோட்டங்கள் மற்றும் வயல்களில் வளரும் சாதாரண மரங்கள் மற்றும் கோப்பு முறைமைகளுடன்.

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

- README.txt கோப்புகள் போன்றவை தேவையற்றதாக இருக்கலாம். ஒரு கோப்பகத்தின் உள்ளடக்கங்களைப் பற்றிச் சொல்ல வேண்டிய அனைத்தையும் கோப்பகக் கோப்பிலேயே எழுதலாம். பாதைப் பெயர் இடத்தில், ஒரு கோப்புப் பெயர் ஒரு கோப்பகப் பெயரிலிருந்து வேறுபடுத்திப் பார்க்க முடியாது, எனவே கோப்புகள் மட்டுமே போதுமானதாக இருக்கும்.
- உள்ளமைக்கப்பட்ட துணை அடைவுகள் மற்றும் கோப்புகளைக் கொண்ட கோப்பகங்களை நீக்கும் வேகம் வியத்தகு முறையில் அதிகரிக்கும். பல முறை Habr இல், மில்லியன் கணக்கான சிறிய கோப்புகளை நீக்குவது எவ்வளவு நேரம் எடுக்கும் மற்றும் கடினம் என்பது பற்றிய கட்டுரைகள் வந்துள்ளன (, ). இருப்பினும், நீங்கள் ஒரு குளோபலில் ஒரு போலி-கோப்பு அமைப்பை உருவாக்கினால், அது வினாடிகள் அல்லது ஒரு வினாடியின் பின்னங்களை எடுக்கும். ஒரு வீட்டு கணினியில் சப்ட்ரீகளை நீக்குவதை நான் சோதித்தபோது, 1 வினாடியில் HDD (ஒரு SSD அல்ல) இல் உள்ள இரண்டு அடுக்கு மரத்திலிருந்து 96-341 மில்லியன் முனைகள் நீக்கப்பட்டன. மேலும் குளோபல்களுடன் முழு கோப்பையும் மட்டுமல்லாமல், மரத்தின் ஒரு பகுதியை நீக்குவது பற்றி நாங்கள் பேசுகிறோம்.

துணை மரங்களை வெட்டுவது குளோபல்களின் மற்றொரு பலமாகும். இதற்கு மறுநிகழ்வு தேவையில்லை. இது நம்பமுடியாத அளவிற்கு விரைவாக நடக்கும்.
நமது மரத்தில் இதை கட்டளை மூலம் செய்யலாம் கொலை.
Kill ^a("+7926X")

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