ഡാറ്റാബേസുകളും സബ്ഡിയും. നിയന്ത്രണങ്ങളും നിയമങ്ങളും. ഒരു കമ്പ്യൂട്ടർ പരീക്ഷണത്തിന്റെ ഫലങ്ങളും അവയുടെ വിശകലനവും

പോസ്റ്റ് റിലേഷണൽ ഡിബിഎംഎസ്. ഒബ്ജക്റ്റ് DBMS. റിലേഷണൽ ഡിബിഎംഎസിന്റെ പോരായ്മകൾ. ഒബ്ജക്റ്റ് ഓറിയന്റഡ് ഡിബിഎംഎസിന്റെ അടിസ്ഥാന ആശയങ്ങൾ.

റിലേഷണൽ ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റങ്ങൾ പരിമിതമാണ്. ടിക്കറ്റിംഗ്, ഹോട്ടൽ റിസർവേഷനുകൾ, ബാങ്കിംഗ് സംവിധാനങ്ങൾ എന്നിവ പോലുള്ള പരമ്പരാഗത ആപ്ലിക്കേഷനുകൾക്ക് അവ അനുയോജ്യമാണ്, എന്നാൽ ഡിസൈൻ ഓട്ടോമേഷൻ സിസ്റ്റങ്ങൾ, ഇന്റലിജന്റ് മാനുഫാക്ചറിംഗ് സിസ്റ്റങ്ങൾ, മറ്റ് വിജ്ഞാനാധിഷ്ഠിത സംവിധാനങ്ങൾ എന്നിവയിൽ അവയുടെ പ്രയോഗം പലപ്പോഴും ബുദ്ധിമുട്ടാണ്. ഇത് പ്രാഥമികമായി റിലേഷണൽ ഡാറ്റ മോഡലിന് അടിവരയിടുന്ന ഡാറ്റാ ഘടനകളുടെ പ്രാകൃതത മൂലമാണ്. ഫ്ലാറ്റ് നോർമലൈസ്ഡ് ബന്ധങ്ങൾ സാർവത്രികവും സൈദ്ധാന്തികമായി ഏതെങ്കിലും ഡാറ്റയെ പ്രതിനിധീകരിക്കാൻ പര്യാപ്തവുമാണ് വിഷയ മേഖല. എന്നിരുന്നാലും, പാരമ്പര്യേതര ആപ്ലിക്കേഷനുകളിൽ, ഡൊമെയ്‌നിൽ അന്തർലീനമായ സങ്കീർണ്ണമായ ഡാറ്റാ ഘടനകൾ പുനർനിർമ്മിക്കുന്നതിന് ആവശ്യമായ ചെലവേറിയ ജോയിൻ പ്രവർത്തനങ്ങൾക്ക് നിരന്തരം വിധേയമാകുന്ന നൂറുകണക്കിന്, അല്ലെങ്കിൽ ആയിരക്കണക്കിന് പട്ടികകൾ ഡാറ്റാബേസിൽ ഉണ്ട്.

റിലേഷണൽ സിസ്റ്റങ്ങളുടെ മറ്റൊരു ഗുരുതരമായ പരിമിതി ആപ്ലിക്കേഷൻ സെമാന്റിക്സിനെ പ്രതിനിധീകരിക്കാനുള്ള താരതമ്യേന ദുർബലമായ കഴിവാണ് ( അർത്ഥശാസ്ത്രം- പ്രോഗ്രാമിംഗിൽ - വ്യക്തിഗത ഭാഷാ ഘടനകളെ വ്യാഖ്യാനിക്കുന്നതിനുള്ള നിയമങ്ങളുടെ ഒരു സംവിധാനം. അർത്ഥശാസ്ത്രംവാക്യങ്ങളുടെ സെമാന്റിക് അർത്ഥം നിർണ്ണയിക്കുന്നു അൽഗോരിതം ഭാഷ...). റിലേഷണൽ ഡിബിഎംഎസുകൾ ഏറ്റവും കൂടുതൽ നൽകുന്നത് ഡാറ്റാ ഇന്റഗ്രിറ്റി നിയന്ത്രണങ്ങൾ രൂപപ്പെടുത്താനും പിന്തുണയ്ക്കാനുമുള്ള കഴിവാണ്. റിലേഷണൽ സിസ്റ്റങ്ങളുടെ ഈ പരിമിതികളും പോരായ്മകളും തിരിച്ചറിഞ്ഞ്, ഡാറ്റാബേസ് ഗവേഷകർ റിലേഷണൽ ഡാറ്റ മോഡലിന് അപ്പുറത്തുള്ള ആശയങ്ങളെ അടിസ്ഥാനമാക്കി നിരവധി പ്രോജക്ടുകൾ പിന്തുടരുന്നു.

റിലേഷണൽ ഡിബിഎംഎസുകളുടെ മറ്റ് ദോഷങ്ങളിൽ ഇനിപ്പറയുന്നവ ഉൾപ്പെടുന്നു:

ഡാറ്റാബേസുകൾ വികസിപ്പിക്കുന്നതിനുള്ള ഘടനയുടെ വഴക്കമില്ലായ്മ,

നിർമ്മാണത്തിലെ ബുദ്ധിമുട്ടുകൾ ആശയപരമായ മാതൃകഒട്ടനവധി-അനേകം ബന്ധങ്ങളുള്ള വസ്തുക്കൾക്ക്,

· വിരളമായ ഡാറ്റ അറേകൾക്കുള്ള പ്രകൃതിവിരുദ്ധ പട്ടിക പ്രാതിനിധ്യം.

ഒബ്ജക്റ്റ് ഓറിയന്റഡ്ഡാറ്റാബേസുകൾ താരതമ്യേന പുതിയതാണ്, ഡാറ്റാബേസ് സിദ്ധാന്തത്തിന് റിലേഷണൽ അല്ലെങ്കിൽ ട്രീ മോഡലുകൾ പോലെ നല്ല ഗണിതശാസ്ത്ര അടിത്തറയില്ല. എന്നിരുന്നാലും, ഇത് മോഡലിംഗ് സാങ്കേതികവിദ്യയിൽ അന്തർലീനമായ ബലഹീനതയുടെ അടയാളമായി കാണേണ്ടതില്ല. മിക്ക ഡാറ്റാബേസ് നിർവ്വഹണങ്ങൾക്കും പൊതുവായതായി തോന്നുന്ന പ്രോപ്പർട്ടികൾ ഇവയാണ്:

1. സംഗ്രഹം:ഒരു ഡാറ്റാബേസിൽ സംഭരിച്ചിരിക്കുന്ന എല്ലാ യഥാർത്ഥ "കാര്യങ്ങളും" ഏതെങ്കിലും ക്ലാസിലെ അംഗമാണ്. പ്രോപ്പർട്ടികൾ, രീതികൾ, പൊതു, സ്വകാര്യ ഡാറ്റാ ഘടനകൾ, ആ ക്ലാസിലെ ഒബ്‌ജക്റ്റുകൾക്ക് (ഉദാഹരണങ്ങൾ) ബാധകമായ പ്രോഗ്രാമുകൾ എന്നിവയുടെ ശേഖരമാണ് ക്ലാസ് എന്ന് നിർവചിച്ചിരിക്കുന്നത്. ക്ലാസുകൾ അമൂർത്ത ഡാറ്റ തരങ്ങളല്ലാതെ മറ്റൊന്നുമല്ല. ഒരു ഒബ്‌ജക്‌റ്റിൽ ചില പ്രവർത്തനങ്ങൾ നടത്തുന്നതിനായി വിളിക്കപ്പെടുന്ന നടപടിക്രമങ്ങളാണ് രീതികൾ (ഉദാഹരണത്തിന്, സ്വയം പ്രിന്റ് ചെയ്യുക അല്ലെങ്കിൽ സ്വയം പകർത്തുക). പ്രോപ്പർട്ടികൾ എന്നത് ഓരോ ക്ലാസ് ഒബ്ജക്റ്റുമായി ബന്ധപ്പെട്ട ഡാറ്റ മൂല്യങ്ങളാണ്, അത് ഒരു തരത്തിൽ അല്ലെങ്കിൽ മറ്റൊരു തരത്തിൽ (ഉദാഹരണത്തിന്, നിറം, പ്രായം).

2.എൻക്യാപ്സുലേഷൻ:പൊതു, സ്വകാര്യ രീതികളുടെ (പ്രോഗ്രാമുകൾ) ഡാറ്റയുടെ ആന്തരിക പ്രാതിനിധ്യവും നടപ്പിലാക്കൽ വിശദാംശങ്ങളും ക്ലാസ് നിർവചനത്തിന്റെ ഭാഗമാണ്, അത് ആ ക്ലാസിൽ മാത്രമേ അറിയൂ. ഒരു ക്ലാസിന്റെ ഒബ്‌ജക്‌റ്റുകളിലേക്കുള്ള ആക്‌സസ്സ് ആ ക്ലാസിന്റെ അല്ലെങ്കിൽ അതിന്റെ മാതാപിതാക്കളുടെ പ്രോപ്പർട്ടികൾ വഴിയും രീതികൾ വഴിയും മാത്രമേ അനുവദിക്കൂ (താഴെ "പൈതൃകം" കാണുക), അല്ലാതെ ആന്തരിക നിർവ്വഹണ വിശദാംശങ്ങളെക്കുറിച്ചുള്ള അറിവ് ഉപയോഗിച്ചല്ല.

3. അനന്തരാവകാശം (ഒറ്റ അല്ലെങ്കിൽ ഒന്നിലധികം):ഒരു ക്ലാസ് ശ്രേണിയുടെ ഭാഗമായാണ് ക്ലാസുകൾ നിർവചിച്ചിരിക്കുന്നത്. ഓരോ ലോവർ-ലെവൽ ക്ലാസ് നിർവചനവും അതിന്റെ മാതാപിതാക്കളുടെ ഗുണങ്ങളും രീതികളും അവകാശമാക്കുന്നു, അവ അനന്തരാവകാശമല്ലെന്ന് വ്യക്തമായി പ്രഖ്യാപിക്കുകയോ ഒരു പുതിയ നിർവചനം വഴി പരിഷ്‌ക്കരിക്കുകയോ ചെയ്തിട്ടില്ലെങ്കിൽ. ഒരൊറ്റ പാരമ്പര്യത്തിൽ, ഒരു ക്ലാസിന് ഒരു പാരന്റ് ക്ലാസ് മാത്രമേ ഉണ്ടാകൂ (അതായത്, ക്ലാസ് ശ്രേണിക്ക് ഒരു ട്രീ ഘടനയുണ്ട്). ചെയ്തത് ഒന്നിലധികം അനന്തരാവകാശംഒന്നിലധികം രക്ഷിതാക്കളിൽ നിന്ന് ഒരു ക്ലാസ് വരാം (അതായത്, ക്ലാസ് ശ്രേണിക്ക് ഒരു ഡയറക്‌ട് നോൺ-സൈക്ലിക് ഗ്രാഫിന്റെ ഘടനയുണ്ട്, ഒരു ട്രീ ഘടന ആവശ്യമില്ല).

4. പോളിമോർഫിസം: ഒന്നിലധികം ക്ലാസുകൾക്ക് ഒരേ രീതിയും പ്രോപ്പർട്ടി പേരുകളും ഉണ്ടായിരിക്കാം, അവ വ്യത്യസ്തമായി കണക്കാക്കിയാലും. ഈ ക്ലാസുകളിൽ അനുബന്ധ രീതികളും സവിശേഷതകളും നിർവചിച്ചിരിക്കുന്നിടത്തോളം, തികച്ചും വ്യത്യസ്തമായ ക്ലാസുകളിലെ ഒബ്ജക്റ്റുകളുമായി ശരിയായി പ്രവർത്തിക്കുന്ന ആക്സസ് രീതികൾ എഴുതാൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു.

5. സന്ദേശങ്ങൾ: പ്രതികരണങ്ങൾ ലഭിക്കാനുള്ള സാധ്യതയുള്ള സന്ദേശങ്ങൾ അയച്ചാണ് വസ്തുക്കളുമായുള്ള ഇടപെടൽ നടത്തുന്നത്.

ഓരോ ഒബ്ജക്റ്റും, ഒഒഡിബിയിൽ സംഭരിച്ചിരിക്കുന്ന വിവരങ്ങൾ ഒരു ക്ലാസിൽ ഉൾപ്പെട്ടതായി കണക്കാക്കുന്നു, കൂടാതെ ക്ലാസുകളുടെ ഗുണങ്ങളും രീതികളും ഉപയോഗിച്ച് ക്ലാസുകൾ തമ്മിലുള്ള കണക്ഷനുകൾ സ്ഥാപിക്കപ്പെടുന്നു.

OOBD മോഡൽ കൂടുതലാണ് ഉയർന്ന തലംറിലേഷണൽ അല്ലെങ്കിൽ ട്രീ ഡാറ്റാബേസുകളേക്കാൾ അമൂർത്തങ്ങൾ, അതിനാൽ ഈ മോഡലുകളിലൊന്ന് അല്ലെങ്കിൽ മറ്റേതെങ്കിലും അടിസ്ഥാനമാക്കി ക്ലാസുകൾ നടപ്പിലാക്കാൻ കഴിയും. ഡാറ്റാ ഘടനകളേക്കാൾ നടപടിക്രമങ്ങൾ (രീതികൾ) വികസനത്തിന്റെ കേന്ദ്രമായതിനാൽ, മതിയായ ശക്തിയും വഴക്കവും പ്രോസസ്സിംഗ് പ്രകടനവും നൽകുന്ന ഒരു അടിസ്ഥാന മോഡൽ തിരഞ്ഞെടുക്കേണ്ടത് പ്രധാനമാണ്.

ഘടനയുടെ കർശനമായ നിർവചനവും അനുവദനീയമായ പ്രവർത്തനങ്ങളുടെ പരിമിതമായ സെറ്റും ഉള്ള റിലേഷണൽ ഡാറ്റാബേസുകൾ, OODB-യുടെ അടിസ്ഥാന പ്ലാറ്റ്‌ഫോമായി അനുയോജ്യമല്ല. എം-ലാംഗ്വേജ് സിസ്റ്റം അതിന്റെ കൂടുതൽ വഴക്കമുള്ള ഡാറ്റാ ഘടനയും വികസനത്തിനായുള്ള കൂടുതൽ നടപടിക്രമപരമായ സമീപനവും ഒരു OODBMS-ന്റെ അടിസ്ഥാന പ്ലാറ്റ്‌ഫോമായി ഉപയോഗിക്കുന്നതിന് കൂടുതൽ അനുയോജ്യമാണെന്ന് തോന്നുന്നു.

DBMS ആണ് സോഫ്റ്റ്വെയർ, ഉപയോക്താക്കൾക്ക് ഒരു ഡാറ്റാബേസ് നിർവചിക്കാനും സൃഷ്ടിക്കാനും പരിപാലിക്കാനും അതിലേക്കുള്ള നിയന്ത്രിത ആക്സസ് ഉപയോഗിക്കാനും കഴിയുന്ന സഹായത്തോടെ.

ഒബ്ജക്റ്റ്-റിലേഷണൽ DBMS-കൾ, ഉദാഹരണത്തിന്, Oracle Database ഉം PostgreSQL ഉം; വസ്തു-ബന്ധവും തമ്മിലുള്ള വ്യത്യാസം ഒബ്ജക്റ്റ് DBMS: ആദ്യത്തേത് റിലേഷണൽ സ്കീമയ്ക്ക് മേലെയുള്ള ഒരു സൂപ്പർസ്ട്രക്ചറാണ്, രണ്ടാമത്തേത് തുടക്കത്തിൽ ഒബ്ജക്റ്റ് ഓറിയന്റഡ് ആണ്.

റിലേഷണൽ DBMS-ൽ ഒരു ഒബ്‌ജക്‌റ്റിലേക്കുള്ള ആക്‌സസ്സ്.1) DBMS പേജ് നിർവ്വചിക്കുന്നു ബാഹ്യ ഉപകരണംആവശ്യമായ റെക്കോർഡ് അടങ്ങുന്ന സംഭരണം. സൂചിക മെക്കാനിസങ്ങൾ ഉപയോഗിക്കുകയോ പൂർണ്ണ ടേബിൾ സ്കാനുകൾ നടത്തുകയോ ചെയ്യുക. DBMS പിന്നീട് ഈ പേജ് ബാഹ്യ സംഭരണ ​​ഉപകരണത്തിൽ നിന്ന് വായിക്കുകയും CACHE 2-ലേക്ക് പകർത്തുകയും ചെയ്യുന്നു. DBMS തുടർച്ചയായി CACHE-യിൽ നിന്ന് ആപ്ലിക്കേഷന്റെ മെമ്മറി സ്‌പെയ്‌സിലേക്ക് ഡാറ്റ കൈമാറുന്നു. ഇതിന് തരം പരിവർത്തനങ്ങൾ ആവശ്യമായി വന്നേക്കാം. SQL ഡാറ്റആപ്ലിക്കേഷൻ ഡാറ്റ തരങ്ങളിലേക്ക്. ഒരു അപ്ലിക്കേഷന് അതിന്റെ മെമ്മറി സ്‌പെയ്‌സിൽ ഫീൽഡ് മൂല്യങ്ങൾ അപ്‌ഡേറ്റ് ചെയ്യാൻ കഴിയും. 3. ആപ്ലിക്കേഷൻ വഴി പരിഷ്കരിച്ച ഡാറ്റ ഫീൽഡുകൾ SQL ഭാഷ DBMS CACHE ലേക്ക് തിരികെ മാറ്റുന്നു, ഈ സമയത്ത് ഒരു ഡാറ്റാ തരം പരിവർത്തനം നടത്തേണ്ടത് വീണ്ടും ആവശ്യമായി വന്നേക്കാം. 4. DBMS അപ്ഡേറ്റ് ചെയ്ത പേജ് CACHE-ൽ നിന്ന് മാറ്റിയെഴുതി ഒരു ബാഹ്യ സംഭരണ ​​ഉപകരണത്തിൽ സംരക്ഷിക്കുന്നു.

ഒരു OODBMS-ലെ ഒബ്‌ജക്‌റ്റിലേക്കുള്ള ആക്‌സസ്. 1. OODBMS കണ്ടെത്തൽആവശ്യമെങ്കിൽ അതിന്റെ സൂചിക ഉപയോഗിച്ച് ആവശ്യമായ ഒബ്‌ജക്റ്റ് അടങ്ങിയ ഒരു പേജ് ഇത് ഒരു ബാഹ്യ സംഭരണ ​​ഉപകരണത്തിൽ പ്രിന്റ് ചെയ്യുന്നു. OODBMS പിന്നീട് ബാഹ്യ സംഭരണ ​​ഉപകരണത്തിൽ നിന്ന് ആവശ്യമായ പേജ് വായിക്കുകയും അത് ആപ്ലിക്കേഷന്റെ പേജ് CACHE ലേക്ക് പകർത്തുകയും ചെയ്യുന്നു, അത് ആപ്ലിക്കേഷന് അനുവദിച്ച മെമ്മറിക്കുള്ളിലാണ്. 2. OODBMS എംനിരവധി പരിവർത്തനങ്ങൾ നടത്താൻ കഴിയും: 1. ഒരു വസ്തുവിന്റെ റഫറൻസുകളുടെ (പോയിന്ററുകൾ) മറ്റൊന്നിലേക്ക് പകരം വയ്ക്കൽ. 2. പ്രോഗ്രാമിംഗ് ഭാഷയുടെ ആവശ്യകതകൾ പാലിക്കുന്നുണ്ടെന്ന് ഉറപ്പാക്കാൻ ആവശ്യമായ വിവരങ്ങളുടെ ഒബ്ജക്റ്റ് ഡാറ്റയിലേക്ക് ആമുഖം. 3. വ്യത്യസ്ത ഹാർഡ്‌വെയർ പ്ലാറ്റ്‌ഫോമുകളിലോ പ്രോഗ്രാമിംഗ് ഭാഷകളിലോ സൃഷ്ടിച്ച ഡാറ്റ അവതരിപ്പിക്കുന്നതിനുള്ള ഫോർമാറ്റ് മാറ്റുന്നു. 3. ആപ്ലിക്കേഷൻ നടപ്പിലാക്കുന്നുഒബ്ജക്റ്റ് ആക്സസ് ചെയ്യുകയും ആവശ്യാനുസരണം അപ്ഡേറ്റ് ചെയ്യുകയും ചെയ്യുന്നു. 4. ആപ്ലിക്കേഷൻ ചെയ്യേണ്ട സമയത്ത് മാറ്റങ്ങൾ വരുത്തി CACHE-ൽ നിന്ന് ഡിസ്കിലേക്ക് പേജ് ശാശ്വതമായോ താൽക്കാലികമായോ അൺലോഡ് ചെയ്യുക, തുടർന്ന് ഒരു ബാഹ്യ സംഭരണ ​​ഉപകരണത്തിലേക്ക് പേജ് പകർത്തുന്നതിന് മുമ്പ്, OODBMS മുകളിൽ വിവരിച്ചതിന് സമാനമായി വിപരീത പരിവർത്തനങ്ങൾ നടത്തണം.



ടിക്കറ്റ് നമ്പർ 27

