புரோஹோஸ்டர் > Блог > நிர்வாகம் > குளோபல்ஸ் என்பது தரவுகளை சேமிப்பதற்கான புதையல்-வாள்கள். மரங்கள். பகுதி 1
குளோபல்ஸ் என்பது தரவுகளை சேமிப்பதற்கான புதையல்-வாள்கள். மரங்கள். பகுதி 1
உண்மையான தரவுத்தள வாள்கள் - குளோபல்ஸ் - நீண்ட காலமாக அறியப்பட்டவை, ஆனால் இன்னும் சிலருக்கு அவற்றை எவ்வாறு திறம்பட பயன்படுத்துவது அல்லது இந்த சூப்பர்வீப்பன் சொந்தமாக இல்லை.
குளோபல்களைப் பயன்படுத்தினால், அவை மிகவும் திறமையான சிக்கல்களைத் தீர்ப்பதில், நீங்கள் சிறந்த முடிவுகளை அடைய முடியும். உற்பத்தித்திறனில் அல்லது சிக்கலின் தீர்வை எளிதாக்குவதில் (1, 2).
குளோபல்ஸ் என்பது SQL இல் உள்ள அட்டவணைகளிலிருந்து முற்றிலும் வேறுபட்ட தரவைச் சேமிப்பதற்கும் செயலாக்குவதற்கும் ஒரு சிறப்பு வழி. அவர்கள் மொழியில் 1966 இல் தோன்றினர் எம்(யுஎம்பிஎஸ்) (பரிணாம வளர்ச்சி - கேச் ஆப்ஜெக்ட்ஸ்கிரிப்ட், இனி COS) மருத்துவ தரவுத்தளத்தில் உள்ளது மற்றும் இன்னும் உள்ளது தீவிரமாக பயன்படுத்தப்படுகிறது, மேலும் நம்பகத்தன்மை மற்றும் உயர் செயல்திறன் தேவைப்படும் வேறு சில பகுதிகளிலும் ஊடுருவியது: நிதி, வர்த்தகம் போன்றவை.
நவீன டிபிஎம்எஸ்ஸில் உள்ள குளோபல்ஸ் பரிவர்த்தனைகள், பதிவு செய்தல், பிரதியெடுத்தல் மற்றும் பகிர்வு ஆகியவற்றை ஆதரிக்கிறது. அந்த. நவீன, நம்பகமான, விநியோகிக்கப்பட்ட மற்றும் வேகமான அமைப்புகளை உருவாக்க அவை பயன்படுத்தப்படலாம்.
குளோபல்ஸ் உங்களை தொடர்புடைய மாதிரிக்கு மட்டுப்படுத்தவில்லை. குறிப்பிட்ட பணிகளுக்கு உகந்த தரவு கட்டமைப்புகளை உருவாக்க அவை உங்களுக்கு சுதந்திரம் அளிக்கின்றன. பல பயன்பாடுகளுக்கு, குளோபல்களின் புத்திசாலித்தனமான பயன்பாடு உண்மையிலேயே ஒரு ரகசிய ஆயுதமாக இருக்கலாம், இது தொடர்புடைய பயன்பாட்டு உருவாக்குநர்கள் கனவு காணக்கூடிய செயல்திறனை வழங்குகிறது.
தரவைச் சேமிப்பதற்கான ஒரு வழியாக குளோபல்ஸ் பல நவீன நிரலாக்க மொழிகளில், உயர்-நிலை மற்றும் குறைந்த-நிலை ஆகிய இரண்டிலும் பயன்படுத்தப்படலாம். எனவே, இந்த கட்டுரையில் நான் குறிப்பாக உலகளாவியவற்றில் கவனம் செலுத்துவேன், அவர்கள் ஒருமுறை வந்த மொழியில் அல்ல.
2. குளோபல்ஸ் எப்படி வேலை செய்கிறது
உலக நாடுகள் எவ்வாறு செயல்படுகின்றன, அவற்றின் பலம் என்ன என்பதை முதலில் புரிந்து கொள்வோம். உலகத்தை வெவ்வேறு கோணங்களில் பார்க்கலாம். கட்டுரையின் இந்த பகுதியில் அவற்றை மரங்களாகப் பார்ப்போம். அல்லது படிநிலை தரவுக் கிடங்குகள் போன்றவை.
எளிமையாகச் சொல்வதென்றால், உலகளாவிய ஒரு நிலையான வரிசை. வட்டில் தானாகவே சேமிக்கப்படும் ஒரு வரிசை.
தரவைச் சேமிப்பதற்கு எளிமையான ஒன்றை கற்பனை செய்வது கடினம். குறியீட்டில் (சிஓஎஸ்/எம் மொழிகளில்) இது குறியீட்டில் மட்டுமே வழக்கமான அசோசியேட்டிவ் வரிசையிலிருந்து வேறுபடுகிறது ^ பெயருக்கு முன்.
உலகளாவிய தரவைச் சேமிக்க, நீங்கள் SQL வினவல் மொழியைக் கற்றுக்கொள்ள வேண்டியதில்லை; அவர்களுடன் பணிபுரியும் கட்டளைகள் மிகவும் எளிமையானவை. ஒரு மணி நேரத்தில் கற்றுக் கொள்ளலாம்.
எளிமையான உதாரணத்துடன் ஆரம்பிக்கலாம். 2 கிளைகள் கொண்ட ஒற்றை நிலை மரம். எடுத்துக்காட்டுகள் COS இல் எழுதப்பட்டுள்ளன.
Set ^a("+7926X") = "John Sidorov"
Set ^a("+7916Y") = "Sergey Smith"
உலகளாவிய (அமைவு கட்டளை) தகவலைச் செருகும்போது, 3 விஷயங்கள் தானாகவே நடக்கும்:
வட்டில் தரவைச் சேமிக்கிறது.
அட்டவணைப்படுத்துதல். அடைப்புக்குறிக்குள் இருப்பது முக்கியமானது (ஆங்கில இலக்கியத்தில் - “சப்ஸ்கிரிப்ட்”), மற்றும் சமமானவர்களின் வலதுபுறத்தில் மதிப்பு (“முனை மதிப்பு”) உள்ளது.
வரிசைப்படுத்தப்படுகிறது. தரவு விசை மூலம் வரிசைப்படுத்தப்படுகிறது. எதிர்காலத்தில், வரிசையை கடந்து செல்லும் போது, முதல் உறுப்பு "செர்ஜி ஸ்மித்", மற்றும் இரண்டாவது "ஜான் சிடோரோவ்". உலகளாவிய பயனர்களின் பட்டியலைப் பெறும்போது, தரவுத்தளமானது வரிசைப்படுத்துவதில் நேரத்தை வீணாக்காது. மேலும், வரிசைப்படுத்தப்பட்ட பட்டியலின் வெளியீட்டை நீங்கள் கோரலாம், எந்த விசையிலிருந்தும் தொடங்கி, இல்லாத ஒன்று கூட (வெளியீடு முதல் உண்மையான விசையிலிருந்து தொடங்கும், இது இல்லாததற்குப் பிறகு வரும்).
இந்த நடவடிக்கைகள் அனைத்தும் நம்பமுடியாத அளவிற்கு விரைவாக நடக்கும். எனது வீட்டுக் கணினியில் ஒரே செயல்பாட்டில் 750 செருகல்கள்/வினாடி வரையிலான மதிப்புகளைப் பெற்றேன். மல்டி-கோர் செயலிகளில் மதிப்புகள் அடையலாம் பத்து மில்லியன்கள் செருகல்கள்/வினாடி.
நிச்சயமாக, செருகும் வேகம் அதிகம் சொல்லவில்லை. எடுத்துக்காட்டாக, உரை கோப்புகளில் தகவல்களை மிக விரைவாக எழுதலாம் - இது போன்றது வதந்தி விசா செயலாக்க வேலைகள். ஆனால் குளோபல்ஸ் விஷயத்தில், இதன் விளைவாக கட்டமைக்கப்பட்ட குறியீட்டு சேமிப்பகத்தைப் பெறுகிறோம், இது எதிர்காலத்தில் எளிதாகவும் விரைவாகவும் வேலை செய்ய முடியும்.
குளோபல்ஸின் மிகப்பெரிய பலம் புதிய முனைகளைச் செருகக்கூடிய வேகம் ஆகும்.
உலகளாவிய தரவு எப்போதும் குறியிடப்படும். ஒரு மட்டத்திலும் மரத்தின் ஆழத்திலும் அவற்றைக் கடந்து செல்வது எப்போதும் வேகமாக இருக்கும்.
இரண்டாவது மற்றும் மூன்றாம் நிலைகளின் இன்னும் சில கிளைகளை உலகளவில் சேர்ப்போம்.
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
உலகளாவிய அடிப்படையில் பல நிலை மரங்களை உருவாக்க முடியும் என்பது வெளிப்படையானது. மேலும், செருகும் போது தன்னியக்க அட்டவணைப்படுத்தல் காரணமாக எந்த முனைக்கும் அணுகல் கிட்டத்தட்ட உடனடியாக இருக்கும். மரத்தின் எந்த மட்டத்திலும், அனைத்து கிளைகளும் விசையால் வரிசைப்படுத்தப்படுகின்றன.
நீங்கள் பார்க்க முடியும் என, தகவலை ஒரு விசை மற்றும் மதிப்பு இரண்டிலும் சேமிக்க முடியும். மொத்த விசை நீளம் (அனைத்து குறியீடுகளின் நீளங்களின் கூட்டுத்தொகை) அடையலாம் 511 பைட், மற்றும் மதிப்புகள் 3.6 எம்பி தற்காலிக சேமிப்பிற்காக. மரத்தில் உள்ள நிலைகளின் எண்ணிக்கை (பரிமாணங்களின் எண்ணிக்கை) 31 ஆகும்.
மற்றொரு சுவாரஸ்யமான புள்ளி. மேல் நிலைகளின் முனைகளின் மதிப்புகளைக் குறிப்பிடாமல் நீங்கள் ஒரு மரத்தை உருவாக்கலாம்.
Set ^b("a", "b", "c", "d") = 1
Set ^b("a", "b", "c", "e") = 2
Set ^b("a", "b", "f", "g") = 3
வெற்று வட்டங்கள் எந்த மதிப்பும் ஒதுக்கப்படாத முனைகளாகும்.
குளோபல்களை நன்கு புரிந்து கொள்ள, அவற்றை மற்ற மரங்களுடன் ஒப்பிடுவோம்: தோட்ட மரங்கள் மற்றும் கோப்பு முறைமை பெயர் மரங்கள்.
உலகளாவிய மரங்களை நமக்கு மிகவும் பழக்கமான படிநிலை கட்டமைப்புகளுடன் ஒப்பிடுவோம்: தோட்டங்கள் மற்றும் வயல்களில் வளரும் சாதாரண மரங்கள் மற்றும் கோப்பு முறைமைகளுடன்.
தோட்ட மரங்களில் நாம் பார்ப்பது போல், இலைகள் மற்றும் பழங்கள் கிளைகளின் முனைகளில் மட்டுமே காணப்படுகின்றன.
கோப்பு முறைமைகள் - தகவல் கிளைகளின் முனைகளில் மட்டுமே சேமிக்கப்படுகிறது, அவை முழு தகுதி வாய்ந்த கோப்பு பெயர்களாகும்.
இங்கே உலகளாவிய தரவு அமைப்பு உள்ளது.
வேறுபாடுகள்:
உள் முனைகள்: உலகளாவிய தகவல்களை கிளைகளின் முனைகளில் மட்டுமின்றி, ஒவ்வொரு முனையிலும் சேமிக்க முடியும்.
வெளிப்புற முனைகள்: கிளைகளின் முனைகளில் உலகளாவிய வரையறுக்கப்பட்ட மதிப்புகள் இருக்க வேண்டும், அதே நேரத்தில் எஃப்எஸ் மற்றும் தோட்ட மரங்கள் இல்லை.
உள் முனைகளின் அடிப்படையில், உலகளாவிய அமைப்பு என்பது கோப்பு முறைமைகள் மற்றும் தோட்ட மரங்களில் பெயர் மரங்களின் கட்டமைப்பின் சூப்பர்செட் என்று நாம் கூறலாம். அந்த. மேலும் நெகிழ்வான.
பொதுவாக, உலகளாவியது ஒவ்வொரு முனையிலும் தரவைச் சேமிக்கும் திறன் கொண்ட வரிசை மரம்.
குளோபல்களின் வேலையை நன்கு புரிந்து கொள்ள, கோப்பு முறைமைகளை உருவாக்கியவர்கள் தகவல்களைச் சேமிக்க குளோபல்ஸ் போன்ற அணுகுமுறையைப் பயன்படுத்தினால் என்ன நடக்கும் என்று கற்பனை செய்து பாருங்கள்?
ஒரு கோப்பகத்தில் உள்ள ஒரு கோப்பை நீக்குவது தானாகவே கோப்பகத்தை நீக்கிவிடும், அதே போல் இப்போது நீக்கப்பட்ட ஒரே ஒரு கோப்பகத்தைக் கொண்ட அனைத்து மேலோட்டமான கோப்பகங்களும் தானாகவே நீக்கப்படும்.
அடைவுகள் தேவை இருக்காது. துணை கோப்புகள் மற்றும் துணை கோப்புகள் இல்லாத கோப்புகள் வெறுமனே இருக்கும். ஒரு சாதாரண மரத்துடன் ஒப்பிட்டால், ஒவ்வொரு கிளையும் ஒரு பழமாக மாறும்.
README.txt கோப்புகள் போன்ற விஷயங்கள் தேவைப்படாமல் இருக்கலாம். கோப்பகத்தின் உள்ளடக்கங்களைப் பற்றி சொல்ல வேண்டிய அனைத்தையும் அடைவு கோப்பிலேயே எழுத முடியும். பாதை இடத்தில், கோப்பகத்தின் பெயரிலிருந்து கோப்பின் பெயரை வேறுபடுத்திப் பார்க்க முடியாது, எனவே கோப்புகளை மட்டுமே பயன்படுத்திக் கொள்ள முடியும்.
உள்ளமைக்கப்பட்ட துணை அடைவுகள் மற்றும் கோப்புகளுடன் கோப்பகங்களை நீக்கும் வேகம் வியத்தகு அளவில் அதிகரிக்கும். Habré இல் பல முறை மில்லியன் கணக்கான சிறிய கோப்புகளை நீக்குவது எவ்வளவு நேரம் மற்றும் கடினமானது என்பது பற்றிய கட்டுரைகள் வந்துள்ளன (1, 2) இருப்பினும், நீங்கள் ஒரு போலி-கோப்பு அமைப்பை உலகளாவிய அளவில் உருவாக்கினால், அதற்கு வினாடிகள் அல்லது அதன் பின்னங்கள் தேவைப்படும். வீட்டுக் கணினியில் சப்ட்ரீகளை நீக்குவதை நான் சோதித்தபோது, 1 வினாடியில் HDDயில் (SSD அல்ல) இரண்டு அடுக்கு மரத்திலிருந்து 96-341 மில்லியன் நோட்களை அது அகற்றியது. மேலும், மரத்தின் ஒரு பகுதியை நீக்குவது பற்றி நாங்கள் பேசுகிறோம், மேலும் முழு கோப்பையும் குளோபல்ஸுடன் மட்டும் அல்ல.
துணை மரங்களை அகற்றுவது உலகளாவிய மற்றொரு வலுவான புள்ளியாகும். இதற்கு உங்களுக்கு மறுநிகழ்வு தேவையில்லை. இது நம்பமுடியாத விரைவாக நடக்கும்.
எங்கள் மரத்தில் இதை கட்டளையுடன் செய்ய முடியும் கொலை.
Kill ^a("+7926X")
உலகளாவிய ரீதியில் என்னென்ன செயல்கள் நமக்குக் கிடைக்கின்றன என்பதைப் பற்றி நன்றாகப் புரிந்துகொள்ள, நான் ஒரு சிறிய அட்டவணையை வழங்குகிறேன்.
COS இல் குளோபல்களுடன் பணிபுரிவதற்கான அடிப்படை கட்டளைகள் மற்றும் செயல்பாடுகள்
தொகுப்பு
கிளைகளை ஒரு முனைக்கு அமைத்தல் (இன்னும் வரையறுக்கப்படவில்லை என்றால்) மற்றும் முனை மதிப்புகள்
ZKill
ஒரு குறிப்பிட்ட முனையின் மதிப்பை நீக்குகிறது. கணுவிலிருந்து வெளிப்படும் துணை மரம் தொடப்படவில்லை
$வினவல்
மரத்தின் முழுப் பயணம், மரத்தின் ஆழத்திற்குச் செல்லும்
$ஆர்டர்
ஒரு குறிப்பிட்ட முனையின் கிளைகளைக் கடந்து செல்வது
$டேட்டா
ஒரு முனை வரையறுக்கப்பட்டுள்ளதா என்பதைச் சரிபார்க்கிறது
$அதிகரிப்பு
ஒரு முனை மதிப்பை அணு ரீதியாக அதிகரிக்கிறது. ACID க்காக, படிக்கவும் எழுதவும் செய்வதைத் தவிர்க்க. சமீபத்தில் அதை மாற்ற பரிந்துரைக்கப்பட்டது $Sequence
உங்கள் கவனத்திற்கு நன்றி, உங்கள் கேள்விகளுக்கு பதிலளிக்க நாங்கள் தயாராக உள்ளோம்.
பொறுப்புத் துறப்பு: இந்தக் கட்டுரையும் அதற்கான எனது கருத்துகளும் எனது கருத்து மற்றும் இண்டர்சிஸ்டம்ஸ் கார்ப்பரேஷனின் உத்தியோகபூர்வ நிலைக்கு எந்தத் தொடர்பும் இல்லை.