தேர்ச்சி 9.2: உறவு முறை தரவுத்தள மாதிரியின் பிரதான கூறுகளை விபரித்தல் (Main components of the Relational database model)

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

உறவு முறை தரவுத்தள மாதிரியின் பிரதான கூறுகள்
1.            உறவு முறை தரவுத்தள பொருட்கள்(relational DB object)
இது தரவுக் கட்டமைப்பை வரையறை செய்வதற்கு அனுமதிக்கும்.
2. உறவு முறை இயக்குபவர்கள்(relational operators)
இது சேமிக்கப்பட்ட தரவுகளினை திறமையாக கையாளுவதற்கு அனுமதிக்கும்
3. உறவு முறை ஒருமைப்பாட்டு தடைகள்(relational integrity constrainers)
   இது வணிக வசதிகளை வரையறை செய்வதற்கும் or தரவு ஒருமைப்பாட்டினை உறுதி செய்வதற்கும் அனுமதிக்கின்றது
அட்டவணை or உறவு (Relation / Table)
•             பெயரிடப்பட்ட இருபரிமாணம் கொண்ட தரவு அட்டவணை.
•             Table ஆனது relation (உறவு) எனவும் அழைக்கப்படும்.
Relation/table
இந்த அட்டவணையானது(Table) நிரைகளையும் நிலையான எண்ணிக்கையுடைய பெயரிடப்பட்ட நிரல்களையும் கொண்டிருக்கும
நிரல் (Column)
இந்த பண்புகள் ஒரு குறித்த பொருளை விபரிக்க பயன்படும். ஒவ்வொரு நிரலும் தனித்துவமான பெயரையும் ஒரு தரவு வகுதியையும் (data type) கொண்டிருக்கும்.
•             நிரலினுடைய தலைப்பு பண்பு (Attribute) எனவும் அழைக்கப்படும்.
Column/Attribute
நிரை (Row)
•             நிரைகளின் பதிவுகள் (records) அது குறித்த பொருளின் நிகழ்வினை குறிக்கும்.
•             இது tuple எனவும் அழைக்கப்படும்.
Row/Tuple
தளம் (Domain):-
தரவு வகுதியானது என்ன வகையான தரவுப் பெறுமதி ஒவ்வொரு நிரலிலும் தோன்ற வேண்டும் என்பதை விபரிக்கின்றது.அவ்வாறான பெறுமதியானது தளம் (Domainஎனவும் அழைக்கப்படும்
RDBMS இன் நன்மைகள் (Advantages of RDBMS)

மிகையினை கட்டுப்படுத்தல (Controlling redundancy)
பாரம்பரிய கோப்பு  முறைமையில் ஒரே data  வானது பல தடவைகள் பதியப்படும் இவ்வாறு பதியப்படுவதனால் பல்வேறுபட்ட பிரச்சினைகளுக்கு முகம் கொடுக்க வேண்டி ஏற்படும். உதாரணமாக ஒரு குறித்த விடயத்தை பதிவேற்றும் போது பல தடவைகள் பதிவேற்ற வேண்டியதோடு சேமிப்பகம் தேவைக்கதிகமாக பயன்படுத்தப்படும். ஆனால் RDB அனுகு முறையில் ஒரு data வானது குறித்த ஒரு இடத்திலேயே பதியப்பட்டு மற்ற table களினால் பகிரப்படும். இதனால் பிழை வருவதற்கான வாய்ப்பு குறைந்து சேமிப்பகம் வீணாவதற்கான வாய்ப்பு அற்றுப் போகும்.
அனுமதியில்லாத நுழைவை கட்டுப்படுத்தல் (Restricting unauthorized Access)
அதிகம் பாவனையாளர்களை கொண்டுள்ள பெரிய DB களானது பாவனையாளர்கள் என்ன தகவல்களை பெற்றுக் கொள்ள முடியும் என்பதனை வரையரை செய்வதற்கான வசதியினை கொண்டுள்ளது. இந்த வசதியதனது DB யினை அனுமதியற்ற பாவனை, தவறான பாவனை மற்றும் தவறாக கையாளுதல் போன்ற விடயங்களிலிருந்து பாதுகாக்கின்றது. அந்த செயற்பாடுகளானது DB நிர்வாகியினால் மேற்கொள்ளப்படும்.
தன்னைப்பற்றிய விபரங்களை வழங்குகின்ற தன்மை (Self describing  nature of DB)
மிகப்பிரதானமான சிறப்பியழ்பபாக இது கொள்ளப்படுகின்றது ஏனெனில் DBMS முறைமையானதுDB மாத்திரம் கொண்டல்லாது அந்த DB ஆனது எவ்வாறு வடிவமைக்கப்பட்டுள்ளது. அதற்கான கட்டுப்பாடுகள் என்ன என்பது போன்ற விடயங்களையும் தன்னகத்தே கொண்டிறுக்கும்.                 இது தொடர்பான விபரமானது DBMS catalog (பட்டியலில்) பதியப்பட்டிருக்கும் இப்பட்டியலில் பின்வரும் விபரங்கள் உள்ளடக்கப்பட்டிருக்கும். ஓவ்வொரு கடைந இனதும் கட்டமைப்பு ஒவ்வொரு னயவய வைநஅ  மும் சேமிக்கப்பட்டிருக்கும் வடிவம் (format) மற்றும் அந்த தரவின் மீதான கட்டுப்பாடுகள், தடைகள் போன்றவையாகும். இவ்வாறு catalog ல் உள்ள data கள் Meta data என அழைக்கப்படும்.
                ஆனால் பாரம்பரிய கோப்பு செயன்முறையில் (file processing) முறையினால் தரவுத்தள வடிவமைப்பு சம்பந்தமான விபரங்களானது குறித்த பிரயோக விண்ணப்பத்தின் (application) ஒரு பகுதியாக வடிவமைக்கப்பட்டிருக்கும். மேலும் ஒரு RDBMS ல் ஒன்ருக்கு மேற்பட்ட தரவுத்தளங்கள் பேணப்படும். ஆனால் ஒரு பாரம்பரிய file  processing முறைமையில் ஒரு குறித்த DB யினை மாத்திரம் பாவிக்க கூடியதாக இருக்கும்.
Insulation between programs and data, and data abstraction
பாரம்பரிய கோப்பு செயன்முறைப்படுத்தும் முறையின (flat file processing) கீழ்  ஒரு கோப்பின் கட்டமைப்பில் மாற்றம் ஏற்படுத்துவதாக இருந்தால் அந்த கோப்பினை பயன்படுத்தக்கூடிய சகல  களையும் மாற்ற வேண்டும். ஆனால் RDBMS ல் கோப்பில் இடம்பெறும் மாற்றத்திற்காக Program மாற்றத்தினை ஏற்படுத்த தேவையில்லை. அந்த மாற்றங்கள் அதுவாக program களில் பிரதிபலிக்கும். ஏனெனில் தரவு கட்டமைப்பு (Data structure ) கோப்பானது அதனை பயன்படுத்தும் program  இலிருந்து வேறுபடுத்தப்பட்டிறுக்கும். இதனால் structure  ல் ஏற்படும் மாற்றத்திற்காக அதனை பயன்படுத்தும் Program  ல் மாற்றம் ஏற்படுத்த வேண்டியதில்லை. இந்த தன்மையினை இது கொண்டிருப்பதனால் இதனை program data independence என கூறுவர்.
தரவின் பல்வேறு தோற்றங்களுக்கு வசதியளித்தல் (Support of multiple views of the data)
ஒரு DB ற்கு வித்தியாசமான தேவைகளையுடைய பல பாவனையாளர்கள் இருப்பர் ஒவ்வொரு பாவனையாளரும் வித்தியாசமான தரவுகளை DB யிலிருந்து பயன்படுத்துவர். இவ்வாறனவர்களின்  ¬ தேவைக்கேற்ப பல்வேறுபட்ட தரவுத்தோற்றங்களை காட்டக்கூடிய வசதியுடையதாக காணப்படுகின்றது.
தரவினை பங்கிடல் மற்றும் பல் பயனாளர் பரிமாற்று செயன்முறைக்கு உதவுதல் (Sharing of data and multi-user transaction processing)
RDBMS  ஆனது ஒன்றுக்கு மேற்பட்ட பாவனையாளர்கள் ஒரே தடவையில் DB யில் தரவுகளை பெற்றுக் கொள்வதற்கு அனுமதிக்கின்ற அதேவேளை பல பாவனையாளர்கள DB யுடன் தொடர்புடைய Program பயன்படுத்துவர்.
தரவுத்தளத்தில் பங்குபற்றுவோர் (Actors on the scene)
DB  நிர்வாகி (Data Base Administrator)
DB மற்றும் DBMS அவை சார்ந்த மென்பொருட்களை நிர்வகித்தலே இவருடைய பொறுப்புக்களாகும்.
இவரின் செயற்பாடுகளாக பின்வருவனலற்றை கூறலாம்.

  • DB  யை யார் யார் பயன்படுத்தலாம் என அனுமதி வழங்கல்.( authorizing access to the db)
  • DB யின் பயன்பாட்டினை ஒழுங்கமைத்தல் மற்றும் கண்காணித்தல்.
  • தேவையான வன்பொருள் மென்பொருள் வளங்களை பெற்றுக் கொள்ளல்.
  • மேலும் ஏதாவது பாதுகாப்பு குழறுபடி or முறைமையின் வினைத்திறனற்ற செயற்பாடுகளுக்கு இவரே பொறுப்புக்கூடியவராக இருப்பர்.
தரவுத்தள வடிவமைப்பாளர்  (Database designer)      
இவர் என்ன வகையான  தரவு DB யில் பயன்படுத்துவது மற்றும் அந்த தரவுகளை சேமிப்பதற்கான கட்டமைப்பு என்பனவற்றை தீர்மானிப்பதும் வடிவமைப்பதும் இவரது பிரதான செயற்பாடுகளாகும்.
இறுதி பாவனையாளர்கள (End user)
இவர்கள் DB  யிலிருந்து தரவுகளை வினவிப் (query) பெறல் பதிவேற்றம் செய்தல் அறிக்கைகளை வெளியிடல் போன்ற தேவைகளுக்காக பயன்படுத்துவர்.
முறைமை ஆய்வாளர (System analysis)
கம்பனியின் தேவைக்கேற்ப பல்வேறுபட்ட software களை உருவாக்குவதற்காக பயனாளர்களின் தேவைப்பாடுகளை கண்டறிந்து தொழில்நுட்ப தேவைப்பர்டுகளை technical specification வரைதல்
விண்ணப்பம் நிரற்படுத்துவோர் (Application programmers)
system analysis மூலம் பெற்றுக் கொண்ட தேவைப்பாடுகளை விண்ணப்பமாக வடிவமைப்பதே இவரின் தொழிற்பாடாகும்.

தேர்ச்சி 9.1: தரவுத்தள முறைமையின் வகைகள் (Type of Database and Database Management system)

தரவுத்தள முறைமைகள்  Database (DB)
  •  தரவுத்தளம் என்பது ஒன்றுடன் ஓன்று தொடரபுடைய ஒழுங்குபடுத்தப்பட்ட தரவுகளின் கோர்வையாகும்.
  •     தரவுத்தளமானது நடமுறை உலகின் விடயங்களை பிரதிபலிக்ககூடியதாக இருப்பதனால் சிறிய உலகம் எனவும்    அழைக்கப்படுகின்றது.
  •  DB ஆனது இயல்பான அர்த்தத்தைக கொடுக்கக் கூடிய ஒன்றுடனொன்று முரண்பாடு இல்லாத தரவுகளின்   சேர்க்கையாகும்.
  • DB ஆனது ஒரு குறித்த நோக்கத்திற்காகவென்று வடிவமைக்கப்பட்டு தயாரிக்கப்பட்டுள்ள தரவுகளைக் கொண்டு  நிரப்பபப்பட்டிருக்கும். இதனைப் பயன்படுத்த  பயனாளர்கள் விண்ணப்பங்களை(Applictions) தயார் நிலையில் வைத்திருப்பர்.
  • ஒரு DB ஆனது வித்தியாசமான அளவு (Size) மற்றும் சிக்கலான கட்டமைப்புக்களில் அமைந்து காணப்படலாம்.

தரவுத்தள வகைகள்.
1. பாரம்பரிய தரவுத்தளம் (Traditional Database)
           இது வழமையான வங்கி நடவடிக்கைகளான பற்று மற்றும் வைப்புக்கள், ஹோட்டல் மற்றும் விமான பதிவுகள், கணனி மயப்படுத்தப்பட்ட நூலக முறைமைப்பதிவுகள், மற்றும் வணிக கொடுக்கல் வாங்கல்  போன்றவற்றை பதிந்து வைப்பதற்கான தரவுத்தளங்கள்
2. பல்லூடக தரவுத்தளம் (Multimedia Database)
                இதில் படங்கள்,  ஒலி,  ஒளி தகவல்களை சேமிக்கப்படும்.
3. புவியியல் தகவல் முறைமை சார் தரவுத்தளம் (Geographical IS Database)
      இதில் உலக வரைபடம், காலநிலை தொடர்பான தரவுகள் மற்றும் செய்மதிப்படங்களை சேகரித்து வைக்கவும் அவற்றை ஆய்வு செய்யவும் இத்தளங்கள் பயன்படுத்தப்டுகினறன.
4. Data warehouses and online analytical processing (OLAP)
           இவ்தரவுத்தளங்கள் பெரிய தரவுத்தளங்களாகும் பெரும்பாலும் தீர்மானம் எடுத்தலுக்காக அத்தரவுத்தளங்களை ஆய்வு செய்து தகவல்களைப் பெற்றுக் கொள்ளக் கூடிய வசதிகளை வழங்கக் கூடிய தரவுத்தளங்களாகும்.
 5. நிகழ் நேர மற்றும் இயங்கு நிலை தரவுத்தளம் (Real time and active db)
                                இத்தரவுத்தளங்கள் கைத்தொழில் மற்றும் உற்பத்தி செயற்பாடுகளை கட்டுப்படுத்த தேவையான தரவுகளை வைத்திருக்கும்.

தரவுத்தள முகாமை முறைமை -  Database Management System (DBMS)
இது DB க்களை உருவாக்குவதற்கும் அவற்றை பராமரிப்பதற்கும் உள்ள நிரலிகளின்(Programs)சேர்வையாகும்.
   அதாவது DBMS என்பது பொதுவான பயன்பாட்டிற்காகவென்று மென்பொருள் இது DBயினை வரையறுத்தல் (Define),  நிர்மானித்தல்(Construct), கணிப்பீடுகளை (Manipulationமேற்கொள்ளல் மற்றும் பல்வேறுபட்ட பாவனையாளர்கள்  விண்ணப்பங்களிடையே (Applications) DB இனை பங்கிடுதல் போன்ற செயற்பாடுகளை மேற்கொள்வதற்காக உதவியாக இருக்கும்.
வரையறுத்தல்(Define
  இது என்ன வகையான தரவு வகைகள்(Data Type),  கட்டமைப்பு, தரவுத்தளத்தில் தரவினை சேமிப்பதில் உள்ள தடைகள் போன்றவற்றை வரையறை செய்யும்.
நிர்மாணித்தல்(Construct)
    DB ஆனது சேமிப்பகத்தில் சேமித்து வைப்பதற்காக என்ன வகையான செயற்பாடுகள் மேற்கொள்ளப்படும் என்பதனை குறிக்கும்.
கணிப்பீடுகள்(Manipulation)
      இது DB இல் இருந்து ஒரு குறிப்பிட்ட தரவுகளை பெற்றுக் கொள்ளல், வெளியுலக மாற்றங்களை பிரதிபலிக்கத்தகதாக DB பதிவேற்றம் செய்தல்(Update) மற்றும் DBஇல் இருந்து தேவையான அறிக்கைகளை பெற்றுக் கொள்ளல் போன்ற விடயங்களை இது குறிக்கும்.
தரவுத்தள முகாமை முறைமையின் வகைகள்
1. மட்டக் கோவை மாதிரி (Flat file System)
இங்கு தரவுத்தளமானது தனித்தனி அட்டவணையில் காணப்படும். இவ்வாறு இங்கு ஒவ்வொரு அட்டவணையும் ஒவ்வொரு தரவுத்தளமாக கையாளப்படும்.
நன்மை
flat file system 

  • மலிவாக கிடைக்கும்
  • மிகவும் பாதுகாப்பானது.

தீமை
  • குறைவான வேகத்துடன் செயற்படும்.
  • கூடுதலான நினைவக களஞ்சிய தேவை.
  • மட்டக் கோவை மாதிரியின் குறைபாடுகள்

v  பிரிவினை மற்றும் தனிமைப்படுத்தப்பட்ட தரவுகள்
ஒவ்வொரு கோவையும் தமக்கென சொந்தமான தரவுகளை வைத்திருப்பதனால் ஒரு பாவனையாளருக்கு இன்னுமொரு கோப்பில் உள்ள பயன் மிக்க தகவல்கள் தெரியாமல் போகலாம்.
v  பிரதிபண்ணப்பட்ட தரவுகள் (Duplication Of Data)
அத்தியவசியமான கோப்புக்களில் ஒரே விதமான தரவுகள் வைக்கப்பட்டிருப்பதனால் நினைவக களஞ்சியம் வீண் விரயமாகும்.
v  தரவுகள் தயவில் வைத்திருத்தல் (Data Dependency )
கோப்புக் கட்டமைப்பானது program code னுள் வரையருக்கப்பட்டிருக்கும்
v  பொருத்தமற்ற கோப்பு மாதிரி (Incompatible file formats)
ஓவ்வொரு கோப்பும் வித்தியாசமான மொழிகளை பயன்படுத்தி எழுதப்பட்டிருந்தால் ஒவ்வொரு கோப்பையும் இலகுவாக அடைந்து கொள்ள முடியும்.
v  நிலையான வேண்டுகோள் (fixed queries)
Program  களானது குறிப்பிட்ட சில தேவைகளுக்காகவே எழுதப்பட்டிருக்கும்.புதிய தேவைகளுக்காக மீண்டும் Program எழுத வேண்டி ஏற்படும்.
2. உறவு முறை மாதிரி (Relational Model)
இது ஒன்றுடன் ஒன்று தொடர்புபட்ட அட்டவணைகளின் தொகுப்பாக காணப்படுகின்றது. அட்டவணை (Table) - இது தொடரான நிரல் நிரைகளின் ஒரு வெட்டுகமாக கொள்ளப்படுகின்றது. இந்த அட்டவணைகள் ஒரு பொதுவான ஒரு நிலைத்திருக்கும் பொருளினால் (entity) இணைக்கப்பட்டிருக்கும்.
Relational MOdel
அட்டவணைகளின் அடிப்படை தரவு கட்டமைப்பு பின்வரும் பண்புகளை கொண்டிருக்கும்.
  •  நிரைகளின்(row) ஒழுங்கானது முக்கியமான ஒன்டறல்ல.
  • ஒரு அட்டவணையில் ஒரே பெறுமதியான நிரைகள்(column) அனுமதிக்கப்படமாட்டாது.
  • ஓவ்வொரு நிரையும்  ஒவ்வொரு நிரல் சாவிக்களான (Column Key) ஒற்றைப் பெறுமதியை(Atomic Value) கொண்டிருக்கும்.


3.            படி நிலை மாதிரி – Hierarchical Model
இதில் தரவுகளானது மர வடிவில் வடிவமைக்கப்பட்டிருக்கும். அதாவது இதில் பெற்றோர் பிள்ளை அமைப்பில் தரவுகள் வடிவமைக்கப்பட்டிருக்கும். இதனால் ஒரு குறித்த தரவினை மீண்டும் மீண்டும் பயன்படுத்தக்கூடிய வசதி உள்ளது.
ஒரு பெற்றோர் எத்தனை பிள்ளைகளையும் கொண்டிருக்க முடியும்.
ஓவ்வொரு பிள்ளையும் குறித்த ஒரு பெற்றோருக்கே சொந்தமாக இருக்க முடியும்.
Hierarchical model
நன்மை
  • வினைத்திறன்
  • தரவுத்தள பாதுகாப்பு மற்றும்
  • தரவு சுதந்திரம்
  • எண்ணக்கரு எளிமை conceptual simplicity

   தீமை
  • சிக்கலான முறைமை
  • முகாமை செய்வது கடினம் மற்றும் தர மட்டத்தில் குறைபாடு
  • வடிவமைப்பு சுதந்ததிரத்தில் காணப்படும் குறைபாடு
  • விண்ணப்ப உருவாக்கம் ஆனது சிக்கலான முறைமையை கொண்டிருத்தல்
  • அமுலாக்கத்தில் காணப்படும் தடைகள் கட்டுப்பாடுகள்

4.            பொருள் உறவு முறை மாதிரி  (Object Oriented Model)
இது object orientation உடனான சிக்கலான தரவு வகையாறாக்களுடன் கூடிய தரவுத்தளங்களை வழங்குகின்றது. இதன் போது தரவுத்தள முகாமைத்துவத்திற்கு python, java, VB போன்ற OOP மொழி பயன்படுத்தபடபடும். மேலும் இவை ஏனைய மாதிரிகளால் வெற்றி கொள்ள முடியாத கணனி சார் வரைதல்(CAD), புவியியல் தகவல் முறைமை(GIS), பல்லூடக தரவுத்தள மாதிரி (multimedia DB model) போன்றவற்றை வெற்றி கொள்ள இம் மாதிரி பயன்படுத்தப்படும்.
object oriented model'
5.            வலைப்பின்னல் மாதிரி (Network Data base model))
இதில் ஒவ்வொரு பதிவும் ஒன்றுக்கு மேற்பட்ட பெற்றோரை கொண்டிருக்க முடியும். இவை Sets களாக உருவாக்கப்பட்டிருக்கும். ஒவ்வொரு Set உம் உரிமையாளர் பதிவும் மற்றும் அங்கத்துவ பதிவைக் கொண்டிருக்கும். ஒரு அங்கத்துவப்பதிவானது பல உரிமையாளர்களை கொண்டிருக்கும்.
நன்மை
  • conceptual simplicity
  • அதிகமான உறவு முறை (Relation ship) வகைகளை கையாளும்.
  • தரவினை அடைந்து கொள்வது இலகுவானது.
  •  தரவு சுதந்திரமானது.

தீமை.
  • சிக்கலான முறைமை
  • கட்டமைப்பு சுதந்திரம் குறைவு.