സാമ്പത്തിക ബാലൻസ്, എന്റർപ്രൈസസിന്റെ ബിസിനസ്സ് പ്രവർത്തനം. എന്റർപ്രൈസസിന്റെ സാമ്പത്തിക ബാലൻസ്. ലിവറേജ് പ്രഭാവം. ഡെറ്റ് ലെവൽ വിശകലനം. ഉൽപ്പാദന പ്രവർത്തനങ്ങളിലെ പണമൊഴുക്കിന്റെ വിശകലനം.

എന്റർപ്രൈസസിന്റെ ബിസിനസ്സ് പ്രവർത്തനംനിക്ഷേപിച്ച (ആഭ്യന്തര) മൂലധനത്തിന്റെ ഉപയോഗത്തിന്റെ തീവ്രതയാണ് സാധാരണയായി സവിശേഷത. ഉൽപാദനത്തിൽ, മൂലധനം നിരന്തരമായ ചലനത്തിലാണ്, സർക്യൂട്ടിന്റെ ഒരു ഘട്ടത്തിൽ നിന്ന് മറ്റൊന്നിലേക്ക് നീങ്ങുന്നു: അതായത്, സാങ്കേതികവിദ്യ D®T®...®P®...T®D നടപ്പിലാക്കുന്നു." പണം, സാധനങ്ങൾ

ഉദാഹരണത്തിന്, ആദ്യ ഘട്ടത്തിൽ, ഒരു എന്റർപ്രൈസ് സ്ഥിര ആസ്തികളിലും ഇൻവെന്ററികളിലും നിക്ഷേപിക്കുന്നു; രണ്ടാം ഘട്ടത്തിൽ, ഇൻവെന്ററികളുടെ രൂപത്തിലുള്ള ഫണ്ടുകൾ ഉൽപാദനത്തിലേക്ക് പോകുന്നു, അതിന്റെ ഒരു ഭാഗം ജീവനക്കാർക്ക് നൽകാനും നികുതി അടയ്ക്കാനും സാമൂഹിക സുരക്ഷാ പേയ്‌മെന്റുകൾക്കും മറ്റും ഉപയോഗിക്കുന്നു. ചെലവുകൾ. പൂർത്തിയായ ഉൽപ്പന്നങ്ങളുടെ പ്രകാശനത്തോടെ ഈ ഘട്ടം അവസാനിക്കുന്നു. മൂന്നാം ഘട്ടത്തിൽ, പൂർത്തിയായ ഉൽപ്പന്നങ്ങൾ വിൽക്കുന്നു, കമ്പനി സ്വീകരിക്കുന്നു പണം. മൂലധനം എത്ര വേഗത്തിൽ സർക്യൂട്ട് ഉണ്ടാക്കുന്നുവോ അത്രയും കൂടുതൽ ഉൽപ്പന്നങ്ങൾ എന്റർപ്രൈസ് സ്വീകരിക്കുകയും നിക്ഷേപിച്ച മൂലധനത്തിന്റെ അതേ തുക ഉപയോഗിച്ച് വിൽക്കുകയും ചെയ്യും. ഏത് ഘട്ടത്തിലും ഫണ്ടുകളുടെ ചലനത്തിലെ കാലതാമസം മൂലധന വിറ്റുവരവിൽ മാന്ദ്യത്തിലേക്ക് നയിക്കുന്നു, ഫണ്ടുകളുടെ അധിക നിക്ഷേപം ആവശ്യമാണ്, മൂലധനത്തിന്റെ ഉപയോഗത്തിൽ കാര്യമായ തകർച്ചയ്ക്ക് കാരണമാകും.

നിക്ഷേപിച്ച മൂലധനം ഉപയോഗിക്കുന്നതിന്റെ കാര്യക്ഷമത ഇനിപ്പറയുന്ന സൂചകങ്ങൾ കണക്കാക്കി വിലയിരുത്തുന്നു.

റിലേഷണൽ ഡിബിഎംഎസ് - റിലേഷണൽ ഡാറ്റാബേസുകൾ കൈകാര്യം ചെയ്യുന്ന ഒരു ഡിബിഎംഎസ്.

റിലേഷണൽ മോഡൽ ദ്വിമാന പട്ടികകളുടെ രൂപത്തിൽ ഡാറ്റ സംഘടിപ്പിക്കുന്നതിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു. ഓരോ റിലേഷണൽ ടേബിളും ഒരു ദ്വിമാന അറേയാണ് കൂടാതെ ഇനിപ്പറയുന്ന ഗുണങ്ങളുണ്ട്:

    ഓരോ പട്ടിക ഘടകവും ഒരു ഡാറ്റ ഘടകമാണ്.

    ഒരു പട്ടിക നിരയിലെ എല്ലാ സെല്ലുകളും ഏകതാനമാണ്, അതായത്, നിരയിലെ എല്ലാ ഘടകങ്ങളും ഒരേ തരത്തിലുള്ളതാണ് (സംഖ്യ, പ്രതീകം മുതലായവ)

    ഓരോ കോളത്തിനും തനതായ പേരുണ്ട്

    പട്ടികയിൽ സമാനമായ വരികളൊന്നുമില്ല

    വരികളുടെയും നിരകളുടെയും ക്രമം ഏകപക്ഷീയമായിരിക്കാം

ഒരു പട്ടിക വരിയെ റെക്കോർഡ് എന്ന് വിളിക്കുന്നു, ഒരു കോളം ഒരു ഫീൽഡ് ആണ്.

പ്രൈമറി കീ എന്നത് ആട്രിബ്യൂട്ടുകളുടെ ഏറ്റവും കുറഞ്ഞ സെറ്റാണ്, ഇത് ഒരു നിശ്ചിത ബന്ധത്തിന്റെ തലക്കെട്ടിന്റെ ഒരു ഉപഗണമാണ്, അതിന്റെ സംയോജിത മൂല്യം റിലേഷൻ ട്യൂപ്പിലിനെ അദ്വിതീയമായി നിർവചിക്കുന്നു. പ്രായോഗികമായി, പ്രൈമറി കീ എന്ന പദം ഒരു ഡാറ്റാബേസ് പട്ടികയിലെ ഒരു ഫീൽഡ് അല്ലെങ്കിൽ ഫീൽഡുകളുടെ ഗ്രൂപ്പിനെ സൂചിപ്പിക്കുന്നു, അതിന്റെ മൂല്യം (അല്ലെങ്കിൽ മൂല്യങ്ങളുടെ സംയോജനം) ആ പട്ടികയിലെ ഒരു റെക്കോർഡിനായി ഒരു അദ്വിതീയ ഐഡന്റിഫയറായി ഉപയോഗിക്കുന്നു. റിലേഷണൽ തിയറിയിൽ, ഒരു പട്ടിക എന്നത് ക്രമപ്പെടുത്താത്ത റെക്കോർഡുകളുടെ ഒരു ശേഖരമാണ്. ഈ പട്ടികയിലെ ഒരു പ്രത്യേക റെക്കോർഡ് തിരിച്ചറിയാനുള്ള ഒരേയൊരു മാർഗ്ഗം ആ റെക്കോർഡിന് മാത്രമുള്ള ഒന്നോ അതിലധികമോ ഫീൽഡുകൾക്കായി ഒരു കൂട്ടം മൂല്യങ്ങൾ വ്യക്തമാക്കുക എന്നതാണ്. ഇവിടെ നിന്നാണ് ഒരു പ്രാഥമിക കീ എന്ന ആശയം വരുന്നത് - പട്ടിക ഫീൽഡുകളുടെ ഒരു കൂട്ടം, ഈ പട്ടികയുടെ ഏത് റെക്കോർഡിനും (വരി) നിർവചിച്ചിരിക്കുന്ന മൂല്യങ്ങളുടെ ഗണം, ഏത് രണ്ട് റെക്കോർഡുകൾക്കും വ്യത്യസ്തമാണ്.

വിദേശ കീ വിദേശ കീ) - ഈ പട്ടികകൾ തമ്മിലുള്ള ബന്ധം ക്രമീകരിക്കുന്നതിന് മറ്റൊരു പട്ടികയുടെ പ്രാഥമിക കീയുടെ മൂല്യം സംഭരിക്കാൻ രൂപകൽപ്പന ചെയ്ത ഒരു ടേബിൾ ഫീൽഡ്.

A, B എന്നീ പട്ടികകൾ ഉണ്ടാകട്ടെ. പട്ടിക A-ൽ a, b, c, d എന്നീ ഫീൽഡുകൾ അടങ്ങിയിരിക്കുന്നു, ഏത് ഫീൽഡിലെ a പ്രാഥമിക കീയാണ്. പട്ടിക ബിയിൽ x, y, z എന്നീ ഫീൽഡുകൾ അടങ്ങിയിരിക്കുന്നു. ഫീൽഡ് y യിൽ പട്ടിക A-യിലെ റെക്കോർഡുകളിലൊന്നിന്റെ ഫീൽഡ് a യുടെ മൂല്യം അടങ്ങിയിരിക്കുന്നു. ഈ സാഹചര്യത്തിൽ, y ഫീൽഡിനെ പട്ടിക B-യിലെ A-യുടെ ഒരു വിദേശ കീ എന്ന് വിളിക്കുന്നു.

ഈ SQL അന്വേഷണം എ, ബി പട്ടികകളിൽ നിന്നുള്ള എല്ലാ അനുബന്ധ ജോഡി റെക്കോർഡുകളും നൽകും:

A.a = B.y എന്നതിൽ A, B എന്നതിൽ നിന്ന് * തിരഞ്ഞെടുക്കുക;

ഒരു പട്ടികയിലെ ഒരു വിദേശ കീക്ക് പട്ടികയെ തന്നെ സൂചിപ്പിക്കാനും കഴിയും. അത്തരം സന്ദർഭങ്ങളിൽ നമ്മൾ ഒരു ആവർത്തന വിദേശ കീയെക്കുറിച്ച് സംസാരിക്കുന്നു. ഒരു റിലേഷണൽ ടേബിളിൽ ഒരു ട്രീ ഡാറ്റാ ഘടന നടപ്പിലാക്കുന്നതിന് അത്യാവശ്യമാണ്.

വിദേശ കീകളിൽ ഓട്ടോമാറ്റിക് റഫറൻഷ്യൽ ഇന്റഗ്രിറ്റി കൺട്രോളിനെ DBMS പിന്തുണയ്ക്കുന്നു.

പട്ടിക ബന്ധങ്ങളുടെ തരങ്ങൾ

മൂന്ന് തരത്തിലുള്ള ടേബിൾ ബന്ധങ്ങളുണ്ട്.

ഒന്നിൽ നിന്ന് നിരവധി ബന്ധങ്ങളുമായുള്ള ബന്ധം. പട്ടികകൾ തമ്മിലുള്ള ഏറ്റവും സാധാരണയായി ഉപയോഗിക്കുന്ന തരത്തിലുള്ള ബന്ധമാണിത്. അത്തരമൊരു ബന്ധത്തിൽ, ടേബിൾ എയിലെ ഓരോ റെക്കോർഡിനും ടേബിൾ ബിയിൽ ഒന്നിലധികം റെക്കോർഡുകൾ ഉണ്ടായിരിക്കാം, കൂടാതെ ടേബിൾ ബിയിലെ ഒരു റെക്കോർഡിന് ടേബിൾ എയിൽ ഒന്നിൽ കൂടുതൽ അനുബന്ധ റെക്കോർഡുകൾ ഉണ്ടാകരുത്. ഉദാഹരണത്തിന്, ഒരു ഡിപ്പാർട്ട്‌മെന്റിൽ നിരവധി ജീവനക്കാർക്ക് ജോലി ചെയ്യാൻ കഴിയും, എന്നാൽ ഒരു ജീവനക്കാരന് കഴിയില്ല. ഒരേസമയം നിരവധി വകുപ്പുകളിൽ പ്രവർത്തിക്കുക. അംഗീകൃത നൊട്ടേഷൻ (1 - ∞).

പലതും പലതും. ഈ ബന്ധത്തിൽ, പട്ടിക A-യിലെ ഒരു റെക്കോർഡ് പട്ടിക B-യിലെ നിരവധി റെക്കോർഡുകളുമായി പൊരുത്തപ്പെടാം, കൂടാതെ പട്ടിക B-യിലെ ഒരു റെക്കോർഡ് പട്ടിക A-യിലെ നിരവധി റെക്കോർഡുകളുമായി പൊരുത്തപ്പെടാം. മൂന്നാമത്തെ (ലിങ്കിംഗ്) പട്ടികയുടെ സഹായത്തോടെ മാത്രമേ ഈ സ്കീം നടപ്പിലാക്കുകയുള്ളൂ. ഇതിൽ താക്കോൽ അടങ്ങിയിരിക്കുന്നു ഇത്രയെങ്കിലും A, B പട്ടികകളിലെ വിദേശ കീ ഫീൽഡുകൾ ആയ രണ്ട് ഫീൽഡുകൾ. ഉദാഹരണത്തിന്, ഇൻസ്പെക്ടർമാരും ബോർഡർ ക്രോസ്സേഴ്സ് ടേബിളുകളും തമ്മിലുള്ള ബന്ധം നിരവധി-പല ബന്ധങ്ങളാൽ നിർവചിക്കപ്പെടുന്നു. ഒരു ഡിക്ലറന്റിനെ നിരവധി ഇൻസ്പെക്ടർമാർക്ക് കൺസൾട്ട് ചെയ്യാൻ കഴിയും, അതേ സമയം ഇൻസ്പെക്ടർക്ക് നിരവധി ആളുകളെ സേവിക്കാൻ കഴിയും. ഇൻസ്‌പെക്ടർ_ഡിക്ലറന്റ് ടേബിളിനായി ഒന്നിൽ നിന്ന് നിരവധി ബന്ധങ്ങളുള്ള രണ്ട് ബന്ധങ്ങൾ സൃഷ്ടിച്ചുകൊണ്ട് അത്തരമൊരു ബന്ധം നിർവചിക്കപ്പെടുന്നു, അതിൽ ഇൻസ്പെക്ടർ കീയും ഡിക്ലറന്റ് കീ ഫീൽഡുകളും ഉണ്ടായിരിക്കണം.

വൺ-ടു-വൺ ബന്ധത്തിൽ, ടേബിൾ എയിലെ ഒരു റെക്കോർഡിന് ടേബിൾ ബിയിലും തിരിച്ചും ഒരു അനുബന്ധ റെക്കോർഡ് ഉണ്ടായിരിക്കാം. ഇത്തരത്തിലുള്ള ബന്ധം പലപ്പോഴും ഉപയോഗിക്കാറില്ല, കാരണം അത്തരം ഡാറ്റ ഒരു പട്ടികയിൽ സ്ഥാപിക്കാൻ കഴിയും. സുരക്ഷാ കാരണങ്ങളാൽ വളരെ വിശാലമായ പട്ടികകൾ പാർട്ടീഷൻ ചെയ്യുന്നതിനോ ഒരു പട്ടികയുടെ ഭാഗം വേർതിരിക്കുന്നതിനോ വൺ-ടു-വൺ ബന്ധം ഉപയോഗിക്കുന്നു.

ഈ ലേഖനത്തിലൂടെ ഞങ്ങൾ ഡാറ്റാബേസുകൾ, ഡാറ്റ ആക്സസ് ചെയ്യുന്നതിനും പ്രോസസ്സ് ചെയ്യുന്നതിനുമുള്ള ആധുനിക സാങ്കേതികവിദ്യകൾ എന്നിവയ്ക്കായി നീക്കിവച്ചിരിക്കുന്ന ഒരു പുതിയ പരമ്പര ആരംഭിക്കുന്നു. ഈ സൈക്കിളിൽ, ഏറ്റവും ജനപ്രിയമായ ഡെസ്‌ക്‌ടോപ്പ്, സെർവർ ഡാറ്റാബേസ് മാനേജ്‌മെന്റ് സിസ്റ്റങ്ങൾ (DBMS), ഡാറ്റ ആക്‌സസ് മെക്കാനിസങ്ങൾ (OLD DB, ADO, BDE, മുതലായവ), ഡാറ്റാബേസുകളിൽ പ്രവർത്തിക്കുന്നതിനുള്ള യൂട്ടിലിറ്റികൾ (അഡ്‌മിനിസ്‌ട്രേഷൻ ടൂളുകൾ, റിപ്പോർട്ട് ജനറേറ്ററുകൾ, ടൂളുകൾ ഗ്രാഫിക്കൽ) എന്നിവ പരിഗണിക്കാൻ ഞങ്ങൾ പദ്ധതിയിടുന്നു. ഡാറ്റയുടെ അവതരണം). കൂടാതെ, ഇൻറർനെറ്റിൽ ഡാറ്റ പ്രസിദ്ധീകരിക്കുന്നതിനുള്ള രീതികൾ, അതുപോലെ തന്നെ OLAP (ഓൺ-ലൈൻ അനലിറ്റിക്കൽ പ്രോസസ്സിംഗ്), ഡാറ്റ വെയർഹൗസുകൾ (ഡാറ്റ വെയർഹൗസിംഗ്) എന്നിവ പോലുള്ള ഡാറ്റ പ്രോസസ്സ് ചെയ്യുന്നതിനും സംഭരിക്കുന്നതിനുമുള്ള ജനപ്രിയ രീതികൾ ശ്രദ്ധിക്കാൻ ഞങ്ങൾ പദ്ധതിയിടുന്നു.

ഈ ലേഖനത്തിൽ ഞങ്ങൾ ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റങ്ങളുടെ അടിസ്ഥാന ആശയങ്ങളും തത്വങ്ങളും നോക്കും. റിലേഷണൽ ഡാറ്റ മോഡൽ, റഫറൻഷ്യൽ ഇന്റഗ്രിറ്റി എന്ന ആശയം, ഡാറ്റ നോർമലൈസേഷന്റെ തത്വങ്ങൾ, ഡാറ്റ ഡിസൈൻ ടൂളുകൾ എന്നിവ ഞങ്ങൾ ചർച്ച ചെയ്യും. തുടർന്ന് ഡിബിഎംഎസുകൾ എന്താണെന്നും ഡാറ്റാബേസുകളിൽ എന്തൊക്കെ ഒബ്‌ജക്‌റ്റുകൾ ഉൾക്കൊള്ളിക്കാമെന്നും ഈ ഒബ്‌ജക്റ്റുകൾക്കെതിരെ എങ്ങനെ അന്വേഷണങ്ങൾ നടത്താമെന്നും ഞങ്ങൾ വിശദീകരിക്കും.

അടിസ്ഥാന റിലേഷണൽ ഡാറ്റാബേസ് ആശയങ്ങൾ

DBMS-ന്റെ അടിസ്ഥാന ആശയങ്ങളിൽ നിന്ന് നമുക്ക് ആരംഭിക്കാം ലഖു മുഖവുരറിലേഷണൽ ഡാറ്റാബേസുകളുടെ സിദ്ധാന്തത്തിലേക്ക് - ഇന്നത്തെ ഏറ്റവും ജനപ്രിയമായ ഡാറ്റ സംഭരണ ​​രീതി.

റിലേഷണൽ ഡാറ്റ മോഡൽ

റിലേഷണൽ ഡാറ്റ മോഡൽ 1969-ൽ ഐബിഎം ജീവനക്കാരനായിരിക്കെ പ്രശസ്ത ഡാറ്റാബേസ് ഗവേഷകനായ ഡോ. ഇ.എഫ്.കോഡ് നിർദ്ദേശിച്ചു. ഈ മോഡലിന്റെ അടിസ്ഥാന ആശയങ്ങൾ ആദ്യമായി 1970-ൽ പ്രസിദ്ധീകരിച്ചു. "വലിയ പങ്കിട്ട ഡാറ്റാ ബാങ്കുകൾക്കായുള്ള ഡാറ്റയുടെ ഒരു റിലേഷണൽ മോഡൽ", CACM, 1970, 13 N 6).

ഒരു കൂട്ടം ദ്വിമാന പട്ടികകൾ അടങ്ങിയ ഒരു ഡാറ്റ വെയർഹൗസാണ് റിലേഷണൽ ഡാറ്റാബേസ്. അത്തരം സംഭരണം കൈകാര്യം ചെയ്യുന്നതിനുള്ള ഒരു കൂട്ടം ടൂളുകളെ വിളിക്കുന്നു റിലേഷണൽ ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റം (RDBMS). ഒരു RDBMS-ൽ യൂട്ടിലിറ്റികൾ, ആപ്ലിക്കേഷനുകൾ, സേവനങ്ങൾ, ലൈബ്രറികൾ, ആപ്ലിക്കേഷൻ സൃഷ്ടിക്കൽ ഉപകരണങ്ങൾ, മറ്റ് ഘടകങ്ങൾ എന്നിവ അടങ്ങിയിരിക്കാം.

ഏതെങ്കിലും മേശ ആപേക്ഷിക അടിത്തറഡാറ്റ അടങ്ങിയിരിക്കുന്നു ലൈനുകൾ(എന്നും വിളിക്കുന്നു രേഖകള്) ഒപ്പം നിരകൾ(എന്നും വിളിക്കുന്നു വയലുകൾ). ഈ ശ്രേണിയിൽ ഞങ്ങൾ രണ്ട് ജോഡി പദങ്ങളും ഉപയോഗിക്കും.

