Saturday, March 9, 2024

 

மாங்கோ டிபி கற்றுக் கொள்வோம் பகுதி-1



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

மாங்கோ டிபி ஆனது வேகமான மற்றும் பயனுறுதியான டேட்டா பேஸ் சொலூசன் ஆகும்  காரணம் இது டேட்டாவை சேமிக்கும் முறையே ஆகும்.

Sql server, mysql, oracle போன்ற மற்ற டேட்டா பேஸ்கள் போல் இது டேட்டாவை டேபிள் மற்றும் ரோக்களாக சேமிக்கமால் கலக்சன் மற்றும் டாக்குமெண்டுகளாக சேமிக்கின்றது.

இது ரிலேசனல் டேட்டா பேஸ் என்று அழைக்கப்படாமல் No Sql டேட்டா பேஸ் என அழைக்கப்படுகின்றது.

ரிலேசனல் டேட்டா பேஸ்



 

ரிலேசனல் டேட்டா பேஸ் என்பது டேபிள் மற்றும் ரோக்களின் கலெக்சன் ஆகும். ஒரு டேபிள் ஆனது மற்றொரு டேபிளுடன் சம்பந்தப்படுத்தப்படலாம்.

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

டேபிளின் ஒவ்வொரு ரோவும் ஒன்று மற்றும் ஒன்றுக்கு மேற்பட்ட காலம்ன்களைக் கொண்டுள்ளது.

ரிலேசனல் டேட்டா பேசில் உள்ள டேட்டாவானது நார்மலைஸ்டு (normalized) பண்ணப்பட்டது மற்றும் இது ப்ரிடிஃபைண்டு ஸ்கீமாவை கொண்டுள்ளது.

 

நண்மைகள்.

ரிலேசனல் டேட்டா பேசின் முக்கிய நண்மை ஆனது டேட்டா ஒரு பொழுதும் ரிபீட் செய்யப்படுவதில்லை.

தீமைகள்.

ஒரு முறையான டேட்டாவை கேட்டுப்பெறுவதற்கு ஒன்றுக்கு மேற்பட்ட டேபிள்களை ஜாயின் செய்ய வேண்டியிருக்கும்.



மேலே உள்ளது போன்று டேட்டாவை கேட்டுப்பெறுவதற்கு ஒன்றுக்கு மேற்பட்ட டேபிள்களை ரிலேட் செய்து மிகச் சிக்கலான ஜாயின் கொரி எழுத வேண்டியிருக்கும்.

நான் ரிலேசனல் டேட்டா பேஸ் சிஸ்டம்.

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

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

சுருக்கம்

ரிலேசனல் மற்றும் நான் ரிலேசனல் டேட்டா பேஸ் இரண்டிலும் டேட்டா பேஸ் என்பது பொதுவானது.

ரிலேசனல் டேட்டா பேசில் டேபிள் என்பது நான் ரிலேசனல் டேட்டா பேசில் கலக்சன்.

ரிலேசனல் டேட்டா பேசில் ரோ என்பது மாங்கோ டிபியில் டாக்குமெண்ட் ஆகும்.

ரிலேசனல் டேட்டா பேசில் காலம்ன் என்பது மாங்கோ டிபியில் ஃபீல்டு ஆகும்.

ரிலேசனல் டேட்டா பேசில் ப்ரிடிஃபைண்டு ஸ்கீமா உண்டு. மாங்கோ டிபியில் கிடையாது.

ரிலேசனல் டேட்டா பேஸ் என்பது நார்மலைஸ்ட் செய்யப்பட்டது. ஒரு நான் ரிலேசனல் டேட்டா பேசானது நார்மலைஸ்டு ஆக இருக்கலாம் அல்லது அது போன்று இல்லாமலும் இருக்கலாம்.

 

கீழே உள்ளது மாங்கோ டிபி.

{

“id”: 1,

“Name:”Muthu”,

“gender”:”Male”,

“address”:{

“city”:””Madurai”,

“contact”:”9629329142”

},

“course”:[“Full stack”, “Asp.net”]

}

{

“id”:2,

“Name”: “karthikeyan”,

“gender”:”Male”,

“address”:{
“city”:”Trichy”

}

}

{

“id”:3

“Name”:”Rani”,

“gender”: “Female”,

“address”:{

“contact”:“9345187884”

}

“course”:[“python”,”Django”]

}

டாக்குமெண்ட்

டாக்குமெண்ட் என்பது டேட்டாவை ஜெசன்(Json) ஃபார்மட்டில் சேமிக்கின்றது

Json என்பது ஜாவா ஸ்கிரிப்ட் ஆப்ஜெக்ட் நொடேசன் என்பதன் சுருக்கமாகும்.

 

மேலே உள்ள டேட்டாவில் முதல் டாக்குமெண்டில் Id,name,gender,address, course ஆகியவை ஃபீல்டுகள் ஆகும்.

ஒவ்வொரு ஃபீல்டும் கீ வேல்யூ பேர்(pair) ஆக உள்ளது.

மாங்கோ டிபி ஆனது ஸ்கீமாலெஸ் ஆகும். ஒவ்வொரு டாக்கெமெண்டிலும் வெவ்வேறு எண்ணிக்கையிலான ஃபீல்டுகள் இருக்கலாம்.

மேலே உள்ள டேட்டாவில் gender ஃபீல்டு உள்ளது இரண்டாவது டாக்குமெண்டில் அது இல்லை.

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

ஒவ்வொரு டாக்குமெண்டும் கர்லி பிரேசஸிற்குள்(“{ }”) கொடுக்கப்பட்டுள்ளது.

ஒவ்வொரு ஃபீல்டும் கீ மற்றும் வேல்யூ ஃபார்மட் ஆக உள்ளது.

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

ஒரு டாக்குமெண்டிற்கும் மற்றொரு டாக்குமெண்டை நெஸ்ட் செய்யலாம்.

இதனால் டாக்குமெண்டிற்குள் டேட்டா ரிலேசன் ஏற்படுத்தலாம். என்வே டேட்டாவை கேட்டுப் பெறுதல் என்பது வேகமாகவும் பயனுறுதி ஆகவும் உள்ளது.

ஒரே கீயிற்கு ஒன்றுக்கு மேற்பட்ட வேல்யூக்களை லிஸ்ட் ஃபார்மட்டில் கொடுக்கலாம்.

மாங்கோ டிபி ஆனது json ஃபார்மட்டில் உள்ள டேட்டாவை Bson வடிவத்திற்கு மாற்றிக் கொள்கின்றது. இதனால் இது வேகமாக உள்ளது.

-----தொடரும்

முத்து கார்த்திகேயன், மதுரை

ads Udanz

No comments:

Post a Comment