പട്ടികയുടെ വരികളിൽ അതിൽ അവതരിപ്പിച്ചിരിക്കുന്ന വസ്തുതകളെക്കുറിച്ചുള്ള വിവരങ്ങൾ അടങ്ങിയിരിക്കുന്നു (അല്ലെങ്കിൽ പ്രമാണങ്ങൾ, അല്ലെങ്കിൽ ആളുകൾ, ഒരു വാക്കിൽ - ഒരേ തരത്തിലുള്ള വസ്തുക്കളെ കുറിച്ച്). ഒരു നിരയുടെയും ഒരു വരിയുടെയും കവലയിൽ പട്ടികയിൽ അടങ്ങിയിരിക്കുന്ന ഡാറ്റയുടെ നിർദ്ദിഷ്ട മൂല്യങ്ങൾ ഉണ്ട്.

പട്ടികയിലെ ഡാറ്റ ഇനിപ്പറയുന്ന തത്വങ്ങൾ പാലിക്കുന്നു:

  1. ഒരു വരിയുടെയും നിരയുടെയും കവലയിൽ അടങ്ങിയിരിക്കുന്ന ഓരോ മൂല്യവും ആയിരിക്കണം ആറ്റോമിക(അതായത്, പല മൂല്യങ്ങളായി വിഭജിച്ചിട്ടില്ല).
  2. ഒരേ കോളത്തിലെ ഡാറ്റ മൂല്യങ്ങൾ തന്നിരിക്കുന്ന DBMS-ൽ ഉപയോഗിക്കുന്നതിന് ലഭ്യമായ അതേ തരത്തിലായിരിക്കണം.
  3. പട്ടികയിലെ ഓരോ റെക്കോർഡും അദ്വിതീയമാണ്, അതായത്, അതിന്റെ ഫീൽഡുകൾക്കായി പൂർണ്ണമായും പൊരുത്തപ്പെടുന്ന മൂല്യങ്ങളുള്ള രണ്ട് റെക്കോർഡുകളൊന്നും പട്ടികയിലില്ല.
  4. ഓരോ ഫീൽഡിനും ഓരോ പേരുണ്ട്.
  5. പട്ടികയിലെ ഫീൽഡുകളുടെ ക്രമം പ്രധാനമല്ല.
  6. എൻട്രികളുടെ ക്രമവും അപ്രധാനമാണ്.

പട്ടിക വരികൾ ക്രമരഹിതമായി കണക്കാക്കപ്പെടുന്നു എന്ന വസ്തുത ഉണ്ടായിരുന്നിട്ടും, ഉപയോക്താവിന് ആവശ്യമുള്ള രീതിയിൽ അതിൽ നിന്നുള്ള നിരകളും നിരകളും അടുക്കാൻ ഏതൊരു ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റവും നിങ്ങളെ അനുവദിക്കുന്നു.

ഒരു പട്ടികയിലെ നിരകളുടെ ക്രമം പ്രധാനമല്ലാത്തതിനാൽ, അവ പേരിനാൽ പരാമർശിക്കപ്പെടുന്നു, ഈ പേരുകൾ തന്നിരിക്കുന്ന പട്ടികയ്ക്ക് അദ്വിതീയമാണ് (എന്നാൽ മുഴുവൻ ഡാറ്റാബേസിനും അദ്വിതീയമായിരിക്കണമെന്നില്ല).

അതിനാൽ, റിലേഷണൽ ഡാറ്റാബേസുകൾ പട്ടികകളാൽ നിർമ്മിതമാണെന്ന് ഇപ്പോൾ നമുക്കറിയാം. ചില സൈദ്ധാന്തിക പോയിന്റുകൾ ചിത്രീകരിക്കുന്നതിനും ഉദാഹരണങ്ങൾ സൃഷ്ടിക്കുന്നതിനും, ഞങ്ങൾ ഒരുതരം ഡാറ്റാബേസ് തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്. "ചക്രം പുനർനിർമ്മിക്കാതിരിക്കാൻ", പാക്കേജിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന നോർത്ത് വിൻഡ് ഡാറ്റാബേസ് ഞങ്ങൾ ഉപയോഗിക്കും Microsoft SQLസെർവർ ഒപ്പം Microsoft Access.

ഇനി പട്ടികകൾ തമ്മിലുള്ള ബന്ധങ്ങൾ നോക്കാം.

കീകളും കണക്ഷനുകളും

നോർത്ത് വിൻഡ് ഡാറ്റാബേസിൽ നിന്നുള്ള ഉപഭോക്തൃ പട്ടികയുടെ ഒരു സ്‌നിപ്പെറ്റ് നോക്കാം (പട്ടികകൾ തമ്മിലുള്ള ബന്ധങ്ങൾ ചിത്രീകരിക്കുന്നതിന് അനിവാര്യമല്ലാത്ത ഫീൽഡുകൾ ഞങ്ങൾ നീക്കം ചെയ്‌തു).

ഒരു പട്ടികയിലെ വരികൾ ക്രമരഹിതമായതിനാൽ, ഓരോ വരിയും അദ്വിതീയമായി തിരിച്ചറിയാൻ ഞങ്ങൾക്ക് ഒരു നിര (അല്ലെങ്കിൽ നിരകളുടെ കൂട്ടം) ആവശ്യമാണ്. അത്തരമൊരു നിര (അല്ലെങ്കിൽ നിരകളുടെ കൂട്ടം) എന്ന് വിളിക്കുന്നു പ്രാഥമിക കീ (പ്രാഥമിക കീ). ഏതൊരു ടേബിളിന്റെയും പ്രാഥമിക കീയിൽ ഓരോ വരിയ്‌ക്കും അദ്വിതീയമായ ശൂന്യമല്ലാത്ത മൂല്യങ്ങൾ അടങ്ങിയിരിക്കണം.

പ്രാഥമിക കീയിൽ ഒന്നിൽ കൂടുതൽ നിരകൾ ഉണ്ടെങ്കിൽ, അതിനെ വിളിക്കുന്നു സംയോജിത പ്രാഥമിക കീ (സംയോജിത പ്രാഥമിക കീ).

ഒരു സാധാരണ ഡാറ്റാബേസിൽ സാധാരണയായി നിരവധി അനുബന്ധ പട്ടികകൾ അടങ്ങിയിരിക്കുന്നു. ഓർഡർ പട്ടികയുടെ ശകലം.

ഈ പട്ടികയുടെ കസ്റ്റമർ ഐഡി ഫീൽഡിൽ ഓർഡർ നൽകിയ ഉപഭോക്താവിന്റെ ഐഡി അടങ്ങിയിരിക്കുന്നു. ഓർഡർ നൽകിയ കമ്പനിയുടെ പേര് ഞങ്ങൾക്ക് അറിയണമെങ്കിൽ, ഉപഭോക്തൃ പട്ടികയിലെ കസ്റ്റമർ ഐഡി ഫീൽഡിൽ ഞങ്ങൾ അതേ ഉപഭോക്തൃ ഐഡി മൂല്യത്തിനായി നോക്കുകയും കണ്ടെത്തിയ വരിയിലെ കമ്പനി നാമ ഫീൽഡിന്റെ മൂല്യം വായിക്കുകയും വേണം. മറ്റൊരു വിധത്തിൽ പറഞ്ഞാൽ, കസ്റ്റമർ ഐഡി ഫീൽഡ് ഉപയോഗിച്ച് ഞങ്ങൾ രണ്ട് ടേബിളുകൾ ലിങ്ക് ചെയ്യേണ്ടതുണ്ട്, കസ്റ്റമർമാരും ഓർഡറുകളും. ബന്ധപ്പെട്ടിരിക്കുന്ന മറ്റൊരു പട്ടികയിലെ ഒരു റെക്കോർഡിലേക്ക് ചൂണ്ടിക്കാണിക്കുന്ന ഒരു കോളം ഈ എൻട്രി വഴി, വിളിച്ചു വിദേശ കീ (വിദേശ കീ). നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഓർഡർ പട്ടികയുടെ കാര്യത്തിൽ, വിദേശ കീ കസ്റ്റമർ ഐഡി കോളമാണ് (ചിത്രം 1).

മറ്റൊരു വാക്കിൽ, ബാഹ്യ കീമറ്റൊരു പട്ടികയുടെ പ്രാഥമിക കീയുടെ നിലവിലുള്ള മൂല്യങ്ങളുമായി പൊരുത്തപ്പെടുന്ന ഒരു നിര അല്ലെങ്കിൽ നിരകളുടെ കൂട്ടമാണ്.

പട്ടികകൾ തമ്മിലുള്ള ഈ ബന്ധത്തെ വിളിക്കുന്നു ആശയവിനിമയം (ബന്ധം). രണ്ട് പട്ടികകൾ തമ്മിലുള്ള ബന്ധം സ്ഥാപിക്കുന്നത് ഒരു ടേബിളിന്റെ വിദേശ കീ മൂല്യങ്ങൾ മറ്റൊന്നിന്റെ പ്രാഥമിക കീ മൂല്യങ്ങൾക്ക് നൽകിയാണ്.

ഉപഭോക്തൃ പട്ടികയിലെ ഓരോ ഉപഭോക്താവിനും ഒരു ഓർഡർ മാത്രമേ നൽകാൻ കഴിയൂ എങ്കിൽ, രണ്ട് ടേബിളുകളും ബന്ധപ്പെട്ടിരിക്കുന്നതായി പറയപ്പെടുന്നു ഒന്ന് മുതൽ ഒന്ന് വരെ (പരസ്പരം ബന്ധം). ഉപഭോക്തൃ ടേബിളിലെ ഓരോ ഉപഭോക്താവിനും പൂജ്യമോ ഒന്നോ നിരവധിയോ ഓർഡറുകൾ നൽകാൻ കഴിയുമെങ്കിൽ, രണ്ട് ടേബിളുകളും ബന്ധപ്പെട്ടിരിക്കുന്നതായി പറയപ്പെടുന്നു ഒന്നിൽ നിന്ന് പലതും (ഒന്നോ രണ്ടോ ബന്ധം) അല്ലെങ്കിൽ അനുപാതം മാസ്റ്റർ-വിശദാംശം. പട്ടികകൾ തമ്മിലുള്ള സമാന ബന്ധങ്ങൾ മിക്കപ്പോഴും ഉപയോഗിക്കാറുണ്ട്. ഈ സാഹചര്യത്തിൽ, വിദേശ കീ അടങ്ങുന്ന പട്ടിക വിളിക്കുന്നു വിശദാംശ പട്ടിക, കൂടാതെ ഒരു വിദേശ കീയുടെ സാധ്യമായ മൂല്യങ്ങൾ നിർവചിക്കുന്ന ഒരു പ്രാഥമിക കീ അടങ്ങുന്ന ഒരു പട്ടികയെ വിളിക്കുന്നു മാസ്റ്റർ ടേബിൾ.

അനുബന്ധ പട്ടികകളുടെ ഒരു ഗ്രൂപ്പിനെ വിളിക്കുന്നു പദ്ധതിഡാറ്റാബേസ് ( ഡാറ്റാബേസ് സ്കീമ). പട്ടികകൾ, അവയുടെ നിരകൾ (പേരുകൾ, ഡാറ്റ തരം, ഫീൽഡ് ദൈർഘ്യം), പ്രാഥമിക, വിദേശ കീകൾ, മറ്റ് ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകൾ എന്നിവയെ കുറിച്ചുള്ള വിവരങ്ങൾ വിളിക്കുന്നു മെറ്റാഡാറ്റ (മെറ്റാഡാറ്റ).

ഡാറ്റാബേസുകളിലെ ഏത് കൃത്രിമത്വത്തെയും, അതായത് ഡാറ്റ തിരഞ്ഞെടുക്കൽ, ചേർക്കൽ, ഇല്ലാതാക്കൽ, ഡാറ്റ അപ്ഡേറ്റ് ചെയ്യൽ, മെറ്റാഡാറ്റ മാറ്റൽ അല്ലെങ്കിൽ തിരഞ്ഞെടുക്കൽ എന്നിങ്ങനെ അഭ്യർത്ഥനഡാറ്റാബേസിലേക്ക് ( ചോദ്യം). സാധാരണഗതിയിൽ, ചില ഭാഷകളിൽ അന്വേഷണങ്ങൾ രൂപപ്പെടുത്തുന്നു, അത് വ്യത്യസ്ത DBMS-കൾക്കുള്ള സ്റ്റാൻഡേർഡ് അല്ലെങ്കിൽ ഒരു പ്രത്യേക DBMS-നെ ആശ്രയിച്ചിരിക്കും.

റഫറൻഷ്യൽ സമഗ്രത

ഏതെങ്കിലും പട്ടികയുടെ പ്രാഥമിക കീയിൽ തന്നിരിക്കുന്ന പട്ടികയ്‌ക്കായി ശൂന്യമല്ലാത്ത മൂല്യങ്ങൾ അടങ്ങിയിരിക്കണമെന്ന് ഞങ്ങൾ ഇതിനകം മുകളിൽ പറഞ്ഞിട്ടുണ്ട്. ഈ പ്രസ്താവന നിയമങ്ങളിൽ ഒന്നാണ് റഫറൻഷ്യൽ സമഗ്രത (റഫറൻഷ്യൽ സമഗ്രത). ചില (എല്ലാം അല്ല) DBMS-കൾക്ക് പ്രാഥമിക കീകളുടെ പ്രത്യേകത നിയന്ത്രിക്കാനാകും. ഡിബിഎംഎസ് പ്രാഥമിക കീകളുടെ അദ്വിതീയത നിയന്ത്രിക്കുകയാണെങ്കിൽ, മറ്റൊരു റെക്കോർഡിൽ നിലവിലുള്ള ഒരു പ്രാഥമിക കീയിലേക്ക് നിങ്ങൾ ഒരു മൂല്യം അസൈൻ ചെയ്യാൻ ശ്രമിക്കുകയാണെങ്കിൽ, ഡിബിഎംഎസ് ഒരു ഡയഗ്നോസ്റ്റിക് സന്ദേശം ജനറേറ്റ് ചെയ്യും, സാധാരണയായി ഈ വാചകം അടങ്ങിയിരിക്കുന്നു. പ്രാഥമിക കീ ലംഘനം. അന്തിമ ഉപയോക്താവ് ഡാറ്റ കൈകാര്യം ചെയ്യുന്ന ആപ്ലിക്കേഷനിലേക്ക് ഈ സന്ദേശം പിന്നീട് കൈമാറാൻ കഴിയും.

രണ്ട് പട്ടികകൾ ബന്ധവുമായി ബന്ധപ്പെട്ടതാണെങ്കിൽ മാസ്റ്റർ-വിശദാംശം, ബാഹ്യ കീ വിശദാംശങ്ങൾ-പ്രാഥമിക കീ മൂല്യങ്ങൾക്കിടയിൽ നിലവിലുള്ള മൂല്യങ്ങൾ മാത്രമേ പട്ടികയിൽ അടങ്ങിയിരിക്കാവൂ മാസ്റ്റർ-പട്ടികകൾ. വിദേശ കീ മൂല്യങ്ങളുടെ കൃത്യത DBMS നിയന്ത്രിക്കുന്നില്ലെങ്കിൽ, റഫറൻഷ്യൽ സമഗ്രതയുടെ ലംഘനത്തെക്കുറിച്ച് നമുക്ക് സംസാരിക്കാം. ഈ സാഹചര്യത്തിൽ, ഉപഭോക്തൃ പട്ടികയിൽ നിന്ന് ഒരു റെക്കോർഡെങ്കിലും ഞങ്ങൾ ഇല്ലാതാക്കിയാൽ വിശദാംശങ്ങൾ-ഓർഡറുകൾ പട്ടികയിലെ എൻട്രി, ഇത് അജ്ഞാതർ നൽകിയ ഓർഡറുകളുടെ രേഖകൾ അടങ്ങിയ ഓർഡറുകൾ പട്ടികയിലേക്ക് നയിക്കും. വിദേശ കീകളുടെ മൂല്യങ്ങളുടെ കൃത്യത DBMS നിയന്ത്രിക്കുന്നുവെങ്കിൽ, നിങ്ങൾ മാസ്റ്റർ ടേബിളിന്റെ പ്രാഥമിക കീകളുടെ മൂല്യങ്ങളിൽ ഉൾപ്പെടാത്ത ഒരു വിദേശ കീയിലേക്ക് ഒരു മൂല്യം നൽകാൻ ശ്രമിക്കുമ്പോൾ, അല്ലെങ്കിൽ നിങ്ങൾ ഇല്ലാതാക്കുകയോ പരിഷ്കരിക്കുകയോ ചെയ്യുമ്പോൾ മാസ്റ്റർ ടേബിളിലെ രേഖകൾ, റഫറൻഷ്യൽ ഇന്റഗ്രിറ്റിയുടെ ലംഘനത്തിലേക്ക് നയിക്കുന്നു, DBMS ഒരു ഡയഗ്നോസ്റ്റിക് സന്ദേശം സൃഷ്ടിക്കും, സാധാരണയായി ഈ പദപ്രയോഗം അടങ്ങിയിരിക്കുന്നു വിദേശ കീ ലംഘനം, അത് പിന്നീട് ഉപയോക്തൃ ആപ്ലിക്കേഷനിലേക്ക് കൈമാറാം.

Microsoft Access 97, Microsoft Access 2000, Microsoft തുടങ്ങിയ ആധുനിക DBMS-കൾ SQL സെർവർഡാറ്റാബേസിൽ വിവരിച്ചിട്ടുണ്ടെങ്കിൽ റഫറൻഷ്യൽ ഇന്റഗ്രിറ്റി നിയമങ്ങൾ പാലിക്കുന്നത് നിരീക്ഷിക്കാൻ 7.0-ന് കഴിയും. ഈ ആവശ്യത്തിനായി, അത്തരം ഡിബിഎംഎസുകൾ വിവിധ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകൾ ഉപയോഗിക്കുന്നു (ഞങ്ങൾ അവ കുറച്ച് കഴിഞ്ഞ് ചർച്ച ചെയ്യും). ഈ സാഹചര്യത്തിൽ, റഫറൻഷ്യൽ ഇന്റഗ്രിറ്റി നിയമങ്ങൾ ലംഘിക്കാനുള്ള എല്ലാ ശ്രമങ്ങളും ഒരേസമയം ഡയഗ്നോസ്റ്റിക് സന്ദേശങ്ങൾ അല്ലെങ്കിൽ ഒഴിവാക്കലുകൾ ഉപയോഗിച്ച് അടിച്ചമർത്തപ്പെടും ( ഡാറ്റാബേസ് ഒഴിവാക്കലുകൾ).

ഡാറ്റ നോർമലൈസേഷന്റെ ആമുഖം

ഭാവിയിലെ ഡാറ്റാബേസ് ഉപയോഗിക്കുന്ന വിവര സംവിധാനത്തിന്റെ ലക്ഷ്യങ്ങൾക്കനുസൃതമായി മെറ്റാഡാറ്റയുടെ നിർവചനമാണ് ഡാറ്റ ഡിസൈൻ പ്രക്രിയ. ഒരു വിഷയ മേഖല എങ്ങനെ വിശകലനം ചെയ്യാമെന്നും എന്റിറ്റി-റിലേഷൻഷിപ്പ് ഡയഗ്രമുകൾ സൃഷ്ടിക്കാമെന്നും ഉള്ള വിശദാംശങ്ങൾ ( ERD - എന്റിറ്റി-റിലേഷൻഷിപ്പ് ഡയഗ്രമുകൾ) കൂടാതെ ഡാറ്റ മോഡലുകൾ ഈ സൈക്കിളിന്റെ പരിധിക്കപ്പുറമാണ്. ഈ പ്രശ്‌നങ്ങളിൽ താൽപ്പര്യമുള്ളവർക്ക്, ഉദാഹരണത്തിന്, K. J. തീയതിയുടെ "ഡാറ്റാബേസ് സിസ്റ്റങ്ങളുടെ ആമുഖം" (ഡയലക്‌റ്റിക്‌സ്, കൈവ്, 1998) എന്ന പുസ്തകം റഫർ ചെയ്യാം.

ഈ ലേഖനത്തിൽ ഞങ്ങൾ ഡാറ്റാ ഡിസൈനിന്റെ അടിസ്ഥാന തത്വങ്ങളിലൊന്ന് മാത്രമേ ചർച്ചചെയ്യൂ - തത്വം നോർമലൈസേഷൻ.

നോർമലൈസേഷൻഡാറ്റയുടെ സ്ഥിരവും കൃത്യവുമായ എഡിറ്റിംഗ് അനുവദിക്കുന്ന ഒരു ഫോമിലേക്ക് പട്ടികകൾ കൊണ്ടുവരുന്നതിനായി, ആവർത്തിച്ചുള്ള ഗ്രൂപ്പുകളും ഡാറ്റ സ്റ്റോറേജിലെ മറ്റ് വൈരുദ്ധ്യങ്ങളും ഇല്ലാതാക്കി ഡാറ്റ പുനഃസംഘടിപ്പിക്കുന്ന പ്രക്രിയയാണ്.

നോർമലൈസേഷൻ സിദ്ധാന്തം സാധാരണ രൂപങ്ങൾ എന്ന ആശയത്തെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്. ഒരു ടേബിൾ ഒരു നിശ്ചിത ആവശ്യകതകൾ നിറവേറ്റുന്നുവെങ്കിൽ, നൽകിയിരിക്കുന്ന സാധാരണ രൂപത്തിലാണെന്ന് പറയപ്പെടുന്നു. സിദ്ധാന്തത്തിൽ അഞ്ച് സാധാരണ രൂപങ്ങളുണ്ട്, എന്നാൽ പ്രായോഗികമായി ആദ്യത്തെ മൂന്ന് മാത്രമാണ് സാധാരണയായി ഉപയോഗിക്കുന്നത്. കൂടാതെ, ആദ്യത്തെ രണ്ട് സാധാരണ ഫോമുകൾ ഡാറ്റാബേസിനെ മൂന്നാമത്തെ സാധാരണ രൂപത്തിലേക്ക് കൊണ്ടുവരുന്നതിനുള്ള ഇന്റർമീഡിയറ്റ് ഘട്ടങ്ങളാണ്.

ആദ്യത്തെ സാധാരണ രൂപം

നോർത്ത് വിൻഡ് ഡാറ്റാബേസിൽ നിന്നുള്ള ഡാറ്റ ഉപയോഗിച്ച് ഒരു ഉദാഹരണം ഉപയോഗിച്ച് നോർമലൈസേഷൻ പ്രക്രിയയെ നമുക്ക് ചിത്രീകരിക്കാം. ഇനിപ്പറയുന്ന പട്ടികയിൽ ഓർഡർ ചെയ്ത എല്ലാ ഉൽപ്പന്നങ്ങളും ഞങ്ങൾ രേഖപ്പെടുത്തുമെന്ന് കരുതുക. ഈ പട്ടികയുടെ ഘടന ഇപ്രകാരമാണ് (ചിത്രം 2).

ഒരു പട്ടിക ആദ്യ സാധാരണ രൂപത്തിന് അനുസൃതമായി പ്രവർത്തിക്കുന്നതിന്, അതിന്റെ എല്ലാ ഫീൽഡ് മൂല്യങ്ങളും ആറ്റോമിക് ആയിരിക്കണം, കൂടാതെ

എല്ലാ റെക്കോർഡുകളും അദ്വിതീയമാണ്. അതിനാൽ, OrderedProducts ടേബിൾ ഉൾപ്പെടെയുള്ള ഏതൊരു റിലേഷണൽ ടേബിളും, നിർവചനം അനുസരിച്ച്, ആദ്യ സാധാരണ രൂപത്തിലാണ്.

എന്നിരുന്നാലും, ഈ പട്ടികയിൽ അനാവശ്യ ഡാറ്റ അടങ്ങിയിരിക്കുന്നു, ഉദാഹരണത്തിന്, ഓർഡർ ചെയ്ത ഓരോ ഉൽപ്പന്നത്തിനും ഒരേ ഉപഭോക്തൃ വിവരങ്ങൾ റെക്കോർഡിൽ ആവർത്തിക്കുന്നു. ഡാറ്റ റിഡൻഡൻസി ഡാറ്റ പരിഷ്‌ക്കരണ അപാകതകൾക്ക് കാരണമാകുന്നു - റെക്കോർഡുകൾ ചേർക്കുമ്പോഴോ മാറ്റുമ്പോഴോ ഇല്ലാതാക്കുമ്പോഴോ സംഭവിക്കുന്ന പ്രശ്‌നങ്ങൾ. ഉദാഹരണത്തിന്, OrderedProducts പട്ടികയിൽ ഡാറ്റ എഡിറ്റുചെയ്യുമ്പോൾ, ഇനിപ്പറയുന്ന പ്രശ്നങ്ങൾ ഉണ്ടാകാം:

  • ഉപഭോക്താവ് കുറഞ്ഞത് ഒരു ഉൽപ്പന്നമെങ്കിലും ഓർഡർ ചെയ്‌താൽ മാത്രമേ ഒരു നിർദ്ദിഷ്ട ഉപഭോക്താവിന്റെ വിലാസം ഡാറ്റാബേസിൽ അടങ്ങിയിരിക്കാൻ കഴിയൂ.
  • ഓർഡർ ചെയ്ത ഉൽപ്പന്നത്തിന്റെ ഒരു റെക്കോർഡ് നിങ്ങൾ ഇല്ലാതാക്കുമ്പോൾ, ഓർഡറിനെ കുറിച്ചുള്ള വിവരങ്ങളും അത് നൽകിയ ഉപഭോക്താവിനെ കുറിച്ചുള്ള വിവരങ്ങളും ഒരേസമയം ഇല്ലാതാക്കപ്പെടും.
  • ദൈവം വിലക്കിയാൽ, ഉപഭോക്താവ് തന്റെ വിലാസം മാറ്റുകയാണെങ്കിൽ, അവൻ ഓർഡർ ചെയ്ത ഉൽപ്പന്നങ്ങളെക്കുറിച്ചുള്ള എല്ലാ രേഖകളും അപ്‌ഡേറ്റ് ചെയ്യേണ്ടതുണ്ട്.

ഡാറ്റാബേസ് വിന്യസിക്കുന്നതിലൂടെ ഈ പ്രശ്നങ്ങളിൽ ചിലത് പരിഹരിക്കാനാകും രണ്ടാമത്തെ സാധാരണ രൂപം.

രണ്ടാമത്തെ സാധാരണ രൂപം

ഒരു റിലേഷണൽ ടേബിൾ ഉള്ളതായി പറയപ്പെടുന്നു രണ്ടാമത്തെ സാധാരണ രൂപം, അത് ആദ്യ സാധാരണ രൂപത്തിലും അതിന്റെ നോൺ-കീ ഫീൽഡുകളിലുമാണെങ്കിൽ പൂർണ്ണമായും ആശ്രയിക്കുന്നുമുഴുവൻ പ്രാഥമിക കീയിൽ നിന്നും.

OrderedProducts പട്ടിക ആദ്യ സാധാരണ രൂപത്തിലാണ്, എന്നാൽ രണ്ടാമത്തെ സാധാരണ രൂപമല്ല, കാരണം CustomerID, Address, OrderDate ഫീൽഡുകൾ എന്നിവ സംയോജിത പ്രാഥമിക കീയുടെ (OrderID, ProductID) ഭാഗമായ OrderID ഫീൽഡിനെ മാത്രം ആശ്രയിച്ചിരിക്കുന്നു.

ആദ്യത്തെ സാധാരണ രൂപത്തിൽ നിന്ന് രണ്ടാമത്തെ സാധാരണ ഫോമിലേക്ക് മാറുന്നതിന്, നിങ്ങൾ ഈ ഘട്ടങ്ങൾ പാലിക്കേണ്ടതുണ്ട്:

  1. പ്രൈമറി കീ ഏതൊക്കെ ഭാഗങ്ങളായി വിഭജിക്കാമെന്ന് നിർണ്ണയിക്കുക, അതിലൂടെ ചില നോൺ-കീ ഫീൽഡുകൾ ഈ ഭാഗങ്ങളിൽ ഒന്നിനെ ആശ്രയിച്ചിരിക്കുന്നു ( ഈ ഭാഗങ്ങൾ ഒരു കോളം ഉൾക്കൊള്ളണമെന്നില്ല!).
  2. സൃഷ്ടിക്കാൻ പുതിയ മേശകീയുടെ ഓരോ ഭാഗത്തിനും അതിനെ ആശ്രയിക്കുന്ന ഫീൽഡുകളുടെ ഗ്രൂപ്പിനും വേണ്ടി അവയെ ഈ പട്ടികയിലേക്ക് നീക്കുക. മുൻ പ്രാഥമിക കീയുടെ ഒരു ഭാഗം പുതിയ പട്ടികയുടെ പ്രാഥമിക കീ ആയി മാറും.
  3. വിദേശ കീകളായി മാറുന്നവ ഒഴികെ മറ്റ് പട്ടികകളിലേക്ക് നീക്കിയിരിക്കുന്ന സോഴ്സ് ടേബിളിൽ നിന്ന് ഫീൽഡുകൾ നീക്കം ചെയ്യുക.

ഉദാഹരണത്തിന്, OrderedProducts പട്ടിക രണ്ടാമത്തെ സാധാരണ രൂപത്തിലേക്ക് കൊണ്ടുവരാൻ, നിങ്ങൾ CustomerID, Address, OrderDate എന്നീ ഫീൽഡുകൾ ഒരു പുതിയ പട്ടികയിലേക്ക് മാറ്റേണ്ടതുണ്ട് (നമുക്ക് ഇതിനെ OrdersInfo എന്ന് വിളിക്കാം), OrderID ഫീൽഡ് പുതിയ പട്ടികയുടെ പ്രാഥമിക കീ ആയി മാറും (ചിത്രം . 3).

തൽഫലമായി, പുതിയ പട്ടികകൾ ഇതുപോലെ കാണപ്പെടും. എന്നിരുന്നാലും, രണ്ടാമത്തെ സാധാരണ രൂപത്തിലുള്ളതും എന്നാൽ മൂന്നാമത്തെ സാധാരണ രൂപമല്ലാത്തതുമായ പട്ടികകളിൽ ഇപ്പോഴും ഡാറ്റ പരിഷ്‌ക്കരണ അപാകതകൾ അടങ്ങിയിരിക്കുന്നു. ഉദാഹരണത്തിന്, OrdersInfo ടേബിളിനായി അവ ഇതാ:

  • ഉപഭോക്താവ് കുറഞ്ഞത് ഒരു ഉൽപ്പന്നമെങ്കിലും ഓർഡർ ചെയ്‌തിരിക്കുമ്പോൾ മാത്രമേ ഒരു നിർദ്ദിഷ്ട ഉപഭോക്താവിന്റെ വിലാസം ഡാറ്റാബേസിൽ ഇപ്പോഴും അടങ്ങിയിരിക്കാൻ കഴിയൂ.
  • OrdersInfo ടേബിളിലെ ഒരു ഓർഡർ എൻട്രി ഇല്ലാതാക്കുന്നത് ഉപഭോക്താവിനുള്ള എൻട്രി ഇല്ലാതാക്കുന്നതിന് കാരണമാകും.
  • ഉപഭോക്താവ് വിലാസം മാറ്റിയിട്ടുണ്ടെങ്കിൽ, നിരവധി രേഖകൾ അപ്‌ഡേറ്റ് ചെയ്യേണ്ടിവരും (എന്നിരുന്നാലും, ഒരു ചട്ടം പോലെ, മുമ്പത്തെ കേസിനേക്കാൾ അവയിൽ കുറവാണ്).

ലേക്ക് നീങ്ങുന്നതിലൂടെ ഈ അപാകതകൾ ഇല്ലാതാക്കാൻ കഴിയും മൂന്നാമത്തെ സാധാരണ രൂപം.

മൂന്നാമത്തെ സാധാരണ രൂപം

ഒരു റിലേഷണൽ ടേബിൾ ഉള്ളതായി പറയപ്പെടുന്നു മൂന്നാമത്തെ സാധാരണ രൂപം, അത് രണ്ടാമത്തെ സാധാരണ രൂപത്തിലാണെങ്കിൽ അതിന്റെ എല്ലാ നോൺ-കീ ഫീൽഡുകളും പ്രാഥമിക കീയെ മാത്രം ആശ്രയിച്ചിരിക്കുന്നു.

OrderDetails പട്ടിക ഇതിനകം മൂന്നാമത്തെ സാധാരണ രൂപത്തിലാണ്. നോൺ-കീ ക്വാണ്ടിറ്റി ഫീൽഡ് പൂർണ്ണമായും സംയോജിത പ്രൈമറി കീയെ (OrderID, ProductID) ആശ്രയിച്ചിരിക്കുന്നു. എന്നിരുന്നാലും, OrdersInfo പട്ടിക മൂന്നാമത്തെ സാധാരണ രൂപത്തിലല്ല, കാരണം അതിൽ നോൺ-കീ ഫീൽഡുകൾ തമ്മിലുള്ള ആശ്രിതത്വം അടങ്ങിയിരിക്കുന്നു (ഇതിനെ വിളിക്കുന്നു ട്രാൻസിറ്റീവ് ആശ്രിതത്വം- സംക്രമണ ആശ്രിതത്വം) - വിലാസ ഫീൽഡ് കസ്റ്റമർ ഐഡി ഫീൽഡിനെ ആശ്രയിച്ചിരിക്കുന്നു.

രണ്ടാമത്തെ സാധാരണ ഫോമിൽ നിന്ന് മൂന്നാമത്തെ സാധാരണ ഫോമിലേക്ക് പോകാൻ, നിങ്ങൾ ഈ ഘട്ടങ്ങൾ പാലിക്കേണ്ടതുണ്ട്:

  • മറ്റ് ഫീൽഡുകൾ ആശ്രയിക്കുന്ന എല്ലാ ഫീൽഡുകളും (അല്ലെങ്കിൽ ഫീൽഡുകളുടെ ഗ്രൂപ്പുകൾ) നിർവ്വചിക്കുക.
  • അത്തരം ഓരോ ഫീൽഡിനും (അല്ലെങ്കിൽ ഫീൽഡുകളുടെ ഗ്രൂപ്പിനും) അതിനെ ആശ്രയിക്കുന്ന ഫീൽഡുകളുടെ ഗ്രൂപ്പിനും ഒരു പുതിയ പട്ടിക സൃഷ്‌ടിച്ച് അവയെ ഈ പട്ടികയിലേക്ക് നീക്കുക. മറ്റെല്ലാ നീക്കിയ ഫീൽഡുകളും ആശ്രയിക്കുന്ന ഫീൽഡ് (അല്ലെങ്കിൽ ഫീൽഡുകളുടെ ഗ്രൂപ്പ്) പുതിയ പട്ടികയുടെ പ്രാഥമിക കീ ആയി മാറും.
  • ഒറിജിനൽ ടേബിളിൽ നിന്ന് നീക്കിയ ഫീൽഡുകൾ നീക്കം ചെയ്യുക, വിദേശ കീകളാകുന്നവ മാത്രം അവശേഷിപ്പിക്കുക.

OrdersInfo പട്ടിക മൂന്നാം സാധാരണ ഫോമിലേക്ക് കൊണ്ടുവരാൻ, ഒരു പുതിയ ഉപഭോക്തൃ പട്ടിക സൃഷ്‌ടിച്ച് അതിലേക്ക് കസ്റ്റമർ ഐഡി, വിലാസ ഫീൽഡുകൾ നീക്കുക. ഞങ്ങൾ ഉറവിട പട്ടികയിൽ നിന്ന് വിലാസ ഫീൽഡ് നീക്കംചെയ്യും, കൂടാതെ കസ്റ്റമർ ഐഡി ഫീൽഡ് ഉപേക്ഷിക്കും - ഇപ്പോൾ ഇത് ഒരു വിദേശ കീയാണ് (ചിത്രം 4).

അതിനാൽ, യഥാർത്ഥ പട്ടിക മൂന്നാം സാധാരണ രൂപത്തിലേക്ക് കൊണ്ടുവന്നതിന് ശേഷം, മൂന്ന് ടേബിളുകൾ ഉണ്ടായിരുന്നു - ഉപഭോക്താക്കൾ, ഓർഡറുകൾ, ഓർഡർ വിശദാംശങ്ങൾ.

നോർമലൈസേഷന്റെ പ്രയോജനങ്ങൾ

നോർമലൈസേഷൻ ഡാറ്റ റിഡൻഡൻസി ഇല്ലാതാക്കുന്നു, ഇത് സംഭരിച്ച ഡാറ്റയുടെ അളവ് കുറയ്ക്കാനും മുകളിൽ വിവരിച്ച ഡാറ്റാ മാറ്റത്തിലെ അപാകതകളിൽ നിന്ന് മുക്തി നേടാനും നിങ്ങളെ അനുവദിക്കുന്നു. ഉദാഹരണത്തിന്, മുകളിൽ ചർച്ച ചെയ്ത ഡാറ്റാബേസ് മൂന്നാമത്തെ സാധാരണ രൂപത്തിലേക്ക് കുറച്ചതിനുശേഷം, ഇനിപ്പറയുന്ന മെച്ചപ്പെടുത്തലുകൾ പ്രകടമാണ്:

  • ഇതുവരെ ഓർഡർ നൽകിയിട്ടില്ലാത്ത ഒരു ഉപഭോക്താവ് മാത്രമാണെങ്കിൽപ്പോലും, ഉപഭോക്തൃ വിലാസ വിവരങ്ങൾ ഡാറ്റാബേസിൽ സംഭരിക്കാൻ കഴിയും.
  • കസ്റ്റമർ, ഓർഡർ വിവരങ്ങൾ ഇല്ലാതാക്കുമെന്ന ഭയമില്ലാതെ ഓർഡർ ചെയ്ത ഉൽപ്പന്നത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ നിങ്ങൾക്ക് ഇല്ലാതാക്കാം.

ഒരു ഉപഭോക്താവിന്റെ വിലാസമോ ഓർഡർ രജിസ്ട്രേഷൻ തീയതിയോ മാറ്റുന്നതിന് ഇപ്പോൾ ഒരു റെക്കോർഡ് മാത്രം മാറ്റേണ്ടതുണ്ട്.

ഡാറ്റാബേസുകൾ എങ്ങനെയാണ് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്

സാധാരണഗതിയിൽ, ആധുനിക DBMS-കളിൽ പട്ടികകളും കീകളും സൃഷ്ടിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന ടൂളുകൾ അടങ്ങിയിരിക്കുന്നു. പട്ടികകൾ, കീകൾ, ബന്ധങ്ങൾ എന്നിവ സൃഷ്ടിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന ഡിബിഎംഎസിൽ നിന്ന് (ഒപ്പം നിരവധി വ്യത്യസ്ത ഡിബിഎംഎസുകൾക്ക് ഒരേസമയം സേവനം നൽകുകയും ചെയ്യുന്നു) പ്രത്യേകമായി വിതരണം ചെയ്യുന്ന യൂട്ടിലിറ്റികളും ഉണ്ട്.

ഒരു ഡാറ്റാബേസിൽ പട്ടികകളും കീകളും ബന്ധങ്ങളും സൃഷ്ടിക്കുന്നതിനുള്ള മറ്റൊരു മാർഗ്ഗം ഡിഡിഎൽ സ്ക്രിപ്റ്റ് (ഡിഡിഎൽ - ഡാറ്റ ഡെഫനിഷൻ ലാംഗ്വേജ്; ഞങ്ങൾ അതിനെക്കുറിച്ച് കുറച്ച് കഴിഞ്ഞ് സംസാരിക്കാം) എഴുതുക എന്നതാണ്.

അവസാനമായി, കൂടുതൽ കൂടുതൽ ജനപ്രിയമായിക്കൊണ്ടിരിക്കുന്ന മറ്റൊരു മാർഗമുണ്ട് - CASE ടൂളുകൾ (CASE എന്നത് കമ്പ്യൂട്ടർ-എയ്ഡഡ് സിസ്റ്റം എഞ്ചിനീയറിംഗ്) എന്ന പ്രത്യേക ഉപകരണങ്ങളുടെ ഉപയോഗം. നിരവധി തരം CASE ടൂളുകൾ ഉണ്ട്, എന്നാൽ ഡാറ്റാബേസുകൾ സൃഷ്ടിക്കുന്നതിന് ഏറ്റവും സാധാരണയായി ഉപയോഗിക്കുന്ന ഉപകരണങ്ങൾ എന്റിറ്റി-റിലേഷൻഷിപ്പ് ഡയഗ്രമുകളാണ് (E/R ഡയഗ്രമുകൾ). ഈ ഉപകരണങ്ങളുടെ സഹായത്തോടെ, വിളിക്കപ്പെടുന്നവ ലോജിക്കൽഅതിൽ രജിസ്റ്റർ ചെയ്യേണ്ട വസ്തുതകളും ഒബ്‌ജക്റ്റുകളും വിവരിക്കുന്ന ഒരു ഡാറ്റാ മോഡൽ (അത്തരം മോഡലുകളിൽ, ടേബിൾ പ്രോട്ടോടൈപ്പുകളെ എന്റിറ്റികൾ എന്നും ഫീൽഡുകളെ അവയുടെ ആട്രിബ്യൂട്ടുകൾ എന്നും വിളിക്കുന്നു) എന്റിറ്റികൾക്കിടയിൽ ബന്ധം സ്ഥാപിച്ച്, ആട്രിബ്യൂട്ടുകൾ നിർവചിച്ച് നോർമലൈസേഷൻ നടത്തിയ ശേഷം, വിളിക്കപ്പെടുന്ന ഒന്ന് ശാരീരികമായഎല്ലാ ടേബിളുകളും ഫീൽഡുകളും മറ്റ് ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളും നിർവചിച്ചിരിക്കുന്ന ഒരു നിർദ്ദിഷ്ട DBMS-നുള്ള ഒരു ഡാറ്റ മോഡൽ. നിങ്ങൾക്ക് അത് സൃഷ്ടിക്കാൻ ഡാറ്റാബേസ് അല്ലെങ്കിൽ ഒരു DDL സ്ക്രിപ്റ്റ് സൃഷ്ടിക്കാൻ കഴിയും.

നിലവിൽ ഏറ്റവും പ്രചാരമുള്ള CASE ടൂളുകളുടെ ലിസ്റ്റ്.

പട്ടികകളും ഫീൽഡുകളും

എല്ലാ റിലേഷണൽ DBMS-കളും പട്ടികകളെ പിന്തുണയ്ക്കുന്നു, അവയുടെ ഫീൽഡുകൾക്ക് ഡാറ്റ സംഭരിക്കാനാകും വത്യസ്ത ഇനങ്ങൾ. ഏറ്റവും സാധാരണമായ ഡാറ്റ തരങ്ങൾ.

സൂചികകൾ

കുറച്ചുകൂടി മുകളിൽ ഞങ്ങൾ പ്രാഥമിക, വിദേശ കീകളുടെ പങ്കിനെക്കുറിച്ച് സംസാരിച്ചു. മിക്ക റിലേഷണൽ ഡിബിഎംഎസുകളിലും, സൂചികകൾ എന്ന് വിളിക്കപ്പെടുന്ന ഒബ്‌ജക്‌റ്റുകൾ ഉപയോഗിച്ചാണ് കീകൾ നടപ്പിലാക്കുന്നത്, ഏത് ക്രമത്തിലാണ് അവ നൽകേണ്ടതെന്ന് സൂചിപ്പിക്കുന്ന റെക്കോർഡ് നമ്പറുകളുടെ ഒരു പട്ടികയായി ഇത് നിർവചിക്കാം.

റിലേഷണൽ ടേബിളുകളിലെ റെക്കോർഡുകൾ ക്രമരഹിതമാണെന്ന് ഞങ്ങൾക്കറിയാം. എന്നിരുന്നാലും, ഒരു പ്രത്യേക ഘട്ടത്തിലെ ഏത് റെക്കോർഡിനും ഡാറ്റാബേസ് ഫയലിൽ വളരെ നിർദ്ദിഷ്ട ഫിസിക്കൽ ലൊക്കേഷൻ ഉണ്ട്, എന്നിരുന്നാലും ഇത് ഡാറ്റ എഡിറ്റ് ചെയ്യുന്ന പ്രക്രിയയിലോ DBMS-ന്റെ തന്നെ "ആന്തരിക പ്രവർത്തനങ്ങളുടെ" ഫലമായി മാറിയേക്കാം.

ഏതെങ്കിലുമൊരു ഘട്ടത്തിൽ ഉപഭോക്തൃ പട്ടികയിലെ രേഖകൾ ഈ ക്രമത്തിൽ സംഭരിച്ചുവെന്ന് കരുതുക.

കസ്റ്റമർ ഐഡി ഫീൽഡ് അനുസരിച്ച് ഈ ഡാറ്റ ഓർഡർ ചെയ്യണമെന്ന് നമുക്ക് പറയാം. സാങ്കേതിക വിശദാംശങ്ങൾ ഒഴിവാക്കിക്കൊണ്ട്, ഈ ഫീൽഡിലെ സൂചിക, അവ പ്രദർശിപ്പിക്കേണ്ട റെക്കോർഡ് നമ്പറുകളുടെ ക്രമമാണ്, അതായത്:

1,6,4,2,5,3

വിലാസ ഫീൽഡ് അനുസരിച്ച് നമുക്ക് റെക്കോർഡുകൾ അടുക്കണമെങ്കിൽ, റെക്കോർഡ് നമ്പറുകളുടെ ക്രമം വ്യത്യസ്തമായിരിക്കും:

5,4,1,6,2,3

പട്ടികയുടെ വ്യത്യസ്‌തമായി അടുക്കിയ പതിപ്പുകൾ സംഭരിക്കുന്നതിന് ഇൻഡെക്‌സുകൾ സംഭരിക്കുന്നതിന് വളരെ കുറച്ച് സ്ഥലം ആവശ്യമാണ്.

കസ്റ്റമർ ഐഡി "BO" എന്ന അക്ഷരങ്ങളിൽ ആരംഭിക്കുന്ന ഉപഭോക്താക്കളെക്കുറിച്ചുള്ള ഡാറ്റ കണ്ടെത്തണമെങ്കിൽ, ഈ റെക്കോർഡുകളുടെ സ്ഥാനം കണ്ടെത്താൻ നമുക്ക് സൂചിക ഉപയോഗിക്കാം (ഇതിൽ ഈ സാഹചര്യത്തിൽ 2 ഉം 5 ഉം (വ്യക്തമായും, സൂചികയിൽ ഈ റെക്കോർഡുകളുടെ സംഖ്യകൾ തുടർച്ചയായാണ്), തുടർന്ന് മുഴുവൻ പട്ടികയും സ്കാൻ ചെയ്യുന്നതിനുപകരം രണ്ടാമത്തെയും അഞ്ചാമത്തെയും റെക്കോർഡുകൾ കൃത്യമായി വായിക്കുക. അങ്ങനെ, സൂചികകളുടെ ഉപയോഗം ഡാറ്റ വീണ്ടെടുക്കൽ സമയം കുറയ്ക്കുന്നു.

ഉപയോക്താക്കൾ ഡാറ്റ എഡിറ്റുചെയ്യുന്ന പ്രക്രിയയിലും അതുപോലെ തന്നെ ഡിബിഎംഎസ് തന്നെ നടത്തുന്ന ഡാറ്റാബേസ് ഫയലുകളുമായുള്ള കൃത്രിമത്വത്തിന്റെ ഫലമായും റെക്കോർഡുകളുടെ ഫിസിക്കൽ ലൊക്കേഷൻ മാറുമെന്ന് ഞങ്ങൾ ഇതിനകം പറഞ്ഞിട്ടുണ്ട് (ഉദാഹരണത്തിന്, ഡാറ്റ കംപ്രഷൻ, മാലിന്യ ശേഖരണം മുതലായവ. ). സൂചികയിൽ അനുബന്ധ മാറ്റങ്ങൾ സംഭവിക്കുകയാണെങ്കിൽ, അതിനെ വിളിക്കുന്നു പിന്തുണച്ചുമിക്ക ആധുനിക DBMS-കളിലും ഇത്തരം സൂചികകൾ ഉപയോഗിക്കുന്നു. അത്തരം സൂചികകൾ നടപ്പിലാക്കുന്നത് ഒരു പട്ടികയിലെ ഡാറ്റയിലെ ഏത് മാറ്റത്തിനും അതുമായി ബന്ധപ്പെട്ട സൂചികകളിൽ മാറ്റം വരുത്തുന്നു എന്ന വസ്തുതയിലേക്ക് നയിക്കുന്നു, ഇത് അത്തരം പ്രവർത്തനങ്ങൾ നടത്താൻ DBMS-ന് ആവശ്യമായ സമയം വർദ്ധിപ്പിക്കുന്നു. അതിനാൽ, അത്തരം ഡിബിഎംഎസുകൾ ഉപയോഗിക്കുമ്പോൾ, നിങ്ങൾ ശരിക്കും ആവശ്യമുള്ള സൂചികകൾ മാത്രമേ സൃഷ്ടിക്കാവൂ, കൂടാതെ ഏത് ചോദ്യങ്ങളാണ് ഏറ്റവും കൂടുതൽ അഭിമുഖീകരിക്കേണ്ടതെന്ന് നയിക്കുകയും വേണം.

നിയന്ത്രണങ്ങളും നിയമങ്ങളും

മിക്ക ആധുനിക സെർവർ ഡിബിഎംഎസുകളിലും പ്രത്യേക ഒബ്‌ജക്റ്റുകൾ അടങ്ങിയിരിക്കുന്നു നിയന്ത്രണങ്ങൾ(നിയന്ത്രണങ്ങൾ), അല്ലെങ്കിൽ നിയമങ്ങൾ(നിയമങ്ങൾ). സാധ്യമായ ഫീൽഡ് മൂല്യങ്ങളിൽ ഏർപ്പെടുത്തിയിരിക്കുന്ന നിയന്ത്രണങ്ങളെക്കുറിച്ചുള്ള വിവരങ്ങൾ ഈ ഒബ്‌ജക്റ്റുകളിൽ അടങ്ങിയിരിക്കുന്നു. ഉദാഹരണത്തിന്, അത്തരമൊരു വസ്തു ഉപയോഗിച്ച് നിങ്ങൾക്ക് പരമാവധി അല്ലെങ്കിൽ കുറഞ്ഞ മൂല്യം സജ്ജമാക്കാൻ കഴിയും ഈ വയലിന്റെ, അതിനു ശേഷം ഈ വ്യവസ്ഥയെ തൃപ്തിപ്പെടുത്താത്ത ഒരു റെക്കോർഡ് ഡാറ്റാബേസിൽ സംരക്ഷിക്കാൻ DBMS നിങ്ങളെ അനുവദിക്കില്ല.

ഡാറ്റാ മാറ്റങ്ങളുടെ ശ്രേണി സജ്ജീകരിക്കുന്നതുമായി ബന്ധപ്പെട്ട നിയന്ത്രണങ്ങൾക്ക് പുറമേ, റഫറൻസ് പരിമിതികളും ഉണ്ട് (ഉദാഹരണത്തിന്, കസ്റ്റമർ ഐഡി ഫീൽഡിന്റെ മൂല്യം (വിദേശം കീ) ഓർഡറുകൾ പട്ടികയിൽ ഉപഭോക്തൃ പട്ടികയുടെ കസ്റ്റമർ ഐഡി ഫീൽഡിന്റെ നിലവിലുള്ള മൂല്യങ്ങളിൽ ഒന്നിന് തുല്യമായിരിക്കണം.

എല്ലാ DBMS-കളും നിയന്ത്രണങ്ങളെ പിന്തുണയ്ക്കുന്നില്ല എന്നത് ശ്രദ്ധിക്കുക. ഈ സാഹചര്യത്തിൽ, സമാനമായ റൂൾ ഫംഗ്‌ഷണാലിറ്റി നടപ്പിലാക്കുന്നതിന് നിങ്ങൾക്ക് മറ്റ് ഒബ്‌ജക്റ്റുകൾ (ഉദാഹരണത്തിന്, ട്രിഗറുകൾ) ഉപയോഗിക്കാം, അല്ലെങ്കിൽ ഈ ഡാറ്റാബേസിൽ പ്രവർത്തിക്കുന്ന ക്ലയന്റ് ആപ്ലിക്കേഷനുകളിൽ ഈ നിയമങ്ങൾ സംഭരിക്കാം.

പ്രാതിനിധ്യം

മിക്കവാറും എല്ലാ റിലേഷണൽ DBMS-കളും കാഴ്‌ചകളെ പിന്തുണയ്ക്കുന്നു. ഈ ഒബ്ജക്റ്റ് ഒന്നോ അതിലധികമോ യഥാർത്ഥ പട്ടികകളിൽ നിന്നുള്ള ഡാറ്റ നൽകുന്ന ഒരു വെർച്വൽ പട്ടികയാണ്. വാസ്തവത്തിൽ, അതിൽ ഒരു ഡാറ്റയും അടങ്ങിയിട്ടില്ല, പക്ഷേ അവയുടെ ഉറവിടം വിവരിക്കുക മാത്രമാണ് ചെയ്യുന്നത്.

പലപ്പോഴും ഇത്തരം ഒബ്‌ജക്റ്റുകൾ ഡാറ്റാബേസുകളിൽ സങ്കീർണ്ണമായ അന്വേഷണങ്ങൾ സംഭരിക്കുന്നതിന് സൃഷ്ടിക്കപ്പെടുന്നു. വാസ്തവത്തിൽ, കാഴ്ച ഒരു സംഭരിച്ച അന്വേഷണമാണ്.

മിക്ക ആധുനിക ഡിബിഎംഎസുകളിലും കാഴ്ചകൾ സൃഷ്ടിക്കുന്നത് സ്‌ക്രീനിൽ ആവശ്യമായ പട്ടികകൾ പ്രദർശിപ്പിക്കാനും അവയ്‌ക്കിടയിൽ കണക്ഷനുകൾ സ്ഥാപിക്കാനും പ്രദർശിപ്പിച്ച ഫീൽഡുകൾ തിരഞ്ഞെടുക്കാനും റെക്കോർഡുകളിൽ നിയന്ത്രണങ്ങൾ അവതരിപ്പിക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന പ്രത്യേക വിഷ്വൽ ടൂളുകളാണ് നടത്തുന്നത്.

മിക്കപ്പോഴും ഈ ഒബ്‌ജക്റ്റുകൾ ഡാറ്റ സുരക്ഷ നൽകുന്നതിന് ഉപയോഗിക്കുന്നു, ഉദാഹരണത്തിന്, പട്ടികകളിലേക്ക് നേരിട്ട് ആക്‌സസ് നൽകാതെ അവയിലൂടെ ഡാറ്റ കാണാൻ അനുവദിക്കുന്നതിലൂടെ. കൂടാതെ, ചില വ്യൂ ഒബ്‌ജക്റ്റുകൾക്ക് വ്യത്യസ്ത ഡാറ്റയെ ആശ്രയിച്ച് നൽകാനാകും, ഉദാഹരണത്തിന്, ഉപയോക്തൃനാമത്തിൽ, ഇത് അവനെ താൽപ്പര്യമുള്ള ഡാറ്റ മാത്രം സ്വീകരിക്കാൻ അനുവദിക്കുന്നു.

ട്രിഗറുകളും സംഭരിച്ച നടപടിക്രമങ്ങളും

മിക്ക ആധുനിക സെർവർ ഡിബിഎംഎസുകളിലും പിന്തുണയ്ക്കുന്ന ട്രിഗറുകളും സംഭരിച്ച നടപടിക്രമങ്ങളും എക്സിക്യൂട്ടബിൾ കോഡ് സംഭരിക്കാൻ ഉപയോഗിക്കുന്നു.

ഒരു ഡാറ്റാബേസ് സെർവർ നടപ്പിലാക്കുന്ന ഒരു പ്രത്യേക തരം നടപടിക്രമമാണ് സംഭരിച്ച നടപടിക്രമം. സംഭരിച്ച നടപടിക്രമങ്ങൾ നിർദ്ദിഷ്ട DBMS-നെ ആശ്രയിക്കുന്ന ഒരു നടപടിക്രമ ഭാഷയിലാണ് എഴുതിയിരിക്കുന്നത്. അവർക്ക് പരസ്പരം വിളിക്കാനും പട്ടികകളിലെ ഡാറ്റ വായിക്കാനും പരിഷ്ക്കരിക്കാനും കഴിയും, കൂടാതെ ഡാറ്റാബേസ് പ്രവർത്തിക്കുന്ന ഒരു ക്ലയന്റ് ആപ്ലിക്കേഷനിൽ നിന്ന് വിളിക്കാനും കഴിയും.

പതിവായി സംഭവിക്കുന്ന ജോലികൾ നിർവഹിക്കുന്നതിന് സംഭരിച്ച നടപടിക്രമങ്ങൾ സാധാരണയായി ഉപയോഗിക്കുന്നു (ഉദാഹരണത്തിന്, ഒരു ബാലൻസ് ഷീറ്റ് യോജിപ്പിക്കൽ). അവയ്‌ക്ക് ആർഗ്യുമെന്റുകൾ, റിട്ടേൺ മൂല്യങ്ങൾ, പിശക് കോഡുകൾ, ചിലപ്പോൾ വരികളുടെയും നിരകളുടെയും സെറ്റുകൾ എന്നിവ ഉണ്ടായിരിക്കാം (ഈ ഡാറ്റാ സെറ്റിനെ ചിലപ്പോൾ ഡാറ്റാസെറ്റ് എന്ന് വിളിക്കുന്നു). എന്നിരുന്നാലും, എല്ലാ ഡിബിഎംഎസുകളും രണ്ടാമത്തെ തരത്തിലുള്ള നടപടിക്രമങ്ങളെ പിന്തുണയ്ക്കുന്നില്ല.

ട്രിഗറുകളിൽ എക്സിക്യൂട്ടബിൾ കോഡും അടങ്ങിയിരിക്കുന്നു, എന്നാൽ നടപടിക്രമങ്ങളിൽ നിന്ന് വ്യത്യസ്തമായി, അവ ഒരു ക്ലയന്റ് ആപ്ലിക്കേഷനിൽ നിന്നോ സംഭരിച്ച നടപടിക്രമത്തിൽ നിന്നോ വിളിക്കാൻ കഴിയില്ല. ഒരു ട്രിഗർ എല്ലായ്‌പ്പോഴും ഒരു നിർദ്ദിഷ്‌ട പട്ടികയുമായി ബന്ധപ്പെട്ടിരിക്കുന്നു, ആ പട്ടിക എഡിറ്റുചെയ്യുമ്പോൾ അത് ബന്ധപ്പെട്ടിരിക്കുന്ന ഇവന്റ് (ഉദാഹരണത്തിന്, ഒരു റെക്കോർഡ് ചേർക്കൽ, ഇല്ലാതാക്കൽ അല്ലെങ്കിൽ അപ്‌ഡേറ്റ് ചെയ്യൽ) സംഭവിക്കുമ്പോൾ അത് എക്‌സിക്യൂട്ട് ചെയ്യപ്പെടും.

ട്രിഗറുകളെ പിന്തുണയ്ക്കുന്ന മിക്ക ഡിബിഎംഎസുകളിലും, ഒരേ ഇവന്റ് സംഭവിക്കുമ്പോൾ എക്സിക്യൂട്ട് ചെയ്യുന്ന ഒന്നിലധികം ട്രിഗറുകൾ നിങ്ങൾക്ക് നിർവചിക്കാം, കൂടാതെ നിർവ്വഹണ ക്രമം നിർണ്ണയിക്കുകയും ചെയ്യാം.

പ്രാഥമിക കീകൾ സൃഷ്ടിക്കുന്നതിനുള്ള വസ്തുക്കൾ

മിക്കപ്പോഴും, പ്രാഥമിക കീകൾ ഡിബിഎംഎസ് തന്നെ സൃഷ്ടിക്കുന്നു. അവ സൃഷ്ടിക്കുന്നതിനേക്കാൾ ഇത് കൂടുതൽ സൗകര്യപ്രദമാണ് ക്ലയന്റ് ആപ്ലിക്കേഷൻ, മൾട്ടി-യൂസർ വർക്ക് സമയത്ത്, ഒരു ഡിബിഎംഎസ് ഉപയോഗിച്ച് കീകൾ സൃഷ്ടിക്കുന്നു ഒരേ ഒരു വഴിഡ്യൂപ്ലിക്കേറ്റ് കീകൾ ഒഴിവാക്കി അവയുടെ തുടർച്ചയായ മൂല്യങ്ങൾ നേടുക.

കീകൾ സൃഷ്ടിക്കാൻ വ്യത്യസ്ത DBMS-കൾ വ്യത്യസ്ത വസ്തുക്കൾ ഉപയോഗിക്കുന്നു. ഈ ഒബ്‌ജക്റ്റുകളിൽ ചിലത് ഒരു പൂർണ്ണസംഖ്യയും അടുത്ത മൂല്യം സൃഷ്‌ടിക്കുന്ന നിയമങ്ങളും സംഭരിക്കുന്നു, സാധാരണയായി ട്രിഗറുകൾ ഉപയോഗിച്ചാണ് ഇത് ചെയ്യുന്നത്. അത്തരം ഒബ്‌ജക്റ്റുകൾ പിന്തുണയ്ക്കുന്നു, ഉദാഹരണത്തിന്, ഒറാക്കിളിലും (അവയെ സീക്വൻസുകൾ എന്ന് വിളിക്കുന്നു) ഐബി ഡാറ്റാബേസിലും (അങ്ങനെയെങ്കിൽ അവയെ ജനറേറ്ററുകൾ എന്ന് വിളിക്കുന്നു).

ചില DBMS-കൾ പ്രാഥമിക കീകൾക്കായി പ്രത്യേക ഫീൽഡ് തരങ്ങളെ പിന്തുണയ്ക്കുന്നു. റെക്കോർഡുകൾ ചേർക്കുമ്പോൾ, അത്തരം ഫീൽഡുകൾ തുടർച്ചയായ മൂല്യങ്ങൾ (സാധാരണയായി പൂർണ്ണസംഖ്യകൾ) ഉപയോഗിച്ച് സ്വയമേവ പൂരിപ്പിക്കുന്നു. മൈക്രോസോഫ്റ്റ് ആക്‌സസ്, മൈക്രോസോഫ്റ്റ് എസ്‌ക്യുഎൽ സെർവർ എന്നിവയുടെ കാര്യത്തിൽ, അത്തരം ഫീൽഡുകളെ ഐഡന്റിറ്റി ഫീൽഡുകൾ എന്നും കോറൽ പാരഡോക്‌സിന്റെ കാര്യത്തിൽ, അവ ഓട്ടോഇൻക്രിമെന്റ് ഫീൽഡുകൾ എന്നും വിളിക്കുന്നു.

ഉപയോക്താക്കളും റോളുകളും

ഡാറ്റയിലേക്കുള്ള അനധികൃത ആക്‌സസ് തടയുന്നത് പരിഗണിക്കപ്പെടുന്ന ഗുരുതരമായ പ്രശ്‌നമാണ് വ്യത്യസ്ത വഴികൾ. ഏറ്റവും ലളിതമായത് പാസ്വേഡ് സംരക്ഷണംഒന്നുകിൽ മുഴുവൻ പട്ടികയും അല്ലെങ്കിൽ അതിന്റെ ചില ഫീൽഡുകളും (ഈ സംവിധാനം പിന്തുണയ്ക്കുന്നു, ഉദാഹരണത്തിന്, കോറൽ വിരോധാഭാസത്തിൽ).

നിലവിൽ, ഡാറ്റ പരിരക്ഷിക്കുന്നതിനുള്ള മറ്റൊരു രീതി കൂടുതൽ ജനപ്രിയമാണ് - ഉപയോക്തൃ നാമങ്ങളും പാസ്‌വേഡുകളും ഉള്ള ഉപയോക്താക്കളുടെ ഒരു ലിസ്റ്റ് സൃഷ്ടിക്കുന്നു. ഈ സാഹചര്യത്തിൽ, ഏതൊരു ഡാറ്റാബേസ് ഒബ്‌ജക്‌റ്റും ഒരു നിർദ്ദിഷ്‌ട ഉപയോക്താവിന്റെ ഉടമസ്ഥതയിലുള്ളതാണ്, കൂടാതെ ആ ഒബ്‌ജക്‌റ്റിൽ നിന്നുള്ള ഡാറ്റ വായിക്കാനോ പരിഷ്‌ക്കരിക്കാനോ ഒബ്‌ജക്റ്റ് തന്നെ പരിഷ്‌ക്കരിക്കാനോ ആ ഉപയോക്താവ് മറ്റ് ഉപയോക്താക്കൾക്ക് അനുമതി നൽകുന്നു. ഈ രീതി എല്ലാ സെർവറുകളിലും ചില ഡെസ്ക്ടോപ്പ് DBMS-കളിലും ഉപയോഗിക്കുന്നു (ഉദാഹരണത്തിന്, Microsoft Access).

ചില DBMS-കൾ, പ്രധാനമായും സെർവർ, പിന്തുണ മാത്രമല്ല ഉപയോക്താക്കളുടെ ഒരു ലിസ്റ്റ്, മാത്രമല്ല വേഷങ്ങളും. ഒരു റോൾ എന്നത് പ്രത്യേകാവകാശങ്ങളുടെ ഒരു കൂട്ടമാണ്. എങ്കിൽ നിർദ്ദിഷ്ട ഉപയോക്താവ്ഒന്നോ അതിലധികമോ റോളുകൾ ലഭിക്കുന്നു, കൂടാതെ ഈ റോളിനായി നിർവചിച്ചിരിക്കുന്ന എല്ലാ പ്രത്യേകാവകാശങ്ങളും.

ഡാറ്റാബേസ് അന്വേഷണങ്ങൾ

ഡാറ്റയുടെ പരിഷ്ക്കരണവും തിരഞ്ഞെടുപ്പും, മെറ്റാഡാറ്റ മാറ്റലും മറ്റ് ചില പ്രവർത്തനങ്ങളും അന്വേഷണങ്ങൾ ഉപയോഗിച്ചാണ് നടത്തുന്നത്. മിക്ക ആധുനിക ഡിബിഎംഎസുകളിലും (ചില ആപ്ലിക്കേഷൻ ഡെവലപ്മെന്റ് ടൂളുകൾ) അത്തരം അന്വേഷണങ്ങൾ സൃഷ്ടിക്കുന്നതിനുള്ള ടൂളുകൾ അടങ്ങിയിരിക്കുന്നു.

ഡാറ്റ കൈകാര്യം ചെയ്യുന്നതിനുള്ള ഒരു മാർഗത്തെ "ഉദാഹരണത്തിലൂടെയുള്ള ചോദ്യങ്ങൾ" (QBE) എന്ന് വിളിക്കുന്നു. പട്ടികകൾ ദൃശ്യപരമായി ലിങ്ക് ചെയ്യുന്നതിനും അന്വേഷണ ഫലത്തിൽ പ്രദർശിപ്പിക്കേണ്ട ഫീൽഡുകൾ തിരഞ്ഞെടുക്കുന്നതിനുമുള്ള ഒരു ഉപകരണമാണ് QBE.

മിക്ക DBMS-കളിലും (ചില ഡെസ്‌ക്‌ടോപ്പ് ഒഴികെ), QBE ഉപയോഗിച്ചുള്ള ഒരു അന്വേഷണത്തിന്റെ ദൃശ്യ നിർമ്മാണം ഒരു പ്രത്യേക അന്വേഷണ ഭാഷയായ SQL (ഘടനാപരമായ അന്വേഷണ ഭാഷ) ഉപയോഗിച്ച് അന്വേഷണ ടെക്‌സ്‌റ്റ് സൃഷ്‌ടിക്കുന്നതിലേക്ക് നയിക്കുന്നു. നിങ്ങൾക്ക് ചോദ്യം നേരിട്ട് SQL-ൽ എഴുതാനും കഴിയും.

കഴ്‌സറുകൾ

പലപ്പോഴും ഒരു ചോദ്യത്തിന്റെ ഫലം വരികളുടെയും നിരകളുടെയും ഒരു കൂട്ടമാണ് (ഡാറ്റസെറ്റ്). ഒരു റിലേഷണൽ ടേബിളിൽ നിന്ന് വ്യത്യസ്തമായി, അത്തരം ഒരു സെറ്റിലെ വരികൾ ക്രമീകരിച്ചിരിക്കുന്നു, അവയുടെ ക്രമം യഥാർത്ഥ ചോദ്യം (ചിലപ്പോൾ സൂചികകളുടെ സാന്നിധ്യത്താൽ) നിർണ്ണയിക്കപ്പെടുന്നു. അതിനാൽ, അത്തരമൊരു സെറ്റിലെ നിലവിലെ വരിയും അതിലേക്കുള്ള ഒരു പോയിന്ററും നമുക്ക് നിർവചിക്കാം, അതിനെ ഒരു കഴ്സർ എന്ന് വിളിക്കുന്നു.

മിക്ക ആധുനിക ഡിബിഎംഎസുകളും ബൈ-ഡയറക്ഷണൽ കഴ്‌സറുകൾ എന്ന് വിളിക്കപ്പെടുന്നവയെ പിന്തുണയ്ക്കുന്നു, ഇത് ഫലമായുണ്ടാകുന്ന ഡാറ്റയിലൂടെ മുന്നോട്ടും പിന്നോട്ടും നാവിഗേറ്റ് ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു. എന്നിരുന്നാലും, ചില DBMS-കൾ ഏകദിശയിലുള്ള കഴ്‌സറുകളെ മാത്രമേ പിന്തുണയ്ക്കൂ, ഇത് ഒരു ഡാറ്റാ സെറ്റിലൂടെ ഫോർവേഡ് നാവിഗേഷൻ മാത്രമേ അനുവദിക്കൂ.

SQL ഭാഷ

സ്ട്രക്ചേർഡ് ക്വറി ലാംഗ്വേജ് (എസ്‌ക്യുഎൽ) എന്നത് മിക്ക ആധുനിക ഡിബിഎംഎസുകളിലും ഡാറ്റാബേസ് അന്വേഷണങ്ങൾ രൂപപ്പെടുത്താൻ ഉപയോഗിക്കുന്ന ഒരു നോൺ പ്രൊസീജറൽ ഭാഷയാണ്, ഇത് നിലവിൽ ഒരു വ്യവസായ നിലവാരമാണ്.

ഭാഷയുടെ നോൺ പ്രൊസീജറൽ സ്വഭാവം അർത്ഥമാക്കുന്നത് ഡാറ്റാബേസിൽ എന്താണ് ചെയ്യേണ്ടതെന്ന് സൂചിപ്പിക്കാൻ അതിന് കഴിയും, എന്നാൽ ഈ പ്രക്രിയയ്ക്കുള്ള അൽഗോരിതം വിവരിക്കാൻ അതിന് കഴിയില്ല. എസ്‌ക്യുഎൽ അന്വേഷണങ്ങൾ പ്രോസസ്സ് ചെയ്യുന്നതിനുള്ള എല്ലാ അൽ‌ഗോരിതങ്ങളും ഡി‌ബി‌എം‌എസ് തന്നെ സൃഷ്ടിച്ചതാണ്, മാത്രമല്ല ഇത് ഉപയോക്താവിനെ ആശ്രയിക്കുന്നില്ല. SQL ഭാഷയിൽ നിരവധി വിഭാഗങ്ങളായി തിരിക്കാൻ കഴിയുന്ന ഒരു കൂട്ടം പ്രസ്താവനകൾ അടങ്ങിയിരിക്കുന്നു:

  • ഡാറ്റ ഡെഫനിഷൻ ലാംഗ്വേജ് (ഡിഡിഎൽ) - ​​ഡാറ്റാബേസുകളിൽ ഒബ്ജക്റ്റുകൾ സൃഷ്ടിക്കാനും ഇല്ലാതാക്കാനും മാറ്റാനും നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ഡാറ്റ ഡെഫനിഷൻ ഭാഷ
  • ഡാറ്റാ മാനിപുലേഷൻ ലാംഗ്വേജ് (ഡിഎംഎൽ) - ​​നിലവിലുള്ള ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകളിൽ ഡാറ്റ പരിഷ്കരിക്കാനും ചേർക്കാനും ഇല്ലാതാക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ഡാറ്റ മാനേജ്മെന്റ് ഭാഷ
  • ഡാറ്റ നിയന്ത്രണ ഭാഷകൾ (DCL) - ഉപയോക്തൃ പ്രത്യേകാവകാശങ്ങൾ നിയന്ത്രിക്കാൻ ഉപയോഗിക്കുന്ന ഭാഷ
  • ട്രാൻസാക്ഷൻ കൺട്രോൾ ലാംഗ്വേജ് (TCL) - ഓപ്പറേറ്റർമാരുടെ ഗ്രൂപ്പുകൾ വരുത്തിയ മാറ്റങ്ങൾ കൈകാര്യം ചെയ്യുന്നതിനുള്ള ഒരു ഭാഷ
  • കഴ്‌സർ നിയന്ത്രണ ഭാഷ (CCL) - ഒരു കഴ്‌സർ നിർവചിക്കുന്നതിനും, എക്‌സിക്യൂഷനുവേണ്ടി SQL സ്റ്റേറ്റ്‌മെന്റുകൾ തയ്യാറാക്കുന്നതിനും മറ്റ് ചില പ്രവർത്തനങ്ങൾക്കുമുള്ള പ്രസ്താവനകൾ.

ഒന്നിൽ SQL ഭാഷയെക്കുറിച്ച് ഞങ്ങൾ നിങ്ങളോട് കൂടുതൽ പറയും അടുത്ത ലേഖനങ്ങൾഈ ചക്രം.

ഉപയോക്തൃ നിർവചിച്ച പ്രവർത്തനങ്ങൾ

ചില DBMS-കൾ ഉപയോക്തൃ-നിർവചിച്ച പ്രവർത്തനങ്ങൾ (UDF-User-Defined Functions) ഉപയോഗിക്കാൻ അനുവദിക്കുന്നു. ഈ ഫംഗ്‌ഷനുകൾ സാധാരണയായി ബാഹ്യ ലൈബ്രറികളിൽ സംഭരിക്കുന്നു, അവ അന്വേഷണങ്ങൾ, ട്രിഗറുകൾ, സംഭരിച്ച നടപടിക്രമങ്ങൾ എന്നിവയിൽ ഉപയോഗിക്കുന്നതിന് മുമ്പ് ഡാറ്റാബേസിൽ രജിസ്റ്റർ ചെയ്തിരിക്കണം.

ഉപയോക്തൃ-നിർവചിച്ച ഫംഗ്‌ഷനുകൾ ലൈബ്രറികളിൽ അടങ്ങിയിരിക്കുന്നതിനാൽ, ഡിബിഎംഎസ് പ്രവർത്തിക്കുന്ന പ്ലാറ്റ്‌ഫോമിനായി ലൈബ്രറികൾ സൃഷ്‌ടിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന ഏതെങ്കിലും വികസന ഉപകരണം ഉപയോഗിച്ച് അവ സൃഷ്‌ടിക്കാൻ കഴിയും.

ഇടപാടുകൾ

ഒരു ഇടപാട് എന്നത് ഒരുമിച്ചുള്ള പ്രവർത്തനങ്ങളുടെ ഒരു കൂട്ടമാണ്, അത് ഒരുമിച്ച് നടത്തുകയോ ഒരുമിച്ച് റദ്ദാക്കുകയോ ചെയ്യുന്നു.

ഒരു ഇടപാട് നടത്തുക എന്നതിനർത്ഥം ഇടപാടിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന എല്ലാ പ്രവർത്തനങ്ങളും വിജയകരമായി പൂർത്തിയാക്കുകയും അവരുടെ ജോലിയുടെ ഫലം ഡാറ്റാബേസിൽ സംരക്ഷിക്കുകയും ചെയ്തു എന്നാണ്.

ഒരു ഇടപാടിന്റെ റോൾബാക്ക് എന്നതിനർത്ഥം ഇടപാടിന്റെ ഭാഗമായ ഇതിനകം പൂർത്തിയാക്കിയ എല്ലാ പ്രവർത്തനങ്ങളും റദ്ദാക്കുകയും ഈ പ്രവർത്തനങ്ങൾ ബാധിച്ച എല്ലാ ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളും അവയുടെ യഥാർത്ഥ അവസ്ഥയിലേക്ക് മടങ്ങുകയും ചെയ്യുന്നു എന്നാണ്. ഇടപാടുകൾ പിൻവലിക്കാനുള്ള കഴിവ് നടപ്പിലാക്കാൻ, പല DBMS-കളും ഫയലുകൾ ലോഗ് ചെയ്യാൻ എഴുതുന്നതിനെ പിന്തുണയ്ക്കുന്നു, ഇത് ഒരു റോൾബാക്ക് സമയത്ത് യഥാർത്ഥ ഡാറ്റ പുനഃസ്ഥാപിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു.

ഒരു ഇടപാടിൽ നിരവധി നെസ്റ്റഡ് ഇടപാടുകൾ അടങ്ങിയിരിക്കാം.

ചില DBMS-കൾ ടു-ഫേസ് കമ്മിറ്റിനെ പിന്തുണയ്ക്കുന്നു, ഒരേ DBMS-ന്റെ ഒന്നിലധികം ഡാറ്റാബേസുകളിൽ ഇടപാടുകൾ നടത്താൻ അനുവദിക്കുന്ന ഒരു പ്രക്രിയ.

വിതരണം ചെയ്ത ഇടപാടുകളെ പിന്തുണയ്ക്കുന്നതിന് (അതായത്, വ്യത്യസ്ത DBMS-കൾ കൈകാര്യം ചെയ്യുന്ന ഡാറ്റാബേസുകളിലെ ഇടപാടുകൾ) ഉണ്ട് പ്രത്യേക മാർഗങ്ങൾ, ട്രാൻസാക്ഷൻ മോണിറ്ററുകൾ എന്ന് വിളിക്കുന്നു.

ഉപസംഹാരം

ഈ ലേഖനത്തിൽ, റിലേഷണൽ ഡിബിഎംഎസുകൾ നിർമ്മിക്കുന്നതിനുള്ള അടിസ്ഥാന ആശയങ്ങൾ, ഡാറ്റാ ഡിസൈനിന്റെ അടിസ്ഥാന തത്വങ്ങൾ, കൂടാതെ ഡാറ്റാബേസുകളിൽ എന്ത് വസ്തുക്കൾ സൃഷ്ടിക്കാൻ കഴിയുമെന്നതിനെക്കുറിച്ചും ഞങ്ങൾ ചർച്ച ചെയ്തു.

അടുത്ത ലേഖനത്തിൽ ഞങ്ങൾ ഞങ്ങളുടെ വായനക്കാരെ ഏറ്റവും ജനപ്രിയമായ ഡെസ്ക്ടോപ്പ് DBMS- കൾ പരിചയപ്പെടുത്തും: dBase, Paradox, Access, Visual FoxPro, Works, അവരുടെ പ്രധാന കഴിവുകൾ ചർച്ച ചെയ്യുക.

കമ്പ്യൂട്ടർ പ്രസ്സ് 3"2000

ഈ അധ്യായത്തിൽ ഞങ്ങൾ DBMS-ന്റെ പ്രധാന ക്ലാസുകളെ ഹൈലൈറ്റ് ചെയ്യുകയും സ്വഭാവം നൽകുകയും ചെയ്യും.

DBMS-ന്റെ പ്രധാന വർഗ്ഗീകരണം ഉപയോഗിച്ച ഡാറ്റാബേസ് മോഡലിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്. ഈ മാനദണ്ഡത്തെ അടിസ്ഥാനമാക്കി, ഡിബിഎംഎസിന്റെ നിരവധി ക്ലാസുകൾ വേർതിരിച്ചിരിക്കുന്നു: ശ്രേണി, നെറ്റ്‌വർക്ക്, റിലേഷണൽ, ഒബ്ജക്റ്റ് എന്നിവയും മറ്റുള്ളവയും. ചില DBMS-കൾക്ക് ഒന്നിലധികം ഡാറ്റാ മോഡലുകളെ ഒരേസമയം പിന്തുണയ്ക്കാൻ കഴിയും.

ഹൈരാർക്കിക്കൽ, നെറ്റ്‌വർക്ക് എന്നിവ പോലുള്ള മുൻകാല DBMS-കൾക്ക് ഒരു ട്രീ ഘടനയുണ്ട്, അവ "പൂർവ്വികർ - പിൻഗാമി" തത്വത്തിൽ നിർമ്മിച്ചവയാണ്. എന്നാൽ അത്തരം സംവിധാനങ്ങൾ ഇതിനകം കാലഹരണപ്പെട്ടിരിക്കുന്നു, അവ കുറച്ചുകൂടി ഉപയോഗിക്കപ്പെടുന്നു.

റിലേഷണൽ ഡിബിഎംഎസുകൾ ഹൈറാർക്കിക്കൽ, നെറ്റ്‌വർക്ക് എന്നിവ മാറ്റിസ്ഥാപിച്ചു.

റിലേഷണൽ ഡിബിഎംഎസിന്റെ സവിശേഷതകൾ

ആദ്യം സൈദ്ധാന്തിക വികാസങ്ങൾറിലേഷണൽ ഡിബിഎംഎസുകളുടെ മേഖലയിൽ 70-കളിൽ തിരികെ ലഭിച്ചു, അതേ സമയം റിലേഷണൽ ഡിബിഎംഎസുകളുടെ ആദ്യ പ്രോട്ടോടൈപ്പുകൾ പ്രത്യക്ഷപ്പെട്ടു. ദീർഘനാളായിഅത്തരം സംവിധാനങ്ങൾ ഫലപ്രദമായി നടപ്പിലാക്കുന്നത് അസാധ്യമാണെന്ന് കണക്കാക്കപ്പെട്ടു. എന്നിരുന്നാലും, റിലേഷണൽ ഡാറ്റാബേസുകൾ സംഘടിപ്പിക്കുന്നതിനും കൈകാര്യം ചെയ്യുന്നതിനുമുള്ള രീതികളുടെയും അൽഗോരിതങ്ങളുടെയും ക്രമാനുഗതമായ ശേഖരണം ഇതിനകം 80-കളുടെ മധ്യത്തിൽ വസ്തുതയിലേക്ക് നയിച്ചു. ബന്ധ സംവിധാനങ്ങൾലോക വിപണിയിൽ നിന്ന് ആദ്യകാല DBMS-കൾ പ്രായോഗികമായി മാറ്റിസ്ഥാപിച്ചു.

ഒരു ഡിബിഎംഎസ് സംഘടിപ്പിക്കുന്നതിനുള്ള ആപേക്ഷിക സമീപനം പരസ്പരബന്ധിതമായ ഒരു കൂട്ടം ബന്ധങ്ങളുടെ (ദ്വിമാന പട്ടികകൾ) സാന്നിധ്യം അനുമാനിക്കുന്നു. ഈ കേസിൽ ഒരു ബന്ധം രണ്ടോ അതിലധികമോ ബന്ധങ്ങളുടെ (പട്ടികകൾ) കൂട്ടുകെട്ടാണ്. ബന്ധങ്ങൾ തമ്മിൽ ബന്ധമില്ലാത്ത ഒരു ഡാറ്റാബേസിന് വളരെ പരിമിതമായ ഘടനയുണ്ട്, അത് റിലേഷണൽ എന്ന് വിളിക്കാനാവില്ല. അത്തരം ഡാറ്റാബേസുകളിലേക്കുള്ള അന്വേഷണങ്ങൾ അടുത്ത അന്വേഷണത്തിൽ വീണ്ടും ഉപയോഗിക്കാവുന്ന ഒരു പട്ടിക നൽകുന്നു. ചില പട്ടികകളിലെ ഡാറ്റ, ഞങ്ങൾ പറഞ്ഞതുപോലെ, മറ്റ് പട്ടികകളിലെ ഡാറ്റയുമായി ബന്ധപ്പെട്ടിരിക്കുന്നു, അതിൽ നിന്നാണ് "റിലേഷണൽ" എന്ന പേര് വരുന്നത്.

ഒരു DBMS നിർമ്മിക്കുന്നതിനുള്ള ആപേക്ഷിക സമീപനത്തിന് നിരവധി ഗുണങ്ങളുണ്ട്. Baydak A.Ya., Bulgakov A.A. ആധുനിക DBMS ഉം ഊർജ്ജ മേഖലയിൽ അവയുടെ പ്രയോഗവും [ഇലക്ട്രോണിക് റിസോഴ്സ്]. - ആക്സസ് മോഡ്: http: //masters. donntu.edu.ua/2010/etf/baydak/library/article2. htm. - തൊപ്പി. സ്ക്രീനിൽ നിന്ന്:

ലഭ്യത ചെറിയ സെറ്റ്ഏറ്റവും സാധാരണമായ പ്രശ്ന ഡൊമെയ്‌നുകളെ താരതമ്യേന ലളിതമായ രീതിയിൽ മാതൃകയാക്കുന്നതും അവബോധജന്യമായി തുടരുമ്പോൾ കൃത്യമായ ഔപചാരിക നിർവചനങ്ങൾ അനുവദിക്കുന്നതുമായ സംഗ്രഹങ്ങൾ;

പ്രധാനമായും സെറ്റ് സിദ്ധാന്തത്തെയും ഗണിതശാസ്ത്ര യുക്തിയെയും അടിസ്ഥാനമാക്കി, ഡാറ്റാബേസുകൾ സംഘടിപ്പിക്കുന്നതിനുള്ള ആപേക്ഷിക സമീപനത്തിന് സൈദ്ധാന്തിക അടിസ്ഥാനം നൽകുന്ന ലളിതവും അതേ സമയം ശക്തവുമായ ഒരു ഗണിത ഉപകരണത്തിന്റെ സാന്നിധ്യം;

പ്രത്യേക അറിവിന്റെ ആവശ്യമില്ലാതെ നാവിഗേഷൻ അല്ലാത്ത ഡാറ്റ കൃത്രിമത്വത്തിനുള്ള സാധ്യത ശാരീരിക സംഘടനബാഹ്യ മെമ്മറിയിലെ ഡാറ്റാബേസുകൾ.

റിലേഷണൽ മോഡലിന് കർശനമായ സൈദ്ധാന്തിക അടിത്തറയുണ്ട്. ഈ സിദ്ധാന്തം ഡിക്ലറേറ്റീവ് ഭാഷയായ SQL സൃഷ്ടിക്കുന്നതിന് സംഭാവന നൽകി, അത് ഇപ്പോൾ റിലേഷണൽ ഡാറ്റാബേസുകൾ നിർവചിക്കുന്നതിനും കൈകാര്യം ചെയ്യുന്നതിനുമുള്ള അടിസ്ഥാന ഭാഷയായി മാറിയിരിക്കുന്നു. റിലേഷണൽ മോഡലിന്റെ മറ്റ് ശക്തികൾ അതിന്റെ ലാളിത്യം, ഓൺലൈൻ ഇടപാട് പ്രോസസ്സിംഗ് (OLTP) സിസ്റ്റങ്ങൾക്ക് അനുയോജ്യത, ഡാറ്റ സ്വാതന്ത്ര്യം എന്നിവയാണ്. എന്നിരുന്നാലും, റിലേഷണൽ ഡാറ്റ മോഡലിനും റിലേഷണൽ ഡിബിഎംഎസിനും, പ്രത്യേകിച്ച്, ചില ദോഷങ്ങളുമുണ്ട്.

വളരെ സങ്കീർണ്ണമായ ഡാറ്റാ ഘടനകൾ ആവശ്യമുള്ള മേഖലകളിൽ ഈ സിസ്റ്റങ്ങളുടെ അന്തർലീനമായ പരിമിതമായ ഉപയോഗമാണ് റിലേഷണൽ ഡിബിഎംഎസുകളുടെ പ്രധാന പോരായ്മ. പരമ്പരാഗത റിലേഷണൽ ഡാറ്റാ മോഡലിന്റെ പ്രധാന വശങ്ങളിലൊന്ന് ഡാറ്റയുടെ ആറ്റോമിസിറ്റി (അദ്വിതീയതയും അവിഭാജ്യതയും) ആണ്, അത് പട്ടികയുടെ വരികളുടെയും നിരകളുടെയും കവലയിൽ സംഭരിച്ചിരിക്കുന്നു. ഈ നിയമം സ്ഥാപിച്ചു റിലേഷണൽ ബീജഗണിതംആയി വികസിപ്പിക്കുമ്പോൾ ഗണിതശാസ്ത്ര മാതൃകഡാറ്റ. കൂടാതെ, റിലേഷണൽ മോഡലിന്റെ നിർദ്ദിഷ്ട നടപ്പാക്കൽ, വിവരിച്ച വിഷയ മേഖലയിലെ വസ്തുക്കൾ തമ്മിലുള്ള യഥാർത്ഥ കണക്ഷനുകളെ വേണ്ടത്ര പ്രതിഫലിപ്പിക്കാൻ ഞങ്ങളെ അനുവദിക്കുന്നില്ല. ഈ നിയന്ത്രണങ്ങൾ ഫലപ്രദമായി നടപ്പാക്കുന്നതിൽ കാര്യമായ തടസ്സം സൃഷ്ടിക്കുന്നു ആധുനിക ആപ്ലിക്കേഷനുകൾ, ഡാറ്റ ഓർഗനൈസേഷനിൽ അല്പം വ്യത്യസ്തമായ സമീപനങ്ങൾ ആവശ്യമാണ്.

നോർമലൈസേഷൻ എന്ന പ്രക്രിയയിലൂടെ തനിപ്പകർപ്പ് ഫീൽഡുകളും ഗ്രൂപ്പുകളും ഇല്ലാതാക്കുക എന്നതാണ് റിലേഷണൽ മോഡലിന്റെ പ്രധാന തത്വം. ഫ്ലാറ്റ് നോർമലൈസ്ഡ് ടേബിളുകൾ സാർവത്രികവും മനസ്സിലാക്കാൻ എളുപ്പമുള്ളതും ഏത് വിഷയ മേഖലയിലും ഡാറ്റ അവതരിപ്പിക്കുന്നതിന് സൈദ്ധാന്തികമായി പര്യാപ്തവുമാണ്. പരമ്പരാഗത വ്യവസായങ്ങളായ ബാങ്കിംഗ് അല്ലെങ്കിൽ അക്കൌണ്ടിംഗ് സിസ്റ്റങ്ങളിൽ ഡാറ്റ സംഭരണവും പ്രദർശനവും ഉൾപ്പെടുന്ന ആപ്ലിക്കേഷനുകൾക്ക് അവ അനുയോജ്യമാണ്, എന്നാൽ കൂടുതൽ അടിസ്ഥാനമാക്കിയുള്ള സിസ്റ്റങ്ങളിൽ അവയുടെ ഉപയോഗം സങ്കീർണ്ണമായ ഘടനകൾഡാറ്റ പലപ്പോഴും ബുദ്ധിമുട്ടാണ്. ഇത് പ്രധാനമായും നികിറ്റിൻ എം എന്ന റിലേഷണൽ മോഡലിന് അടിവരയിടുന്ന ഡാറ്റാ സ്റ്റോറേജ് മെക്കാനിസങ്ങളുടെ പ്രാകൃതത മൂലമാണ്. റിലേഷണൽ ഡിബിഎംഎസുകളുടെ യുഗം അവസാനിച്ചോ? [ഇലക്ട്രോണിക് റിസോഴ്സ്]. - ആക്സസ് മോഡ്: http: //www.cnews.ru/reviews/free/marketBD/articles/articles2. shtml. - തൊപ്പി. സ്ക്രീനിൽ നിന്ന്.

ഇന്ന്, റിലേഷണൽ DBMS-ന്റെ അറിയപ്പെടുന്ന നിർമ്മാതാക്കൾ ഇനിപ്പറയുന്നവയാണ് - ORACLE, Informix, IBM (DB2), Sybase, Microsoft (MS SQL സെർവർ), പുരോഗതിയും മറ്റുള്ളവയും. അവരുടെ ഉൽപ്പന്നങ്ങളിൽ, DBMS നിർമ്മാതാക്കൾ പ്രവർത്തിക്കുന്നതിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നു വിവിധ തരംകമ്പ്യൂട്ടറുകളും (മെയിൻഫ്രെയിമുകൾ മുതൽ ലാപ്‌ടോപ്പുകൾ വരെ), വിവിധ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിലും (OS). കൂടാതെ, DBMS നിർമ്മാതാക്കൾ പ്രവർത്തിക്കുന്ന ഉൽപ്പന്നങ്ങളെ അവഗണിച്ചില്ല ഡെസ്ക്ടോപ്പ് കമ്പ്യൂട്ടറുകൾ, dBase, FoxPro, Access എന്നിവയും മറ്റും. ഈ ഡിബിഎംഎസുകൾ ഒരു പിസിയിൽ പ്രവർത്തിക്കാനും ഒരു പിസിയിലോ ഒരു ചെറിയ പിസിയിലോ ഉള്ള പ്രാദേശിക പ്രശ്നങ്ങൾ പരിഹരിക്കാനുമാണ് രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്. DBMS ഡാറ്റ പലപ്പോഴും ഉപയോഗിക്കുന്നു മിററിംഗ്മൊത്തത്തിലുള്ള കോർപ്പറേറ്റ് ഡിബിഎംഎസിന്റെ ഒരു ചെറിയ ഭാഗം, ചെറിയ പ്രശ്നങ്ങൾ പരിഹരിക്കുന്നതിന് ആവശ്യമായ ഹാർഡ്‌വെയർ, റിസോഴ്‌സ് ചെലവുകൾ കുറയ്ക്കുന്നതിന്.

വ്യത്യസ്ത DBMS-കൾ വ്യത്യസ്ത ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾക്കും ഹാർഡ്‌വെയറിനും കീഴിൽ പ്രവർത്തിക്കുന്നു. ഈ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ ഏറ്റവും പ്രശസ്തമായത് UNIX, VAX, Solaris, Windows എന്നിവയാണ്. ഡാറ്റ സംഭരണത്തിന്റെ അളവ് അനുസരിച്ച്, പ്രകടനം നടത്തുന്ന ഉപയോക്താക്കളുടെ എണ്ണം ഒരേസമയം പ്രവേശനംഡാറ്റയിലേക്ക്, ടാസ്ക്കുകളുടെ സങ്കീർണ്ണത - വിവിധ പ്ലാറ്റ്ഫോമുകളിൽ വിവിധ DBMS-കൾ ഉപയോഗിക്കുന്നു. ഉദാഹരണത്തിന്, ഒരു മൾട്ടിപ്രൊസസർ സെർവറിൽ ഇൻസ്റ്റാൾ ചെയ്ത Unix-ലെ Oracle DBMS, ലക്ഷക്കണക്കിന് ഉപയോക്താക്കൾക്ക് ഡാറ്റ നൽകുന്നതിനുള്ള പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു Ponomarev I.S. ഡാറ്റാബേസ് മാനേജ്മെന്റ് സിസ്റ്റങ്ങൾ [ഇലക്ട്രോണിക് റിസോഴ്സ്]. - ആക്സസ് മോഡ്: http: //mathmod. aspu.ru/images/File/Ponomareva/TM10_About%20BD. pdf. - പി. 2.

നിലവിൽ, ഇന്റൽ പ്ലാറ്റ്‌ഫോം ഉപയോഗിക്കുന്ന വിൻഡോസ് ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തെ അടിസ്ഥാനമാക്കിയുള്ള ഡിബിഎംഎസുകൾ ഏറ്റവും താൽപ്പര്യമുള്ളവയാണ്.

ഒരു റിലേഷണൽ ഡാറ്റാബേസിന്റെ ലോജിക്കൽ മോഡൽറിലേഷണൽ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകളിലേക്ക്. ഈ പ്രശ്നം പരിഹരിക്കുന്നതിന്, ഡാറ്റാബേസ് ഡിസൈനർ അറിഞ്ഞിരിക്കണം: a) റിലേഷണൽ ഡാറ്റാബേസിന് തത്വത്തിൽ എന്ത് വസ്തുക്കളാണുള്ളത്; b) ഡാറ്റാബേസ് നടപ്പിലാക്കുന്നതിനായി തിരഞ്ഞെടുത്തിരിക്കുന്ന നിർദ്ദിഷ്ട DBMS പിന്തുണയ്ക്കുന്ന ഒബ്ജക്റ്റുകൾ ഏതൊക്കെയാണ്.

അതിനാൽ, ഒരു ഡിബിഎംഎസ് തിരഞ്ഞെടുക്കാനുള്ള തീരുമാനം ഐടി പ്രോജക്ട് മാനേജർ ഇതിനകം എടുത്തിട്ടുണ്ടെന്നും ഡാറ്റാബേസ് ഉപഭോക്താവുമായി സമ്മതിച്ചിട്ടുണ്ടെന്നും ഞങ്ങൾ അനുമാനിക്കുന്നു, അതായത്. DBMS വ്യക്തമാക്കിയിട്ടുണ്ട്. തിരഞ്ഞെടുത്ത DBMS പിന്തുണയ്ക്കുന്ന SQL ഭാഷയെ വിവരിക്കുന്ന ഡോക്യുമെന്റേഷൻ ഡാറ്റാബേസ് ഡിസൈനർ അവലോകനം ചെയ്യണം. ഒറാക്കിൾ 9i ഡിബിഎംഎസ് തിരഞ്ഞെടുത്തതായി ഈ പ്രഭാഷണം അനുമാനിക്കുന്നു, എന്നിരുന്നാലും മെറ്റീരിയലിന്റെ ഭൂരിഭാഗവും ഏതെങ്കിലും വ്യാവസായിക ബന്ധമുള്ള ഡിബിഎംഎസിലെ വസ്തുക്കളെ ഉൾക്കൊള്ളുന്നു.

അഭിപ്രായം. ഒരു DBMS തിരഞ്ഞെടുക്കുന്നതിനെക്കുറിച്ച്. ഒരു ഡിബിഎംഎസ് തിരഞ്ഞെടുക്കുന്നത് ഒരു മൾട്ടി-ക്രൈറ്റീരിയ തിരഞ്ഞെടുക്കൽ പ്രശ്നമാണ്, അത് ഈ കോഴ്‌സിൽ ചർച്ച ചെയ്യപ്പെടുന്നില്ല. ഒരു ഡിബിഎംഎസ് സാധാരണയായി ഒരു ഡാറ്റാ മോഡലിനെ മാത്രമേ പിന്തുണയ്ക്കൂ എന്ന് ഓർക്കണം: റിലേഷണൽ, ഹൈറാർക്കിക്കൽ, നെറ്റ്‌വർക്ക്, മൾട്ടിഡൈമൻഷണൽ, ഒബ്ജക്റ്റ് ഓറിയന്റഡ്, ഒബ്ജക്റ്റ്-റിലേഷണൽ. ഒഴിവാക്കലാണ് ചെറിയ സംഖ്യഡി.ബി.എം.എസ്. ഉദാഹരണത്തിന്, ADABAS, Software AG (നെറ്റ്‌വർക്ക് ഒപ്പം റിലേഷണൽ മോഡൽ), അല്ലെങ്കിൽ Oracle 9i, Oracle Inc. (റിലേഷണൽ, ഒബ്ജക്റ്റ്-റിലേഷണൽ മോഡലുകൾ). സാധാരണയായി, ഒരു DBMS തിരഞ്ഞെടുക്കുമ്പോൾ, മറ്റെല്ലാ സാധ്യതകളും തുല്യമായിരിക്കുമ്പോൾ, അവർ ഒരു വ്യവസായ നിലവാരം എന്ന് അവകാശപ്പെടുന്ന ഒരു DBMS-ൽ ഒരു ഡാറ്റാബേസ് സൃഷ്ടിക്കാൻ ശ്രമിക്കുന്നു.

റിലേഷണൽ ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളുടെ ശ്രേണി SQL മാനദണ്ഡങ്ങളിൽ നിർദ്ദേശിക്കപ്പെട്ടിരിക്കുന്നു, പ്രത്യേകിച്ചും, SQL-92 സ്റ്റാൻഡേർഡിൽ, ഈ പ്രഭാഷണത്തിൽ മെറ്റീരിയൽ അവതരിപ്പിക്കുമ്പോൾ ഞങ്ങൾ ശ്രദ്ധ കേന്ദ്രീകരിക്കും. ഈ മാനദണ്ഡം മിക്കവാറും എല്ലാവരും പിന്തുണയ്ക്കുന്നു ആധുനിക ഡിബിഎംഎസ്, ഡെസ്ക്ടോപ്പ് വരെ. റിലേഷണൽ ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളുടെ ശ്രേണി ചുവടെയുള്ള ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നു.

യഥാർത്ഥത്തിൽ താഴ്ന്ന നിലഒരു റിലേഷണൽ ഡാറ്റാബേസ് പ്രവർത്തിക്കുന്ന ഏറ്റവും ചെറിയ ഒബ്‌ജക്‌റ്റുകൾ ഉണ്ട് - നിരകളും (നിരകളും) വരികളും. അവ, പട്ടികകളായും കാഴ്ചകളായും തരം തിരിച്ചിരിക്കുന്നു.

അഭിപ്രായം. പ്രഭാഷണത്തിന്റെ പശ്ചാത്തലത്തിൽ, ആട്രിബ്യൂട്ടുകൾ, കോളങ്ങൾ, കോളങ്ങൾ, ഫീൽഡുകൾ എന്നിവ പര്യായങ്ങളായി കണക്കാക്കുന്നു. "വരി", "റെക്കോർഡ്", "ട്യൂപ്പിൾ" എന്നീ പദങ്ങൾക്കും ഇത് ബാധകമാണ്.

ഭൗതിക പ്രതിഫലനത്തെ പ്രതിനിധീകരിക്കുന്ന പട്ടികകളും കാഴ്ചകളും ലോജിക്കൽ ഘടനഡാറ്റാബേസുകൾ ഒരു സ്കീമയിൽ ശേഖരിക്കുന്നു. ഒന്നിലധികം സ്കീമകൾ കാറ്റലോഗുകളായി ശേഖരിക്കുന്നു, അവ പിന്നീട് ക്ലസ്റ്ററുകളായി തരംതിരിക്കാം. SQL-92 സ്റ്റാൻഡേർഡിന്റെ ഒബ്ജക്റ്റുകളുടെ ഗ്രൂപ്പുകളൊന്നും കമ്പ്യൂട്ടർ മെമ്മറിയിലെ വിവരങ്ങളുടെ ഭൗതിക സംഭരണത്തിനായുള്ള ഘടനകളുമായി ബന്ധപ്പെടുത്തിയിട്ടില്ല എന്നത് ശ്രദ്ധിക്കേണ്ടതാണ്.


അരി. 8.1

ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്ന ഒബ്‌ജക്‌റ്റുകൾക്ക് പുറമേ, സൂചികകൾ, ട്രിഗറുകൾ, ഇവന്റുകൾ, സംഭരിച്ച കമാൻഡുകൾ, സംഭരിച്ച നടപടിക്രമങ്ങൾ, കൂടാതെ മറ്റു പലതും ഒരു റിലേഷണൽ ഡാറ്റാബേസിൽ സൃഷ്ടിക്കാൻ കഴിയും. ഇപ്പോൾ നമുക്ക് റിലേഷണൽ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകൾ നിർവചിക്കുന്നതിലേക്ക് പോകാം.

ഒരു റിലേഷണൽ ഡാറ്റാബേസിന്റെ അടിസ്ഥാന വസ്തുക്കൾ

ക്ലസ്റ്ററുകളും ഡയറക്‌ടറികളും സ്‌കീമകളും അല്ല നിർബന്ധിത ഘടകങ്ങൾസ്റ്റാൻഡേർഡ്, അതിനാൽ, റിലേഷണൽ ഡാറ്റാബേസുകൾക്കുള്ള സോഫ്റ്റ്വെയർ പരിസ്ഥിതി.

ഒരു ഡാറ്റാബേസ് സെർവറിലേക്കുള്ള ഒരൊറ്റ കണക്ഷനിലൂടെ ആക്സസ് ചെയ്യാൻ കഴിയുന്ന ഡയറക്ടറികളുടെ ഒരു കൂട്ടമാണ് ക്ലസ്റ്റർ ( സോഫ്റ്റ്വെയർ ഘടകം DBMS).

പ്രായോഗികമായി നടപടിക്രമം ഒരു ഡയറക്ടറി സൃഷ്ടിക്കുന്നുഒരു നിർദ്ദിഷ്ട ഓപ്പറേറ്റിംഗ് പ്ലാറ്റ്‌ഫോമിൽ DBMS നടപ്പിലാക്കുന്നതിലൂടെ നിർണ്ണയിക്കപ്പെടുന്നു. ഒരു കാറ്റലോഗ് സ്കീമുകളുടെ ഒരു ഗ്രൂപ്പായി മനസ്സിലാക്കുന്നു. പ്രായോഗികമായി, ഒരു ഡയറക്ടറി പലപ്പോഴും ഒരു ഫിസിക്കൽ ഡാറ്റാബേസുമായി ഒരു ശേഖരമായി ബന്ധപ്പെട്ടിരിക്കുന്നു ഫിസിക്കൽ ഫയലുകൾ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം, അവളുടെ പേരിനാൽ തിരിച്ചറിയപ്പെടുന്നു.

ഒരു ഡാറ്റാബേസ് ഡിസൈനർക്ക്, സ്കീമ സാധാരണമാണ് ലോജിക്കൽ പ്രാതിനിധ്യംപൂർത്തിയാക്കിയ ഡാറ്റാബേസിന്റെ ബന്ധങ്ങൾ. SQL പദങ്ങളിൽ, ഒരു റിലേഷണൽ ഡാറ്റാബേസിന്റെ പട്ടികകൾ, കാഴ്ചകൾ, മറ്റ് ഘടനാപരമായ ഘടകങ്ങൾ എന്നിവയ്ക്കുള്ള ഒരു കണ്ടെയ്നറാണ് സ്കീമ. ഓരോ സ്കീമയിലും ഡാറ്റാബേസ് ഘടകങ്ങളുടെ സ്ഥാനം പൂർണ്ണമായും നിർണ്ണയിക്കുന്നത് ഡാറ്റാബേസ് ഡിസൈനറാണ്.

പട്ടികകളും കാഴ്ചകളും സൃഷ്ടിക്കാൻ നിങ്ങൾക്ക് ഒരു സ്കീമ ആവശ്യമില്ല. ഒരെണ്ണം മാത്രം ഇൻസ്റ്റാൾ ചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ ലോജിക്കൽ അടിസ്ഥാനംഡാറ്റ, നിങ്ങൾക്ക് ഒരു സ്കീമ ഇല്ലാതെ ചെയ്യാൻ കഴിയുമെന്ന് വ്യക്തമാണ്. എന്നാൽ ഒന്നിലധികം ഡാറ്റാബേസുകളെ പിന്തുണയ്‌ക്കാൻ ഒരേ DBMS ഉപയോഗിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളെ സ്‌കീമകളിലേക്ക് ശരിയായി ഓർഗനൈസുചെയ്യുന്നത് ആ ഡാറ്റാബേസുകൾ പരിപാലിക്കുന്നത് വളരെ എളുപ്പമാക്കും. പ്രായോഗികമായി, ഒരു ഫിസിക്കൽ ഡാറ്റാബേസിലെ ഒരു നിർദ്ദിഷ്ട ഉപയോക്താവിന്റെ ഒബ്ജക്റ്റുകളുമായി ഒരു സ്കീമ പലപ്പോഴും ബന്ധപ്പെട്ടിരിക്കുന്നു.

അടുത്തതായി, Oracle 9i റിലേഷണൽ DBMS-ന്റെ പശ്ചാത്തലത്തിൽ റിലേഷണൽ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകൾ നൽകപ്പെടും. ഡിസൈൻ ആയതിനാലാണ് ഈ സമീപനം സ്വീകരിച്ചത് ശാരീരിക മാതൃകറിലേഷണൽ ഡാറ്റാബേസ്ഒരു നിർദ്ദിഷ്‌ട നിർവ്വഹണ പരിതസ്ഥിതിക്ക് വേണ്ടിയാണ് നടപ്പിലാക്കുന്നത്.

Oracle 9i-ൽ, ഒരു ഉപയോക്താവ് സൃഷ്‌ടിക്കുന്ന എല്ലാ ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളും വിവരിക്കാൻ സ്‌കീമ എന്ന പദം ഉപയോഗിക്കുന്നു. ഓരോ പുതിയ ഉപയോക്താവിനും ഒരു പുതിയ സ്കീമ സ്വയമേവ സൃഷ്ടിക്കപ്പെടുന്നു.

റിലേഷണൽ ഡാറ്റാബേസുകളിലെ പ്രധാന വസ്തുക്കളിൽ പട്ടിക, കാഴ്ച, ഉപയോക്താവ് എന്നിവ ഉൾപ്പെടുന്നു.

പട്ടിക ആണ് അടിസ്ഥാന ഘടനറിലേഷണൽ ഡാറ്റാബേസ്. ഇത് ഡാറ്റ സംഭരണത്തിന്റെ ഒരു യൂണിറ്റിനെ പ്രതിനിധീകരിക്കുന്നു - ഒരു ബന്ധം. ഉപയോക്താവിന്റെ ഐഡന്റിഫിക്കേഷൻ ഉൾപ്പെടുന്ന ഒരു ടേബിൾ അതിന്റെ തനതായ പേരിൽ ഡാറ്റാബേസിൽ തിരിച്ചറിയുന്നു. പട്ടിക ശൂന്യമായിരിക്കാം അല്ലെങ്കിൽ ഒരു കൂട്ടം വരികൾ അടങ്ങിയിരിക്കാം.

ഒന്നോ അതിലധികമോ ഡാറ്റാബേസ് ടേബിളുകളിൽ നിന്ന് പേരിട്ടതും ചലനാത്മകമായി പരിപാലിക്കപ്പെടുന്നതുമായ DBMS തിരഞ്ഞെടുപ്പാണ് കാഴ്ച. സാമ്പിൾ ഓപ്പറേറ്റർ പരിധികൾ ഉപയോക്താവിന് ദൃശ്യമാണ്ഡാറ്റ. സാധാരണയായി, കാഴ്ചയുടെ പ്രസക്തി DBMS ഉറപ്പുനൽകുന്നു - കാഴ്ച ഉപയോഗിക്കുമ്പോഴെല്ലാം ഇത് ജനറേറ്റുചെയ്യുന്നു. ചിലപ്പോൾ കാഴ്ചകൾ വിളിക്കപ്പെടുന്നു വെർച്വൽ പട്ടികകൾ.

മറ്റ് ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകൾ സൃഷ്‌ടിക്കാനും ഉപയോഗിക്കാനും കഴിവുള്ള ഒരു ഒബ്‌ജക്റ്റാണ് ഉപയോക്താവ്, കൂടാതെ ഒരു സെഷൻ സംഘടിപ്പിക്കുക, ഡാറ്റാബേസിന്റെ അവസ്ഥ മാറ്റുക തുടങ്ങിയ ഡിബിഎംഎസ് ഫംഗ്‌ഷനുകൾ നടപ്പിലാക്കാൻ അഭ്യർത്ഥിക്കുന്നു.

ഒബ്‌ജക്‌റ്റുകളെ തിരിച്ചറിയുന്നതും പേരുനൽകുന്നതും എളുപ്പമാക്കുന്നതിന്, ഡാറ്റാബേസ് പര്യായങ്ങൾ, ക്രമം, കൂടാതെ .

പര്യായപദം ( പര്യായപദം)- ഈ ഇതര നാമംനിങ്ങളെ ആക്‌സസ് ചെയ്യാൻ അനുവദിക്കുന്ന ഒരു റിലേഷണൽ ഡാറ്റാബേസിന്റെ ഒബ്‌ജക്റ്റ് (അപരനാമം). ഈ വസ്തു. ഒരു പര്യായപദം പൊതുവായതോ സ്വകാര്യമോ ആകാം. ഒരു പങ്കിട്ട പര്യായപദം എല്ലാ ഡാറ്റാബേസ് ഉപയോക്താക്കളെയും അതിന്റെ അപരനാമം ഉപയോഗിച്ച് ബന്ധപ്പെട്ട ഒബ്ജക്റ്റിനെ പരാമർശിക്കാൻ അനുവദിക്കുന്നു. പര്യായപദം നിങ്ങളെ മറയ്ക്കാൻ അനുവദിക്കുന്നു അന്തിമ ഉപയോക്താക്കൾഡാറ്റാബേസിലെ വസ്തുവിന്റെ പൂർണ്ണ യോഗ്യത.

മൾട്ടി-യൂസർ അസിൻക്രണസ് ആക്‌സസിൽ അദ്വിതീയ സംഖ്യകളുടെ (നമ്പറുകൾ) ഒരു ശ്രേണി സൃഷ്ടിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റാണ് സീക്വൻസ്. സാധാരണഗതിയിൽ, ഡാറ്റാ പരിഷ്‌ക്കരണ പ്രവർത്തനങ്ങളിൽ ടേബിൾ എലമെന്റുകൾ (വരികൾ) അദ്വിതീയമായി അക്കമിടാൻ സീക്വൻസ് ഘടകങ്ങൾ ഉപയോഗിക്കുന്നു.

ഉപയോക്താവ് നിർവചിച്ചുഡാറ്റ തരങ്ങൾ (ഉപയോക്താവ് നിർവചിച്ച ഡാറ്റ തരങ്ങൾ) DBMS പിന്തുണയ്ക്കുന്ന (ബിൽറ്റ്-ഇൻ) തരങ്ങളിൽ നിന്ന് വ്യത്യസ്തമായ ഉപയോക്തൃ-നിർവചിക്കപ്പെട്ട ആട്രിബ്യൂട്ട് തരങ്ങളാണ് (ഡൊമെയ്‌നുകൾ). അന്തർനിർമ്മിത തരങ്ങളെ അടിസ്ഥാനമാക്കിയാണ് അവ നിർവചിച്ചിരിക്കുന്നത്. ഉപയോക്തൃ-നിർവചിച്ച ഡാറ്റ തരങ്ങൾഒബ്ജക്റ്റ്-ഓറിയന്റഡ് മാതൃകയ്ക്ക് അനുസൃതമായി ഓർഗനൈസുചെയ്‌തിരിക്കുന്ന ഡിബിഎംഎസ് പരിതസ്ഥിതിയുടെ ആ ഭാഗം രൂപപ്പെടുത്തുക.

നൽകാൻ ഫലപ്രദമായ പ്രവേശനംറിലേഷണൽ ഡിബിഎംഎസുകളിലെ ഡാറ്റയ്ക്കായി മറ്റ് നിരവധി ഒബ്‌ജക്റ്റുകൾ പിന്തുണയ്ക്കുന്നു: സൂചിക, പട്ടിക ഏരിയ, ക്ലസ്റ്റർ, വിഭാഗം.

ഡാറ്റ വീണ്ടെടുക്കൽ പ്രകടനം മെച്ചപ്പെടുത്തുന്നതിനും പ്രാഥമിക കീയുടെ അദ്വിതീയത നിയന്ത്രിക്കുന്നതിനുമായി സൃഷ്ടിച്ച ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റാണ് സൂചിക (പട്ടികയ്‌ക്കായി ഒന്ന് വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ). പൂർണ്ണമായും സൂചിക പട്ടികകൾ(ഇൻഡക്സ്-ഓർഗനൈസ്ഡ് ടേബിളുകൾ) ഒരേ സമയം ഒരു പട്ടികയായും സൂചികയായും പ്രവർത്തിക്കുന്നു.

മേശ സ്ഥലംഅല്ലെങ്കിൽ പ്രദേശം ( ടേബിൾസ്പേസ്)പട്ടികകൾക്കും സൂചികകൾക്കും മെമ്മറി അനുവദിക്കാൻ ഉപയോഗിക്കുന്ന ഡാറ്റാബേസിന്റെ പേരുള്ള ഭാഗമാണ്. Oracle 9i-ൽ, ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിന്റെ ഫിസിക്കൽ ഫയലുകളുടെ ലോജിക്കൽ നാമമാണിത്. ഡാറ്റ സംഭരിക്കുന്ന എല്ലാ ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളും ചിലതിന് സമാനമാണ് ടേബിൾസ്പേസുകൾ. ഡാറ്റ സംഭരിക്കാത്ത മിക്ക ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകളും സിസ്റ്റം ടേബിൾസ്‌പേസിൽ സ്ഥിതി ചെയ്യുന്ന ഡാറ്റ നിഘണ്ടുവിൽ വസിക്കുന്നു.

ഒരു ക്ലസ്റ്റർ എന്നത് ഒന്നിലധികം അല്ലെങ്കിൽ ഒരു പട്ടികയിൽ ഡാറ്റ സംഭരിക്കുന്നതിനുള്ള ഒരു മാർഗം നിർവചിക്കുന്ന ഒരു വസ്തുവാണ്. ഒരേ SQL കമാൻഡിൽ ഉപയോഗിക്കുന്ന ഒന്നിലധികം ടേബിളുകൾക്ക് പൊതുവായ കീ ഫീൽഡുകൾ ഉണ്ട് എന്നതാണ് ഒരു ക്ലസ്റ്റർ ഉപയോഗിക്കുന്നതിനുള്ള ഒരു മാനദണ്ഡം. സാധാരണയായി ക്ലസ്റ്റേർഡ് നിരകളോ പട്ടികകളോ ഡാറ്റാബേസിൽ ഇങ്ങനെ സംഭരിക്കുന്നു ഹാഷ് ടേബിളുകൾ(അതായത് ഒരു പ്രത്യേക രീതിയിൽ).

വിഭജനം എന്നത് ഒരു ഡാറ്റാബേസ് വസ്തുവാണ് ടേബിൾസ്പേസുകൾ. അങ്ങനെ, വിഭജനംവളരെ വിതരണം ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു വലിയ മേശകൾഒന്നിലധികം ഹാർഡ് ഡ്രൈവുകളിൽ.

ഒരു പ്രത്യേക രീതിയിൽ ഡാറ്റ പ്രോസസ്സ് ചെയ്യുക അല്ലെങ്കിൽ നടപ്പിലാക്കുക റഫറൻഷ്യൽ സമഗ്രത പിന്തുണഡാറ്റാബേസ് ഒബ്‌ജക്റ്റുകൾ ഉപയോഗിക്കുന്നു: സംഭരിച്ച നടപടിക്രമം, പ്രവർത്തനം, കമാൻഡ്, ട്രിഗർ, ടൈമർ, ബാച്ച് (ഒറാക്കിൾ). ഈ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകൾ ഉപയോഗിച്ച്, നിങ്ങൾക്ക് ഡാറ്റയുടെ റെക്കോർഡ് പ്രോസസ്സിംഗ് എന്ന് വിളിക്കാം. ഡാറ്റാബേസ് ആപ്ലിക്കേഷനുകളുടെ വീക്ഷണകോണിൽ നിന്ന്, വരി പ്രോസസ്സിംഗ് എന്നത് ഒരു വരിയിൽ ഡാറ്റയുടെ ക്രമാനുഗതമായ തിരഞ്ഞെടുപ്പാണ്, അത് പ്രോസസ്സ് ചെയ്യുകയും അടുത്ത വരി പ്രോസസ്സ് ചെയ്യുന്നതിലേക്ക് നീങ്ങുകയും ചെയ്യുന്നു.

ഈ റിലേഷണൽ ഡാറ്റാബേസ് ഒബ്ജക്റ്റുകൾ പ്രോഗ്രാമുകളാണ്, അതായത്. എക്സിക്യൂട്ടബിൾ കോഡ്. റിലേഷണൽ ഡാറ്റാബേസ് എഞ്ചിൻ ഇൻസ്റ്റാൾ ചെയ്തിട്ടുള്ള കമ്പ്യൂട്ടറാണ് ഇത് നടപ്പിലാക്കുന്നത് എന്നതിനാൽ ഈ കോഡ് സാധാരണയായി സെർവർ സൈഡ് കോഡ് എന്ന് വിളിക്കുന്നു. അത്തരം കോഡ് ആസൂത്രണം ചെയ്യുകയും വികസിപ്പിക്കുകയും ചെയ്യുക എന്നത് റിലേഷണൽ ഡാറ്റാബേസ് ഡിസൈനറുടെ ചുമതലകളിൽ ഒന്നാണ്.

SQL കമാൻഡുകൾ കൂടാതെ/അല്ലെങ്കിൽ പ്രത്യേക ഡാറ്റാബേസ് പ്രോഗ്രാമിംഗ് ഭാഷകളിൽ നിന്നുള്ള (SQLWindows അല്ലെങ്കിൽ PL/SQL പോലുള്ളവ) പ്രസ്താവനകളെ പ്രതിനിധീകരിക്കുന്ന ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റാണ് സംഭരിച്ച നടപടിക്രമം.

ഒരു ഫംഗ്‌ഷൻ എന്നത് ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്‌റ്റാണ്, അത് SQL കമാൻഡുകൾ കൂടാതെ/അല്ലെങ്കിൽ പ്രത്യേക ഡാറ്റാബേസ് പ്രോഗ്രാമിംഗ് ഭാഷാ ഓപ്പറേറ്റർമാരെ പ്രതിനിധീകരിക്കുന്നു, അത് എക്‌സിക്യൂട്ട് ചെയ്യുമ്പോൾ, ഒരു മൂല്യം നൽകുന്നു-ഒരു കണക്കുകൂട്ടലിന്റെ ഫലം.

ഒരു കമാൻഡ് എന്നത് ഒരു SQL പ്രസ്താവനയാണ്, അത് മുൻകൂട്ടി കംപൈൽ ചെയ്യുകയും ഡാറ്റാബേസിൽ സംഭരിക്കുകയും ചെയ്യുന്നു. കമാൻഡ് പ്രോസസ്സിംഗ് വേഗത അതിന്റെ അനുബന്ധത്തേക്കാൾ കൂടുതലാണ് SQL പ്രസ്താവന, കാരണം ഘട്ടങ്ങൾ നടപ്പിലാക്കിയിട്ടില്ല പാഴ്സിംഗ് സമാഹാരവും.

ഒരു പ്രത്യേക സംഭരിച്ച നടപടിക്രമമായ ഒരു ഡാറ്റാബേസ് ഒബ്ജക്റ്റാണ് ട്രിഗർ. ഒരു ട്രിഗർ ഇവന്റ് സംഭവിക്കുമ്പോൾ ഈ നടപടിക്രമം യാന്ത്രികമായി പ്രവർത്തിക്കുന്നു (ഉദാഹരണത്തിന്, ഒരു പട്ടികയിൽ ഒരു വരി ചേർക്കുന്നതിന് മുമ്പ്).

സംഭരിച്ച നടപടിക്രമത്തിനായുള്ള ട്രിഗർ ഇവന്റ് ഒരു ടൈമർ ഇവന്റായതിനാൽ ഒരു ട്രിഗറിൽ നിന്ന് ഒരു ടൈമർ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു.

പേരുനൽകിയ, ഘടനാപരമായ വേരിയബിളുകൾ, നടപടിക്രമങ്ങൾ, ഫംഗ്‌ഷനുകൾ എന്നിവ ഉൾക്കൊള്ളുന്ന ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്റ്റാണ് പാക്കേജ്.

ഡിസ്ട്രിബ്യൂട്ടഡ് റിലേഷണൽ ഡിബിഎംഎസുകൾക്ക് പ്രത്യേക ഒബ്ജക്റ്റുകൾ ഉണ്ട്: സ്നാപ്പ്ഷോട്ടും ഡാറ്റാബേസ് ലിങ്കും.

ഒരു സ്‌നാപ്പ്‌ഷോട്ട് (സ്‌നാപ്പ്‌ഷോപ്പ്) എന്നത് ഒരു റിമോട്ട് ഡാറ്റാബേസിലെ ഒരു പട്ടികയുടെ പ്രാദേശിക പകർപ്പാണ്, അത് പട്ടികയുടെയോ അന്വേഷണ ഫലമോ പകർത്താൻ (പകർത്താൻ) ഉപയോഗിക്കുന്നു. സ്നാപ്പ്ഷോട്ടുകൾ പരിഷ്ക്കരിക്കാവുന്നതോ വായിക്കാൻ മാത്രമുള്ളതോ ആകാം.

ഒരു ഡാറ്റാബേസ് ലിങ്ക്, അല്ലെങ്കിൽ റിമോട്ട് ഡാറ്റാബേസ് ലിങ്ക്, ഒരു റിമോട്ട് ഡാറ്റാബേസിലെ ഒബ്ജക്റ്റുകൾ ആക്സസ് ചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്ന ഒരു ഡാറ്റാബേസ് ഒബ്ജക്റ്റാണ്. ഒരു ഡാറ്റാബേസ് ലിങ്ക് പേര്, ഏകദേശം പറഞ്ഞാൽ, ഒരു റിമോട്ട് ഡാറ്റാബേസിനായി പരാമീറ്ററുകൾ ആക്സസ് ചെയ്യുന്നതിനുള്ള ഒരു ലിങ്കായി കണക്കാക്കാം.

വേണ്ടി ഫലപ്രദമായ മാനേജ്മെന്റ്ഒറാക്കിളിലെ ഡാറ്റ ആക്‌സസ് നിയന്ത്രണം റോൾ ഒബ്‌ജക്‌റ്റ് പിന്തുണയ്‌ക്കുന്നു.

റോൾ എന്നത് ഒരു ഡാറ്റാബേസ് ഒബ്‌ജക്‌റ്റാണ്, അത് ഉപയോക്താക്കൾക്കോ ​​ഉപയോക്താക്കളുടെ വിഭാഗങ്ങൾക്കോ ​​മറ്റ് റോളുകൾക്കോ ​​നൽകാവുന്ന പ്രത്യേകാവകാശങ്ങളുടെ പേരുള്ള ഒരു കൂട്ടമാണ്.