Бақылау сұрақтары:
Иерархиялық және желілік мәліметтер қорының тұтастығы нені білдіреді?
Мәліметтер қорының желілік моделі дегеніміз нені білдіреді?
Мәліметтер қорының желілік моделі дегеніміз нені білдіреді?
Реляциялық мәліметтер қоры дегеніміз не?
Қандай мәліметтер қорларында мәліметтерді байланыстыру үшін физикалық көрсеткіштер қолданылады?
Нысанның бір элементі үшін өрістер мәндерінің жиынтығы не болып табылады?
Мәліметтер қорында өріс деп нені айтамыз?
Кортеж дегеніміз не?
Мәліметтер қорының құрылымы мәліметтердің берілуінің қай деңгейінде сипатталады?
Мәліметтердің берілуінің қандай деңгейі тасымалдағыштағы мәліметтердің орналасу тәсіліне сәйкес?
МҚ берілуінің қанша деңгейі бар?
Пайдаланушы деңгейінде мәліметтер қоры қандай түрге ие болады?
Атрибут дегеніміз не?
Э.Коддтың жұмыстары мәліметтер қорының қандай моделінен негізделген?
Мәліметтер қорының дамуында болашақта қандай бағыттары бар?
Реляциялық кестеде қанша алғашқы (түйінді) кілт болуы мүмкін?
Реляциялық кестеде қанша сыртқы кілт болуы мүмкін?
Реляциялық кестеде алғашқы және сыртқы кілттерінің болуы міндетті ме?
Реляциялық алгебраның қандай амалы бастапқы кестелердің екеуінен, бастапқы кестелердің жазбалары тек бір рет кездесетін жаңа кесте құрайды?
Реляциялық алгебраның қандай амалы бастапқы кестелердің екеуінен жалпы жазбаларды бөліп алады?
Реляциялық алгебраның қандай амалы бірінші бастапқы кестеден екінші бастапқы кестеде жоқ жазбаларды бөліп алады?
Реляциялық алгебраның қандай амалы бірінші бастапқы кестенің әрбір жазбасына екінші бастапқы кестенің әрбір жазбасын біріктіреді?
Реляциялық алгебраның қандай амалы бастапқы кестеден, берілген шарттарды қанағаттандыратын жазбаларымен жаңа кесте құрайды?
Реляциялық алгебраның қандай амалына SELECT (<кесте>:<шарт>) командасы сәйкес келеді?
Реляциялық алгебраның қандай амалы берілген бағандарды таңдау жолымен бастапқы кестеден жаңа кесте құрайды?
Реляциялық алгебраның қандай амалы <кесте аты>. [1 баған, 2 баған,...,N баған] командасына сәйкес келеді?
Реляциялық алгебраның қандай амалы JOIN (1 кесте, 2 кесте) командасына сәйкес келеді?
Реляциялық алгебраның қандай амалында проекцияны көбейту, құру және таңдауды орындалады?
Реляциялық алгебраның қандай амалы бірінші кестенің жолдары, екінші кестенің әрбір жолына сәйкес жолын таңдау арқылы жаңа кестені құрайды?
Реляциялық есептеулерде сұраныс қандай түрге ие болады?
Реляциялық алгебраның қандай амалы кестенің атауын береді?
Реляциялық алгебраның қандай амалы үшін, бастапқы кестенің құрылымы бағандардың саны бойынша, және типі бойынша да сәйкес болуы қажет?
Бірінші, екінші, үшінші және төртінші қалыпты формалар нені қажет етеді?
Егер реляциялық кесте 2-ші, 3-ші немесе 4-ші қалыпты формада болмаса, онда нені орындау қажет?
Реляциялық алгебра және реляциялық есептеулер бойынша жұмыстар кімге байланысты?
Реляциялық кестені сипаттау барысында атауы және типі нені білдіреді?
Реляциялық мәліметтер қорында логикалық байланыс ненің көмегімен орнатылады?
МҚ құрылымы деген не және мәліметтер қорының құрылымы қайда сақталады?
Мәліметтер қорының моделі дегеніміз не?
Реляциялық алгебраның командасы бір рет жүгінуде нені өңдеуге мүмкіндік береді?
МҚ қандай моделінде мәліметтер арасындағы байланыс бағытталған граф түрінде болады?
МҚ қандай моделінде мәліметтер арасындағы байланыс еркін граф түрінде болады?
Реляциялық есептеулер сұранысында мақсаттық тізім нені анықтайды?
Қандай жағдай да реляциялық кесте екінші қалыпты формада болмауы мүмкін?
Реляциялық кесте қандай жағдайда үшінші қалыпты формада бола алмайды?
Қандай МҚ-да өрістердің көпмәнді мәндері жеке кестелер болып саналады?
Қандай МҚ-да бірінші қалыпты форма қоятын, шектеулер алып тасталған?
Әдебиеттер:
Бидайбеков Е.Ы., Елубаев К., Шекербекова Ш.Т. Мәліметтер қоры және ақпараттық жүйелер. Алматы., 2010.
Золотова С.И. Практикум по Access. Финансы и статистика, Москва, 2000.
Джулия Келли. Самоучитель Access 97. Питер. Санкт-Петербург, 2000.
Робинсон С. Access 2000. Учебный курс.
5-ДӘРІС. Мәліметтер қорының басқа модельдері
Қарастырылатын сұрақтар:
Постреляциялық модель.
Көпөлшемді модель.
Нысанды-бағытталған модель.
Мәліметтер қорының басқа модельдері.
Постреляциялық модель. Реляциялық модельге қарағанда постреляциялық модельде көпмәнді өрістерге жол беріледі, яғни онда алғашқы қалыпты түр қоятын шектеудің күші жойылады. Көп мәнді өрістердің мәндер жиыны өзіндік кесте болып саналады. Мысалы, мәліметтер қорының реляциялық моделінің келесі кестелері.
Тапсырыстар
-
Cnum
|
Jnum
|
2001
2002
2003
|
0023003
0073009
7003005
|
Тауарлар
-
Onum
|
Products
|
Summa
|
0023003
0023003
0073009
0073009
0073009
7003005
|
Шырын
Конфеттер
Лимонад
Шырын
Печенье
Йогурт
|
302,50
464,69
271,83
409,67
1031,63
5160,45
|
келесі постреляциялық кестедегідей беріледі
-
Cnum
|
Jnum
|
Products
|
Summa
|
2001
2002
2003
|
023003
0073009
7003005
|
Шырын
Конфеттер
Лимонад
Шырын
Печенье
Йогурт
|
302,50
464,69
271,83
409,67
1031,63
5160,45
|
Осылайша, постреляциялық модель өзара байланысқан реляциялық кестелердің жиынтығын бір постреляциялық кесте ретінде көрсетуге мүмкіндік береді.
Өрістердің бір-біріне салынуын қамтамасыз етумен қатар постреляциялық модель ассоцияланған көпмәнді өрістерді (көптеген топтарды) қолдайды. Ассоцияланған өрістердің жиынтығы ассоциация деп аталады. Бұл ретте ассоциацияның бір бағанының жолындағы алғашқы мәні ассоциацияның барлық өзге бағандарының алғашқы мәндеріне сәйкес келеді. Осыған ұқсас түрде бағандардың барлық екінші мәндері және т.б. байланысқан.
Өрістердің ұзындығына және кестелерде қалыпқа келтірілмеген мәліметтер сақталатын болғандықтан, мәліметтердің тұтастығы мен қарама-қайшылықсыздығын қамтамасыз ету мәселесі туындайды. Аталған мәселе МҚБЖ-ға клиент-серверлік жүйелерде сақталатын процедураларға ұқсас механизмдерді енгізу арқылы шешіледі.
Өрістердегі мәндерді бақылау қызметін сипаттау үшін мәліметтерге жүгінуге дейін немесе содан кейін автоматты түрде шақырылатын процедураларды (конверсия кодтары мен корреляция кодтары) құру мүмкіндігі бар. Корреляция кодтары мәліметтерді оқығаннан кейін, бірден оларды өңдеудің алдында орындалады. Конверсия кодтары, керісінше, мәліметтерді өңдеуден өткізгеннен кейін орындалады.
Постреляциялық модельдің артықшылығы сол – ол байланысқан реляциялық кестелердің жиынтығын бір ғана постреляциялық кесте түрінде беру мүмкіндігі. Бұл ақпаратты ұсынудың жоғары түрдегі көрнекілігін және оны өңдеу тиімділігінің артуын қамтамасыз етеді. Сонымен қатар, постреляциялық модель мәліметтердің шектен тыс көп болуына жол бермейді.
Постреляциялық модельдің кемшілігі сақталатын мәліметтердің тұтастығы мен қарама-қайшылықсыздығын қамтамасыз ету мәселесін шешудің қиындығы болып отыр.
Мәліметтердің постреляциялық үлгісіне негізделген МҚБЖ-лардың қатарына Bubba және Dasdb жүйелері жатады.
Көпөлшемді модель.Мәліметтер қорының көпөлшемді моделі ақпаратты интерактивтік аналитикалық өңдеуден өткізуге арналған. Мәліметтердің тиімді жедел түрде өңдеуден өткізілуін қамтамасыз ететін реляциялық модельге қарағанда, көпөлшемді модель талдау жүргізу мен шешім қабылдау барысында мәліметтерді жедел түрде өңдеуге мүмкіндік береді. Сол арқылы ол жасанды интеллект жүйелерінде, атап айтқанда экспертік жүйелерде қолданыста болады.
Модельдің көпөлшемділігі мәліметтерді сипаттау және манипуляциялау кезінде мәліметтер құрылымын көпөлшемдік логикалық тұрғыдан ұсынуды білдіреді. Мысалы, жоғарыда келтірілген Тапсырыстар мен Тауарлар атты реляциялық кестені гиперкуб деп аталатын келесі көпөлшемді кесте түрінде көрсетуге болады.
-
|
2001
|
2002
|
2003
|
Конфеттер
Лимонад
Шырындар
Печенье
|
464,69
302,50
|
271,83
409,67
1031,63
|
|
Йогурт
|
|
|
5160,45
|
Көпөлшемді модельдер үшін мәліметтердің агрегирлігі, тарихилығы мен болжамдылығы тән болып келеді.
Мәліметтердің агрегирлігі ақпаратты оны жалпылаудың әр түрлі деңгейлерінде қарастыру дегенді білдіреді. Ақпараттық жүйелерде пайдаланушы үшін ақпаратты ұсынудың егжей-тегжейлік дәрежесі оның дегейіне тәуелді: талдаушы, пайдаланушы-оператор, басқарушы, жетекші болады.
Мәліметтердің тарихилығы мәліметтер мен олардың өзара байланыстарының өзгермейтіндігін жоғары деңгейін қамтамасыз етуді, сондай-ақ мәліметтерді міндетті түрде уақытқа байланыстыруды білдіреді.
Мәліметтердің статикалығы оларды өңдеу кезінде арнайы жүктемелеу, сақтау, индексациялау мен таңдау әдістерін қолдануға мүмкіндік береді.
Мәліметтерді уақытша байланыстыру, таңдау құрамында уақыт пен ай-күн мәндері бар сұраныстарды жиі орындау үшін қажет. Мәліметтерді өңдеу мен пайдаланушыға ұсыну кезінде мәліметтерді уақыт бойынша ретке келтіру қажеттілігі ақпаратты сақтау мен оған қол жеткізу механизмдеріне талаптар қояды. Сұраныстарды өңдеуден өткізу уақытын азайту үшін мәліметтер әрдайым өздері жиі сұралатын тәртіппен сұрыпталған күйде болғаны дұрыс.
Мәліметтердің болжамдалуы болжамдау қызметтерін ұсыну мен оларды түрлі аралықтарында қолдануды білдіреді.
Мәліметтер моделінің көпөлшемділігі цифрлық мәліметтерді көрсетудің көпөлшемділігін емес, сипаттау кезінде және мәліметтерді манипуляциялау әрекеттерінде ақпараттың құрылымын көпөлшемдік логикалық кейіптеуді білдіреді.
Реляциялық модельмен салыстырғанда мәліметтердің көпөлшемді ұйымдастырылуы барынша жоғары көрнекілік пен ақпараттылықты береді.
Егер екіден артық өлшемділікке ие модель туралы сөз болса, онда ақпараттың көпөлшемдік нысандар (үш, төрт және одан да артық өлшемдік гиперкубтар) түрінде ұсынылуы міндетті емес. Пайдаланушыға бұл жағдайларда да екі өлшемдік кестелерді немесе графиктерді пайдаланған ыңғайлы болады. Бұл ретте мәліметтер түрлі дәрежедегі егжей-тегжейлігімен орындалған көпөлшемдік мәліметтер қоймасынан алынған «қиындықтар» түрінде болып келеді.
Көпөлшемдік модельдің негізгі ұғымдарына өлшем мен ұяшық жатады. Өлшем дегеніміз – бұл гиперкуб қырларының бірін құрайтын бір типтік мәліметтердің жиыны. Көптеген жағдайларда келесі уақыттық өлшемдер: күндер, айлар, тоқсандар, жылдар қолданылады. Сонымен қатар географиялық өлшемдер: қалалар, аудандар, аймақтар, елдер және т.б. пайдаланылады. Ұяшық дегеніміз – өлшем мәндерінің белгіленген жиыны бір мәнді анықталған өріс.
Мәліметтер қорының көпөлшемдік моделінде бірақатар арнайы амалдар қолданылады: қиындыны құрастыру, айналдыру, агрегациялау және детализациялау. Қиынды бір немесе бірнеше өлшеулерді белгілеу арқылы алынатын гиперкубтың ішкі жиыны. Қиындыны құрастырған соң біз сол арқылы гиперкубтың белгілі бір шектелген бөлігіне ауысамыз.
Айналдыру өлшеулердің орналасу тәртібін өзгерту үшін қолданылады.
Агрегациялау мен детализациялау сәйкесінше пайдаланушыға мәліметтердің көпөлшемді моделінің басты артықшылығы сол уақытпен байланысты мәліметтердің үлкен көлемдерін талдамалық өңдеудің ыңғайлы және тиімді болуы. Ұқсас мәліметтерді реляциялық модельге негізделген өңдеуді ұйымдастыру барысында МҚ өлшемділігіне байланысты әрекеттердің еңбек сыйымдылығы сызықтық емес түрде өседі және индексацияға жұмсалатын жедел жады шығыны елеулі түрде артады.
Мәліметтердің көпөлшемдік моделінің кемшілігі – ол ақпаратты әдеттегі жедел өңдеудің қарапайым міндеттері үшін тым орасан зор болып келуінде.
Мәліметтердің көпөлшемді модельдерін қолдайтын жүйелердің мысалдары: Essbase (Arbor Software), Media Multi-matrix (Speedware), Oracle Express Server (Oracle) және Cache (InterSystems). Кейбір программалық өнімдер, мысалы, Media/MR (Speedware) бір мезгілде көпөлшемді және реляциялық МҚ-лармен жұмыс істеуге мүмкіндік береді. Мәліметтердің ішкі моделі көпөлшемді модель болып табылатын Cache МҚБЖ-да мәліметтерге қол жеткізудің үш тәсілі жүзеге асырылған: тікелей (көпөлшемді массивтердің тораптары деңгейінде), объектілі және реляциялық.
Объектілі-бағытталған модель. Бұл модельдің негізін объектілі-бағытталған программалаудың идеялары мен принциптері (ұстанымдары) құрайды. Объектілі-бағытталған МҚ-ның логикалық құрылымы сырттай иерархиялық МҚ-ның құрылымына ұқсас болып келеді. Олардың бір-бірінен негізгі айырмашылығы – мәліметтерді манипуляциялау әдістерінде. Мәліметтер қорының объектілі-бағытталған моделі өзара күштің байланысқан мәліметтермен жұмыс істеуге мүмкіндік береді. Мәліметтер мен оларды өңдеуден өткізу әдістерінің арасында программалаудың объектілі-бағытталған тілдеріндегі сәйкес құралдарға ұқсас механизмдердің көмегімен өзара байланыстар орнайды. Объектілердің қасиеттері тек real, char және сол сияқты стандартты типтермен ғана емес, сондай-ақ пайдаланушылардың өздері жасайтын типтермен де сипатталуы мүмкін. Класстар деп аталатын бұл типтер көптеген объектілерді құруға арналған шаблон (қимаүлгі) болып табылады. Class типінің мәні болып табылатын объектілер осы класстың даналары деп аталады, мысалы, келесі суретте көрсетілгендей (1.6-сурет).
1.6-сурет. Объектілі-бағытталған модельдегі жазбаларды байланыстыру
Класстардың негізінде инкапсуляция, мұра етіп алу және полиморфизм деген үш іргелі ұстаным жатыр.
Инкапсуляция нысанды өзге класстардың объектілерінен оқшаулауы, оның қасиеттерінің көрінуін шектейді. Қасиеттің мәні сол инкапсуляцияланған нысанмен анықталады.
Мұра етіп алу, керісінше, аталық объектінің қасиеттерін оның барлық ұрпақтарына таратады.
Полиморфизм әртүрлі кластағы объектілерде атаулары бірдей қызметтер мен өңдеу процедураларын (әдістерін) қолдануға жол ашады.
Мәліметттермен әрекеттерді орындау үшін қарастырылып отырған МҚ моделінде инкапсуляция, мұра ету және полиморфизмнің объектілі-бағытталған механизмдерімен күшейтілген логикалық амалдар қолданылады. SQL командаларына (мысалы, МҚ құру үшін) ұқсас амалдар шектелген түрде қолданылуы мүмкін.
МҚ құру және модификациялау мәліметтерді жылдам іздестіруге арналған ақпаратты қамтыған индекстерді (индекстік кестелерді) автоматтты түрде қалыптастыру мен кейінгі түзетулерді жүзеге асырумен ілесе жүргізіледі.
Мәліметтердің объектілі-бағытталған моделінің реляциялық модельмен салыстырғандағы негізгі артықшылығы – объектілердің күрделі өзара байланыстары туралы ақпаратты бейнелеу мүмкіндігі. Мәліметтердің объектілі-бағытталған моделі мәліметтер қорының жеке жазбасын идентификациялап, оларды өңдеуден өткізудің қызметтерін анықтауға мүмкіндік береді.
Объектілі-бағытталған модельдің кемшілігі – түсінудің жоғары деңгейдегі қиындығы, мәліметтерді өңдеуден өткізудің ыңғайсыздығы және сұраныстарды орындау жылдамдығының төмендігі.
90-шы жылдары объектілі-бағытталған мәліметтер қорын басқару жүйелерінің тәжірибелік түп нұсқалары болған. Қазіргі кезде мұндай жүйелер кең таралымға ие болды, атап айтқанда оларға келесі МҚБЖ-лар: POET (POET Software), Jasmine (Computer Associates), Versant (Versant Technologies), 02(Ardent Software), ODB-Jupiter («Интелтек Плюс» ғылыми-өндірістік орталығы), сондай-ақ Iris, Orion және Postgres жатады.
Бақылау сұрақтары:
Көпөлшемді модельдің қандай амалы гиперкубтың қандай да бір шектелген бөлігіне өтуді береді?
Көпөлшемді модельдің қандай амалы өлшемдер ретін өзгерту үшін қызмет етеді?
Көпөлшемді модельдің қандай амалы ақпараттардың барынша нақты түрде берілу үшін қызмет етеді?
Көпөлшемді модельдің қандай амалы ақпараттардың жалпы берілулері үшін қызмет етеді?
Көпөлшемді модельде гиперкубтың қырын құрайтын, мәліметтердің бір типті жиыны қалай аталады?
Көпөлшемді модельде өлшемнің мәндерінің бекітілген жиыны қалай аталады?
МҚ қандай моделі интеллектуальды жүйелерде қолданыс тапты?
МҚ қандай моделі мәліметтерді талдамалық өңдеуге арналған?
Объектілі-бағытталған модельде нысандарды құру үшін шаблон не болып табылады?
Объектілі-бағытталған модельде дана (экземпляр) дегеніміз не?
Мәліметтер қорының объектілі-бағытталған моделінде инкапсуляция, полиморфизм және мұраға алу дегеніміз не?
Класс ұғымы қандай негізгі ұстанымдарға (принциптерге) негізделеді?
МҚ қандай моделі күшті өзара байланысқан мәліметтермен жұмыс істеуге мүмкіндік береді?
1978 жылы мәліметтер қоры бойынша ANSI/SPARC комитеті не ұсынды?
МҚ кейіптеу деңгейлері нені бейнелейді?
Әдебиеттер:
Бидайбеков Е.Ы., Елубаев К., Шекербекова Ш.Т. Мәліметтер қоры және ақпараттық жүйелер. Алматы., 2010.
Глушаков С.В., Ломотько Д.В. Базы данных.-Харковь: Фолио; М.:ООО «Издательство АСТ», 2002.
Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных. Учебник для высших учебных заведений. Под редакцией проф. А. Д. Хомоненко. – Санкт-Петербург: «КОРОНА принт», 2000 г
6-ДӘРІС. Мәліметтер қорының үш деңгейлі архитектурасы
Қарастырылатын сұрақтар:
Мәліметтер қорын берудің деңгейлері:қолданушылық деңгей, концептуальдық деңгей, физикалық деңгей.
Мәліметтер қорының физикалық және логикалық тәуелсіздігі.
Мәліметтер қорына басшылық жасау
Мәліметтер қорын жоспарлау, жобалау, жасау және іске қосу кезеңдеріндегі мәліметтер қоры әкімшілігінің негізгі қызметтері.
1978 жылы ANSI/SPARC комитеті мәліметтер қоры жүйелерінің жалпылама құрылымын ұсынған болатын. Ол құрылым үш деңгейлі архитектура деген атауға ие болды, оған сәйкес мәліметтер қорын ұсынудың үш деңгейі болады: сыртқы, тұғырнамалық және ішкі.
Сыртқы деңгей мәліметтердің пайдаланушылық ұсынылуын анықтайды. Сондықтан бұл деңгей пайдаланушылық деңгей деп те аталады. Сыртқы деңгейде әрбір пайдаланушы топ мәліметтер қорындағы мәліметтер туралы өз кейіптемесін алады, онда мәліметтер элементтері мен олардың өзара қарым-қатынастарының пайдаланушыға бағытталған сипаттамасы беріледі. Түрлі кестелер, байланыстар, есеп берулер, формалар және т.б. өздері шешетін міндеттерге сәйкес мәліметтер қорының пайдаланушылық кейіптемесіне сәйкес келеді.
Кейіптеменің тұғырнамалық немесе логикалық деңгейі дегеніміз – бұл мәліметтер қорын жасаудың деңгейі. Бұл деңгейде талап етілген міндетті шешуге қажетті объектілер анықталады және олардың арасындағы байланыстар орнатылады. Тұғырнамалық жобалаудың нәтижесінде объектілердің, олардың элементтерінің және олардың арасындағы қарым-қатынастарының тұғырнамалық моделі, сұлбасы, объектінің логикалық сипаттамасы қалыптасады. Мысалы, Orion оқу мәліметтер қорына арналған тұғырнамалық сұлба келесі түрде болады (1.7-сурет).
1.7-сурет. «Orion» оқу мәліметтер қорының тұғырнамалық сұлбасы
Жасалған тұғырнамалық сұлбаны жүзеге асыру үшін мәліметтер қорының ыңғайлы моделі таңдалып алынады, мәліметтердің құрылымы сипатталады.
Ішкі деңгей мәліметтер қорына физикалық көзқарасты қамтамасыз етеді. Бұл деңгей үшін жүйелік программалаушылар, мәліметтердің физикалық қорын жобалаушылар жауап береді, олар мәліметтерді кодтау мен компьютерде және тасымалдағыштарда кейіптеу мәселелерін шешеді, мәліметтерді шұғыл түрде оқу мен оларды өзгерту мақсатында мәліметтерге қол жеткізу әдістерін анықтайды. Мәліметтерге қол жеткізудің негізгі әдістері индекстеу, хэш-адрестеу және сығу болып табылады.
Хэш-адрестеу дегеніміз – қандай да бір алгоритм (хэш-қызметі) бойынша тасымалдағыштағы мекен-жайды кестенің қандай да бір өрісінің, көбінесе басты өрісінің негізінде есептеп шығу. Мәліметтерді жазу кезінде хэш-қызметінің көмегімен мекен-жайы есептеп шығарылады және содан кейін мәліметтер осы есептелген мекен-жай бойынша тасымалдағышқа жазылады. Мәліметтерді оқу кезінде хэш-қызметі алдымен мәліметтер орналасқан мекен-жайды есептеп шығады, содан кейін оқиды.
Мәліметтерді сығу үшін қолданыста бар әдістер пайдалынады, ол әдістер тасымалдағышта жазылатын мәліметтердің көлемінің азаюын қамтамасыз етеді, бұл мәліметтерді өңдеуден өткізуге арналған жүйелердің өнімділігін арттыруға мүмкіндік береді.
Мәліметтер қорының физикалық құрылымын жасаушылар мәліметтерді орналастыру тәсілдерін қолда бар нақты құрал-жабдықтарды, құрылғыларды ескере отырып анықтайды. Мәліметтер қорын ұсынудың физикалық деңгейінің ақырғы пайдаланушыға қатысы болмайды.
Осылайша, үш деңгейлік архитектура мәліметтер қорын пайдаланушылық кейіптеменің физикалық кейіптемеге қатысты логикалық тәуелсіздігін көрсетеді. Келесі суретте (1.8-суретте) мәліметтер қорының үш деңгейлік архитектурасы келтірілген.
1.8-сурет. Мәліметтер қорының үш деңгейлік архитектурасы
Әдетте, мәліметтер қорының логикалық моделі мен физикалық құрылымын жасаушылар мәліметтер қорының әкімшісі (администраторы) деп аталатын топты құрайды.
Мәліметтер қоры әкімшісінің қызметтеріне төмендегілер жатады:
мәліметтер қорына қатысты талаптарды әзірлеп шығару;
мәліметтер қорын жобалау;
мәліметтер қорын қалыптастыру;
мәліметтер қорын тиімді пайдалану және оған ілесе жүру.
Мәліметтер қоры өзі арналып құралған, шешілетін міндетке сәйкес келуі тиіс. Мәліметтер қорын жобалауға логикалық модельді жасауды, шифрлеуді, кодтауды және өзге де қорғау құралдарын қамтитын тасымалдағыштардағы мәліметтерді сақтау тәсілдері жатады.
Мәліметтер қорын тұғырнамалық жобалаудың ұстанымдары
Пайдаланушылардың мәліметтер қорының көмегімен шешетін міндеттері, әдетте, қоршаған болмыспен, осы болмыстың нақты нысандарымен байланысты болады. Сондықтан мәліметтер қорын әзірлеуге кіріскен кезде пайдаланушылардың жасалып жатқан мәліметтер қорына қоятын талаптарына қатысты нысандардың табиғатын зерттеп шығу қажет.
Пайдаланушылардың жасалып жатқан мәліметтер қорына қоятын талаптарын көрсететін объектілердің жиынтығын модель деп атайық. Осылайша, модель қойылған міндетті шешу үшін болмыстың қажетті кейіптемесін береді. Әрине, модель пайдаланушылардың талаптарын дәл бейнелеуі тиіс, онда қойылған міндетті шешуге қажетті объектілер ғана болуы тиіс, онда сол міндетке керек емес нысандар болмауы керек. Сондықтан мәліметтер қорын жобалау мен жасау кезінде модельді қалыптастыру процесі маңызды роль атқарады. Егер бұл процесс тиісті деңгейде орындалатын болса, онда модель міндеттерді дұрыс шешу көзіне айналады. Әзірленген модель тұғырнамалық модель деп аталады. Мәліметтердің тұғырнамалық моделі сонымен қатар семантикалық модель деп те аталады, себебі ол нақты әлемдегі заттардың мәндерін белгілеп отырады. Тұғырнамалық модельдің басты элементтері объектілер мен қатынастар болып табылады.
Модельдегі міндетті шешу үшін қажетті нақты әлемнің категорияларын бейнелейтін нысандар нақты заттар (физикалық нысандар), сондай-ақ абстрактілі (тұғырнамалық) заттар болуы мүмкін. Нақты нысандардың мысалдары адамдар, машиналар, ағаштар, кітаптар, құрылыстар және т.б. болып табылады. Компаниялар, іскерлік әрекеттер, білімдер, дағдылар және т.б. – бұл абстрактілі нысандар. Бір нысанға көптеген бір типті элементтер жиыны біріктіріледі, ол объектілі жиын деп аталады. Жобалау барысында объектілі жиындарды нақтылау мен қорытындылау қажеттілігі туындайды. Мысалы, келесі суретте (1.9-сурет) «Заңды тұлға» және «Жеке тұлға» деген объектілі жиындар «Клиент» объектілі жиынының нақтылануы болып табылады.
1.9-сурет. Объектілі жиынды нақтылау
Жалпы жағдайда, нақтылау дегеніміз – бұл басқа объектілі жиынның ішкі жиыны болып табылатын объектілі жиын.
Қорытындылау дегеніміз - бұл нақтылауға кері келетін процесс және ол өз құрамында өзге объектілі жиындарды қамтитын объектілі жиын болып табылады.
Тұғырнамалық модельдің басқа элементі қатынас болып табылады. Қатынас екі объектілі жиынды байланыстырады. Қатынас бір объектілі жиынның элементі мен басқа объектілі жиынның элементінен тұратын жұптарды құрайды. Осылайша, қатынас бастапқы объектілі жиындардың сәйкес элементтерінен көптеген жұптарды құрайды. Қатынастың өзі құрамдас деп аталатын объектілі жиын болып табылады. Қатынас көбінесе етістік арқылы беріледі. Мысалы, «еркек» және «әйел» деген объектілі жиындар «неке құрған» деген қатынаспен байланыстырылуы мүмкін және сол арқылы «жанұялық жұп» деген құрамдас жиынды құрайды. Құрамдас жиын келесі суретте (1.10-сурет) көрсетілгендей өзге объектілі жиынмен байланыстырылуы мүмкін.
1.10-сурет. Құрамдас жиынды байланыстыру
Қатынас бір объектілі жиынның басқа объектілі жиынның бір элементімен байланысқан элементтерінің санын көрсететін қуаттылығымен сипатталады. Ең төмен және ең жоғары қуаттылықтар болады. Мысалы, «неке құрған» қатынасының ең жоғары қуаттылығы әрбір бағытта 1-ге тең, басқаша айтқанда 1.11-суретте көрсетілгендей әрбір еркек тек бір ғана әйелмен неке құра алады және, керісінше, әрбір әйел тек бір ғана еркекпен неке құра алады (1.11-сурет).
1.11-сурет. Бірдің-бірге қатынасы
Ең төмен қуаттылық бұл мысалда 0-ге тең. Қуаттылығы екі бағытта да 1-ге тең болатын қатынас бірдің-бірге қатынасы деп аталады. Егер бір бағыттағы қатынастың қуаттылығы 1-ге тең болса, ал екіншісінде – көп болса, онда мұндай қатынас бірдің-көпке қатынасы деп аталады. Келесі суретте (1.12-сурет) бірдің-көпке қатынасы көрсетілген.
1.12-сурет. Бірдің-көпке қатынасы
Келесі суретте (1.13-сурет) көптің-көпке қатынасы көрсетілген,
1.13-сурет. Көптің-көпке қатынасы
Бұл жағдайда студент көп курстарға қатысады, және бір курсқа көптеген студенттер қатысады.
Бинарлық және n-дік қатынастарға бөлінеді. Бинарлық қатынастар дегеніміз – бұл екі объектілі жиындардың арасындағы қатынастар. Жоғары ретті қатынастар немесе n-дік қатынастар дегеніміз – бұл үш және одан да көп объектілі жиындардың арасындағы қатынастар. Мысалы, келесі суретте (1.14-сурет)
1.14-сурет. n-дік қатынастар
«тұрмыстық аспаптар заводы», «шаңсорғыш» және «кір жуу машиналар» деген объектілі жиындар «өндіреді» деген қатынаспен байланысқан.
Объектілі жиынның элементтері атрибуттардың қандайда бір саңына ие болады. Мысалы, адамның есімі, туған күні, жынысы, мекен-жайы және т.б. мәліметтер болады. Жалпы жағдайда атрибут бір объектінің екінші объектіге функционалдық қатынасын анықтайды, яғни олар өзара атрибуттар жиынтығымен ажыратылады.
Атрибуттың мәні объектілі жиынның әрбір элементі үшін бір мәнді анықталған. Егер ол анықталмаған болса, онда сол элементке арналған атрибут бос мәнге ие болады.
Бір элементке арналған атрибуттардың мәндері, мысалы, жасы, мекен-жайы және т.б. өзгеріп отыруы мүмкін. Сол себептен мәндері өзгермейтін атрибуттарды білген маңызды, себебі оларды кілт ретінде пайдалануға болады.
Егер де нысан басқа нысанның нақтыламасы болып табылса, осы нақтыланған нысан жалпылама нысанның барлық атрибуттары мен қатынастарын мұраға алады. Сонымен қатар, нақтыланған нысанның өз атрибуттары пайда болуы мүмкін. Мысалы, келесі суретте (1.15-сурет) нақтыланған нысан «үйленген», компанияда жұмыс істейді, яғни «жұмыс істейді» қатынасын мұраға алады, сонымен қатар «адам» жалпылама объектісінің барлық атрибуттарын (есімі, мекен-жайы, туған жылы) мұраға алады, және өзіндік «зайыбы» атрибуты болады.
1.15-сурет. Атрибуттар мен қатынастарды мұраға алу
Қомақты мәліметтердің қорын жобалау кезінде жасаушылардың әртүрлі топтары қатыстырылуы мүмкін, олар мәліметтердің жалпы қорының шектелген бөлігінің кейіптемесі болып табылатын мәліметтердің бірнеше моделін құрайды. Бұл модельдерді мәліметтердің бір ғана тұғырнамалық моделіне біріктіру қажеттілігі туындайды. Модельдерді біріктіру процесіне артық, қайталана беретін объектілі жиындарды, қатынастар мен атрибуттарды жою, сондай-ақ мәліметтердің кейіптемесін анықтайтын жаңа қатынастарды анықтау арқылы анықтау жатады.
Бақылау сұрақтары:
Мәліметтер қорының құрылымы мәліметтердің берілуінің қай деңгейінде сипатталады?
Мәліметтердің берілуінің қандай деңгейі тасымалдағыштағы мәліметтердің орналасу тәсіліне сәйкес?
МҚ берілуінің қанша деңгейі бар?
Пайдаланушы деңгейінде мәліметтер қоры қандай түрге ие болады?
Әдебиеттер:
Бидайбеков Е.Ы., Елубаев К., Шекербекова Ш.Т. Мәліметтер қоры және ақпараттық жүйелер. Алматы., 2010.
Глушаков С.В., Ломотько Д.В. Базы данных.-Харковь: Фолио; М.:ООО «Издательство АСТ», 2002.
Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных. Учебник для высших учебных заведений. Под редакцией проф. А. Д. Хомоненко. – Санкт-Петербург: «КОРОНА принт», 2000 г
7-ДӘРІС. Мәліметтер қорын жобалау.
Қарастырылатын сұрақтар:
Мәліметтер қоры құрылымына әкімшілік жасаудың модельдері, әдістері және программалық құралдары.
Мәліметтер тұтастығын бақылау.
Мәліметтер қорында ақпараттарды қорғау.
Мәліметтер қорымен жұмыс істейтін ақпараттық жүйелердегі жалпыға арналған программалық қамтамасыз ету мәліметтер қорын басқару жүйесі (МҚБЖ) деп аталады. Мәліметтер қорын басқару жүйелері – бұл мәліметтер қорын құруға, енгізуге және өңдеуден өткізуге арналған тілдік және программалық құралдардың кешені.
Әлемде МҚБЖ-ның 1000-нан астам түрі бар. Мәліметтер қорын басқарудың әр алуан жүйелері мәліметтердің әр түрлі модельдерін пайдаланады. Мәліметтер қорының әр түрлі модельдеріне негізделген МҚБЖ-лардың мысалдарына төмендегілер жатады:
Иерархиялық модель – IMS PC/Focus, Team-UP, Data Edge;
Желілік модель- IDMS, db-Vista III;
Реляциялық модель - Dbase, DB2(IBM), FoxBase және FoxPro (Fox Software), Paradox, Dbase for Windows жәнеInterBase (Borland), Visual FoxPro және Access (Microsoft), Clarion (Clarion Software), Ingress (ASK Computer Systems), Oracle (Oracle), Informix;
Постреляциялық модель - Bubba, DasDb;
Көпөлшемді модель - EssBase (Ardor Software), Media Multi-matrix (Speedware), Oracle Express Server (Oracle), Cache (InterSystems);
Объектілі бағытталған модель – POET( POET Sofyware),Jasmine (Computer Associates), Versant (Versant Technologies), 02 (Ardent software), Iris, Orion, Postgress,ODB-Jupiter.
Мәліметтер қорының сервері ретінде келесі МҚБЖ-ларболуы мүмкін: NetWare SQL (Novell), MS SQL Server (Microsoft), InterBase (Borland), SQLBase Serve (Gupta), Intelligent DataBase (Ingress), Oracle, Informix көптеген пайдаланушыларға арналған МҚБЖ болып табылады, ол текті емес ортада жұмыс істейді (әртүрлі ЭЕМ мен ЖЖ).
МҚБЖ-ның негізгі қызметіне келесілер жатады:
мәліметтерді құру және бақылау;
мәліметтерді қорғау және бақылау;
көптеген пайдаланушылардың мәліметтерге қол жеткізуі;
пайдаланушыға мәліметтерді манипуляциялау мүмкіндігін ұсыну;
қолданбалы программаларды құру мүмкіндігі.
Мәліметтерді құру мен бақылау мәліметтер сөздігінің көмегімен орындалады. Мәліметтердің сөздік/каталогы мәліметтердің құрылымы, мәліметтердің типтері, оларды ұсыну форматтары, мәліметтердің өзара байланысу сұлбалары, пайдаланушылар, мәліметтерді қорғау мен оларға қол жеткізу кодтары туралы ақпаратты орталықтандырылған түрде сақтауға арналған. Көбінесе сөздіктің қызметін МҚБЖ-лар орындайды және олар жүйелік мәзірден шақыртылады немесе утилиттері арқылы орындалады. Мысалы, Orion атты оқу мәліметтер қорының келесі түрдегі сөздігі болуы мүмкін:
SYSTABLES NAMECREATORCOLCOUNT
Salespeople AGU 4
Customers AGU 3
Orders AGU 5
SYSCOLUMNS NAMETBNAME COLTYPE
Snum Salespeople Integer
Sname Salespeople Char
City Salespeople Char
Manager Salespeople Integer
Cnum Customers Integer
Cname Customers Char
City Customers Char
Onum Orders Char
Amount Orders Real
Date Orders Data
Cnum Orders Integer
Snum Orders Integer
Реляциялық МҚБЖ-ларда мәліметтер сөздігі реляциялық кестелер жинағы түрінде сақталады.
Сөздік/каталог мәліметтердің анықтамаларын мәліметтердің өзінен бөлек түрде қолдауға мүмкіндік береді, сол арқылы мәліметтердің тұтастығын қамтамасыз етеді.
Мәліметтерді қорғау мәліметтерге рұқсатсыз қол жеткізуді болдырмау мақсатында парольдауды, кодтауды (шифрлеу) және мәліметтердің кейіптеулерін құруды қамтамасыз етеді.
Мәліметтерді деңгейіндегі тұтастық мен қарама-қайшылықсыздық мәліметтер элементтерінің мәніне шектеулер қоюмен, сондай-ақ мәліметтер қорына өзгерістер енгізу кезінде резервтік көшірмелерді автоматты түрде құру арқылы қамтамасыз етіледі.
Сілтемелер деңгейіндегі тұтастық сыртқы кілттердің мәндері үшін әрдайым соған сәйкес бастапқы кілттердің мәндері болуы тиіс дегенді білдіреді. Бастапқы кілті бар кестелердегі, осы бастапқы кілтке сілтемелер (сыртқы кілттер) бар кестелердегі жазбаларды өзгерткен кезде немесе жойғанда МҚБЖ сыртқы кілттер мәндеріне «ауада» тұрып қалмас үшін сәйкес өзгертулер жасалуын бақылап отырады. Бұл жағдайда сыртқы кілттердің сәйкес мәндері бар жазбалар жойылады, немесе оларға Null-мәндер не келісім бойынша мәндер беріледі, немесе олар өзгеріссіз қалады. Бұл амалдар CREATE TABLE, DROP TABLE және ALTER TABLE командаларында қарастырылған. Сілтемелер деңгейіндегі мәліметтер тұтастығын сақтау 3.1-суретте көрсетілгендей мәліметтер қорындағы каскадты өзгеріске алып келуі мүмкін.
Бастапқы кілт
|
...
|
Басқа өрістер
|
...
|
|
|
1005
|
|
|
...
|
|
|
Кесте А
Бастапқы кілт
|
Сыртқы кілт
|
...
|
Басқа өрістер
|
...
|
|
|
|
2003
|
1005
|
|
|
...
|
|
|
|
2010
|
1005
|
|
|
...
|
|
|
|
Кесте В
Бастапқы кілт
|
Сыртқы кілт
|
...
|
Басқа өрістер
|
...
|
|
|
|
3004
|
2003
|
|
|
...
|
|
|
|
Кесте С
МҚБЖ-дағы мәліметтерді тұтастығын сақтау үшін транзакциялар қолданылады. Транзакция деп мәліметтер қорындағы МҚБЖ басынан аяғына дейін қадағалайтын, мәліметтермен жүргізілетін амалдардың қандай да бір тізбегі аталады. Транзакция сәтті аяқталған жағдайда амалдардың нәтижелері мәліметтер қорында сақталады. Құрал-жабдықтың немесе программалық қамтудың жұмысы тоқтаған кезде, сондай-ақ пайдаланушы транзакцияны аяқтаудан бас тартқан кезде транзакция аяқталмаған (үзілген) күйінде қалады. Бұл жағдайда мәліметтермен орындалған амалдардың нәтижелері мәліметтер қорына ауыстырылмайды.
Мәліметтерге қол жеткізу мүмкіндігі көптеген пайдаланушыларға мәліметтер қорына жылдам және тиімді түрде жүгінуге мүмкіндік береді. МҚБЖ көптеген пайдаланушылар бір мезгілде қол жеткізуге ие болған жағдайда пайдаланушының бірі мәліметтерге жүгінсе, енді бірі сол кезде оларға өзгертулер енгізіп жататындай келіспеушілік оқиғалардың туындамауын бақылап отырады.
МҚБЖ пайдаланушыларға мәліметтерді манипуляциялауға, мәліметтер қорынан тікелей есеп берулерді сұрауға және алуға, сондай-ақ мерзімді есеп берулерді құрастыру үшін сұраныстарды сақтаудың мол мүмкіндіктерін ұсынады.
Көптеген МҚБЖ-ларда қосымшаларда жасауға арналған ішіне орнатылған программалау тілдері болады. Бұл қосымшалар exe-файлдар тәрізді мәліметтер қорымен дербес түрде, немесе сол МҚБЖ-ның құрамында жұмыс істеуі мүмкін.
МҚБЖ-ның мәліметтермен жұмыс істеу қызметтері екі тілде қамтамасыз етіледі:
мәліметтерді сипаттау тілі;
мәліметтерді манипуляциялау тілі.
Бұл тілдер көптеген МҚБЖ-ларда екі түрде QBE (Query by Example) үлгісі бойынша сұраныс жасау тілі ретінде және SQL (Structured Query Language) тілі ретінде жүзеге асырылған. QBE және SQL тілдерінің теориялық негізі реляциялық есептеу болып табылады. QBE тілі пайдаланушыларға мәліметтер қорын құру мен манипуляциялау үшін сауалнама формаларын ұсынады, оларды толтыру жұмысты жеңілдетеді.
Тағы да бір айта кететін нәрсе, физикалық деңгейде әр түрлі МҚБЖ-лар мәліметтерді ұсынудың әр түрлі форматтары болады. Әр алуан МҚБЖ-лардың мәліметтері өзара үйлесімділігі үшін арнайы интерфейстер, драйверлер әзірленеді. Мысалы, Microsoft фирмасы ODBC (Open Database Connectivity) драйверін әзірлеп шығарды, ол аса кең тараған МҚБЖ-лар форматтарында мәліметтер қорымен жұмыс жүргізуге мүмкіндік береді. Көптеген МҚБЖ-лардың басқа форматта ұсынылған мәліметтер қорын оқуға арналған қоса орнатылған интерфейстері бар.
МҚБЖ-ға программалардың келесі негізгі түрлері жатады:
толық қызметті МҚБЖ;
МҚ серверлері;
МҚ клиенттері;
МҚ-мен жұмыс істеу бағдарламаларын жасау құралдары.
Толық қызметті МҚБЖ (ТҚМҚБЖ) алдымен үлкен машиналарға арналып, кейіннен мини-машиналар мен ДЭЕМ-дерге арналып пайда болған дәстүрлі МҚБЖ болып табылады. Барлық МҚБЖ-лардың арасында қазіргі заманғы толық қызметті МҚБЖ саны жағынан көп және өзінің мүмкіндіктері бойынша аса қуатты болып табылады. Толық қызметті МҚБЖ-ларға, мысалы, Clarion Database Developer, DataBase, Dataplex, dBase IV, Microsoft Access, Microsoft FoxPro және Paradox R: BASE сияқты пакеттер жатады.
Әдетте ТҚМҚБЖ-лардың меню командалары арқылы МҚ-мен негізгі әрекеттерді орындауға мүмкіндік беретін дамыған интерфейсі болады: кестелердің құрылымын құрып, түрлендіруге, мәліметтерді енгізуге, сұраныстарды құрастыруға, есеп берулерді әзірлеуге, оларды басып шығаруға және т.б. сұраныстар мен есеп берулерді құрастыру үшін прогаммалаудың қажеті жоқ, оның орнына QBE (Query by Example – үлгі бойынша сұраныстарды құрастыру) тілін қолданған ыңғайлы. Көптеген ТҚМҚБЖ-ларға кәсіби құрастырушыларға арналған программалау құралдары кіреді.
Кейбір жүйелердің қосалқы құралы ретінде МҚ сұлбаларын жобалаудың қосымша құралдарында немесе СASE-ішкі жүйелерінде болады. Басқа МҚ-ларға немесе SQL-серверлердің мәліметтеріне қол жеткізуді қамтамасыз ету үшін толық қызметтік МҚБЖ-ларды факультативтік модульдер болады.
МҚ серверлері ЭЕМ желілерінде мәліметтерді өңдеу болып орталықтарын құруға арналған. Қазіргі кезде МҚ-лардың бұл тобының аз болып табылады алайда олардың саны біртіндеп артуда. МҚ серверлері басқа программалар (клиенттер) сұратқан мәліметтерді басқару қызметтерін SQL операторларының көмегімен жүзеге асырады.
Келесі бағдарламалар МҚ серверлерінің мысалы болып табылады: NetWare SQL (Novell), MS SQL Server (Microsoft), InterBase (Borland), SQLBase Server (Gupta), Intelligent Database (Ingress).
Жалпы жағдайда МҚ серверлері үшін клиенттік программалар ретінде әртүрлі программалар қолданылуы мүмкін: ТҚМҚБЖ, электронды кестелер, мәтіндік процессорлар, электронды пошта программалары және т.б. Бұл жағдайда «клиент – сервер» жұбының элементтері бір немесе бірнеше программалық қамтамасыз етудің өндірушілеріне жатуы мүмкін.
Клиенттік және серверлік бөліктер бір фирмада жасалған жағдайда олардың арасындағы қызметтердің үлестірілуі ұтымды түрде орындалған деп күту табиғи нәрсе. Қалған жағдайларда, әдетте, мәліметтерге «қандай жолмен болсын» қол жеткізуді қамтамасыз ету мақсаты көзделеді. Келесі жағдай осындай қосылыстың мысалы болып табылады: көп қызметтік МҚБЖ-лардың бірі сервер рөлін, ал екінші МҚБЖ (өзге фирма өндірген) – клиент рөлін атқарады. SQL Server (Microsoft) МҚ сервері үшін клиенттік (ауқымдық) программалар ретінде көптеген МҚБЖ-лар болуы мүмкін, мысалы: dBASE IV, Blyth Software, Paradox, DataEase, Focus,1-2-3, MDBS ІІІ, Revelation және басқалары сияқты.
МҚ-лармен жұмыс істеу программаларын жасау құралдары келесі бағдарламалардың әралуан түрлерін:
клиенттік программаларды;
МҚ серверлері мен олардың жекелеген компоненттерін;
пайдаланушылардың қосымшаларын құрастыруға қолданылуы мүмкін.
Бірінші және екінші түрдегі программалар саны жағынан аздау болып келеді, себебі олар негізінен жүйелі программалаушыларға арналған. Үшінші түрдегі пакеттер көптеп саналуда, алайда олардың саны толық қызметтік МҚБЖ-ларға қарағанда аз.
Пайдаланушы қосымшаларын жасау құралдарын программалау жүйелері жатады, мысалы Clipper, түрлі программалау тілдеріне арналған әртүрлі программалау кітапханалары, сондай-ақ әзірлемелерді (соның ішінде клиент-сервер типіндегі жүйелерді) автоматтандыру пакеттері. Аса кең тараған құралдар ретінде келесі құрал-жабдықтық жүйелерді атап кетуге болады: Delphi және Power Builder (Borland), Visual Basic (Microsoft), SILVERRUN (Computer Advisers Inc.), S-Designor (SDP мен Powersoft) және ERwin (LogicWorks).
Жоғарыда аталған құралдармен қатар мәліметтерді басқару мен МҚ қызмет көрсетуді ұйымдастыруға арнап түрлі қосымша құралдар, мысалы, транзакциялар мониторлары қолданылады (4.2 ішкі бөлімін қараңыз).
МҚБЖ-ларды қолдану сипаты бойынша дербес және көп пайдаланушыға арналған деп бөлінеді.
Дербес МҚБЖ-лар әдетте, дербес МҚ-лары мен олармен жұмыс істейтін онша қымбат емес қосымшаларды жасау мүмкіндігін қамтамасыз етеді. Дербес МҚБЖ-лар немесе олардың көмегімен жасалған қосымшалар көбінесе көп пайдаланушыға арналған МҚБЖ-ның клиенттік бөлігі ретінде қызмет атқаруы мүмкін. Дербес МҚБЖ-ларға, мысалы, Visual FoxPro, Paradox, Clipper, dBase, Access және т.б. жатады.
Көп пайдаланушыға арналған МҚБЖ-ларға МҚ сервері мен клиенттік бөлігі кіреді және, әдетте, бір текті емес (ЭЕМ-дер мен амалдық жүйелері әртүрлі болып келетін) есептеу жүйесінде қызмет ете алады. Көп пайдаланушыға арналған МҚБЖ-ларға, мысалы Oracle мен Informix МҚБЖ-лар жатады.
Қолданылатын мәліметтер моделі бойынша МҚБЖ-лар (МҚ тәрізді) иерархиялық, желілік, реляциялық, объектілі-бағытталған және басқа түрлерге бөлінеді. Кейбір МҚБЖ-лар бір мезгілде бірнеше мәліметтер моделіне қолдау көрсете алады.
Пайдаланушы тұрғысынан МҚБЖ ақпаратты сақтау, өзгерту (толықтыру, редакциялау және алып тастау) және өңдеу қызметтерін сондай-ақ түрлі баспа құжаттары жасау мен алу қызметтерін жүзеге асырады.
Мәліметтер қорында сақталған ақпаратпен жұмыс істейтін МҚБЖ программалар мен пайдаланушыларға келесі екі тілі ұсынады:
мәліметтерді сипаттау тілі – мәліметтердің логикалық құрылымын сипаттауға арналған декларативтік типтегі жоғары деңгейлі процедуралық емес тіл;
мәліметтерді манипуляциялау тілі – мәліметтерімен негізгі амалдарды: енгізу, модификациялау және сұраныс бойынша мәліметтерді таңдауды, орындауды қамтамасыз ететін құрылымдардың жиынтығы.
Аталған тілдердің түрлі МҚБЖ-ларда өзара айырмашылықтары болуы мүмкін. Стандартталған екі тіл аса кең таратылған: QBE (Query By Example) – үлгі бойынша сұраныс тілі және SQL (Structured Query Language) – сұраныстардың құрылымдалған тілі. QBE негізінен мәліметтерді манипуляциялау тілінің қасиеттерінен тұрады, ал SQL өзінде екі түрдегі тілдердің қасиеттерін – мәліметтерді сипаттау және манипуляциялау қасиеттерін жинақтаған.
МҚБЖ-ның жоғарыда аталған қызметтері, өз кезегінде, одан төмен деңгейдегі келесі негізгі қызметтерді қолданады:
сыртқы жадыдағы мәліметтерді басқару;
жедел жадының буферлерін басқару;
транзакцияларды басқару;
МҚ-дағы өзгертулер журналын жүргізу;
МҚ-ның тұтастығы мен қауіпсіздігін қамтамасыз ету.
Оларды төмен деңгейлі деп атайық:
Қазіргі МҚБЖ-ларда аталған қызметтерді жүзеге асырудың қажеттілігі мен ерекшеліктеріне қысқаша сипаттама беріп кетейік.
Әртүрлі жүйелерде сыртқы жадыдағы мәліметтерді басқару қызметтерінің жүзеге асырылуы ресурстарды басқару деңгейінде де (ОЖ файлдық жүйелерін немесе ДЭЕМ құрылғыларын тікелей басқаруды қолдану арқылы), мәліметтерді басқару алгоритмдердің логикасы бойынша да ажыратылуы мүмкін. Мәліметтерді басқару әдістері мен алгоритмдері негізінен МҚБЖ-ның «ішкі шарасы» болып табылады және оларды пайдаланушыға тікелей қатысы жоқ. Осы қызметін жүзеге асырылу сапасы арнайы АЖ-лардың мысалы, орасан зор МҚ-лармен, күрделі сұраныстармен, мәліметтерді өңдеуде өткізудің үлкен мөлшерімен жұмыс істеуінің тиімділігіне аса зор әсерін тигізеді.
Мәліметтерді буферлеу және соның салдарынан жедел жады буферлерін басқару қызметін жүзеге асырудың қажеттілігі жедел жады көлемінің сыртқы жады көлеміне қарағанда біз болуымен негізделген.
Буферлер сыртқы және жедел жадының арасындағы алмасуды жеделдетуге арналған жедел жадыны саласы болып табылады. Буферлерде МҚ үзінділері уақытша сақталады, олардағы мәліметтер МҚБЖ-ға жүгінген кезінде пайдаланылады немесе өңдеуден өткізгеннен кейін мәліметтер қорына жасыру жоспарланады.
Транзакциялардың механизмі МҚБЖ-да қордағы мәліметтердің тұтастығын қамтамасыз ету үшін қолданылады. Транзакция деп МҚБЖ басынан аяғына дейін қадағалап отыратын МҚ-дан мәліметтерімен жүргізілетін амалдардың қандай да бір бөлінбейтін тізбегі аталады. Егер де қайсыбір себептермен (құрал-жабдықтың істен шығуы және тоқтап қалуы, қосымшаны қоса алғанда, программалық қамтудың қателіктерін) транзакция аяқталмай қалса, онда оның жұмысы тоқтатылады.
Транзакцияға негізгі үш қасиет тән болып келеді деп айтады:
атомарлық (транзакцияға кіретін барлық амалдар орындалады немесе бірде-бір амал орындалмайды);
топтамалануы (сериалдануы) (бір мезгілде орындалатын транзакциялардың өзара әсері жоқ);
ұзақ мерзімділігі (тіпті жүйе күйреген жағдайдың өзінде бекітілген транзакция қорытындылары жоғалып кетпейді).
Транзакцияның мысалы ретінде банктік жүйеде бір есепшоттағы ақшаны екіншісіне аудару амалын айтуға болады. Бұл жерде, ең болмағанда екі қадамдық үдеріс қажет. Алдымен бір есепшоттағы ақша алынады, сосын олар екінші есепшотқа салынады. Егер әрекеттердің біреуі сәтсіз орындалса, әрекеттің нәтижесі дұрыс болмайды және шоттардың арасындағы теңгерім бұзылады.
Транзакцияның қатар түрде орындалатын бір пайдаланушыға арналған және көп пайдаланушыға арналған МҚБЖ-ларда транзакцияларды бақылау өте маңызды. Соңғы жағдайда транзакциялардың топтамалануы туралы айтылады. Қатар орындалатын транзакциялардың топтамалануы деп транзакцияларды жүзеге асырудың қосынды әсері оларды біртіндеп орындаудың әсеріне тепе-тең болатындай етіп құруды айтады. Оларды орындау жоспарын (сериялық жоспарды) құруды түсінеді.
Транзакциялар қоспасын қатар орындаған кезде келіспеушіліктер (блоктаулар) туындауы мүмкін, олардың шешу МҚБЖ-ның қызметіне жатады. Мұндай жағдайлар табылған кезде әдетте бір немесе бірнеше транзакциямен орындалған өзгерістердің күшін жою арқылы «қайта шегіндіру» жүргізіледі.
МҚ-ғы өзгертулер журналын жүргізу (өзгертулерді журналдау) МҚБЖ ақпараттық істен шығулар мен тұрып қалулар, сондай-ақ программалық қамтуда қателер болған жағдайда қордағы мәліметтердің сақталу сенімділігін қамтамасыз ету үшін орындалады.
МҚБЖ журналы дегеніміз – бұл пайдаланушының тікелей қолы жетпейтін және мәліметтер қорындағы барлық өзгерістер туралы ақпаратты жазу үшін қолданылатын ерекше МҚ немесе негізгі МҚ-ның бөлігі. Әртүрлі МҚБЖ-ларда журналға әртүрлі деңгейлердегі МҚБЖ-дағы өзгерістерге сәйкес келетін жазбалар, яғни сыртқы жадының бетін модификациялаудың ішкі ең кіші амалынан бастап МҚ модификациялаудың логикалық амалдарына (мысалы, жазбаны салу, бағанды жою, өрістегі мәнді өзгерту) және транзакцияларына дейін енгізілуі мүмкін.
МҚ-ға өзгертулер журналын жүргізу қызметін тиімді орындау үшін журналдың өзін жұмыс қалпында ұстау және сақтау сенімділігін қамтамасыз ету қажет. Кейбір жағдайларда жүйеде журналдың бірнеше көшірмелері сақталады.
МҚ-ның тұтастығын қамтамасыз ету, әсіресе МҚ-ны желілерде пайдалану үшін, МҚ-ның табысты түрде қызмет етуінің қажетті шарты болып табылады. МҚ-ның тұтастығы дегеніміз – мәліметтер қорында пәндік саланы толық қарама-қайшылықсыз және дұрыс көрсететін ақпарат бар екендігін білдіретін мәліметтер қорының қасиеті. МҚ-ның тұтастығын қолдауға оның бүтіндігін тексеру және мәліметтер қорында қарама-қайшылықтар анықталған жағдайда оның қалпына келтірулер жатады. МҚ-ның тұтас жағдайы бүтіндігін шектеу арқылы қорда сақталып жатқан мәліметтер қанағаттандыруы тиіс болатын шарттар түрінде сипатталады. Аталған шарттарының мысалы өздері туралы мәліметтер МҚ-да сақталатын объектілер атрибуттарының мүмкін болатын мәндерінің диапазондарын шектеу немесе реляциялық МҚ-лар кестелерінде қайталанып отыратын жазбалардың болмауы болып табылуы мүмкін.
Қауіпсіздікті қамтамасыз етуге МҚБЖ-да қолданбалы программаларды, мәліметтерді шифрлеумен, парольмен қорғаумен, мәліметтер қорына және оның жекелеген элементтеріне (кестелерге, формаларға, есеп берулерге және т.б.) қол жеткізу деңгейлерін қолдаумен қол жеткізіледі.
МҚ-ны қорғау құралдары.
Әр түрлі МҚБЖ-ларда МҚ-ны қорғау құралдары бір-бірінен біршама өзгеше болады. Borland және Microsoft фирмаларының қазіргі кездегі МҚБЖ –ларына талдау жүргізу негізінде МҚ-ларды қорғау құралдары шартты түрде екі: негізгі және қосымша топқа бөлінеді деп тұжырымдауға болады.
Ақпарат қорғаудың негізгі құралдарына келесі құралдарды жатқызуға болады:
парольдік қорғау;
мәліметтер мен программаларды шифрлеу;
МҚ объектілеріне қол жеткізу құқықтарын орнату;
МҚ кестелерінің өрістері мен жазбаларын қорғау.
Парольдік қорғау МҚ-ны рұқсат етілмеген қол жеткізуден қорғаудың қарапайым және тиімді әдісі болып табылады. Парольдерді соңғы пайдаланушылар немесе МҚ әкімшілері орнатады. Парольдерді есепке алу мен сақтауды МҚБЖ-ның өзі жүргізетін. Әдетте парольдер МҚБЖ-ның белгілі бір жүйелік файлдарындща шифрленген түрінде сақталады. Сол себептен парольді табу және анықтау мүмкін емес. Парольді енгізгеннен кейін МҚБЖ пайдаланушысына қорғалған МҚ-мен жұмыс жүргізудің барлық мүмкіндіктерін ұсынылады. МҚБЖ-ның өзін парольмен қорғаудың қажеті жоқ.
Мәліметтерді (бүкіл қорды немесе жекелеген кестелерді) шифрлеу әдісі «сол МҚБЖ-дағы МҚ-ның форматын білетін» өзге программалар мәліметтерді оқи алмауы үшін қолданылады. Мұндай шифрлеу (Microsoft Access-те қолданылатын), онша да көп нәрсе бермейді, себебі кез келген тұлға МҚ-ны «туған» МҚБЖ көмегімен шифрін анықтауы мүмкін. Егер шифрлеу мен шифрді шешу парольді сұраса, онда пароль дұрыс енгізілген жағдайда шифрді шешіп алу мүмкін болады. Access-тің жасаушылары осыны келесі нұсқаларында ескеретініне сенімдіміз.
Программалардың бастапқы мәтіндерін шифрлеу тиісті алгоритмдердің сипаттамасын өзіне оларға қол жеткізу рұқсат етілмеген пайдаланушыдан жасырып қалуға мүмкіндік береді.
МҚБЖ-ның негізгі ресурстарын пайдалануды бақылау мақсатында көптеген жүйелерде МҚ объектілеріне қол жеткізу құқықтарын орнату құралдары болады. Қол жеткізу құықтары объектілерге қатысты мүмкін болар әрекеттерді анықтайды. Нысанның иегері (нысанды құрастырған пайдаланушы), сондай-ақ МҚ әкімшісі барлық құқықтарға ие болады. Қалған пайдаланушылар әртүрлі нысандарға түрлі қол жеткізу деңгейлеріне ие бола алады.
Кестелерге қатысты жалпы жағдайда келесі қол жеткізу құқықтары қарастырылуы мүмкін:
мәліметтерді қарап шығу (оқу);
мәліметтерді өзгерту (редақциялау);
жаңа жазбаларды қосып жазу;
мәліметтерді қосып жазу және алып тастау;
барлық амалдар, соның ішінде кестенің құрылымын өзгерту.
Кестедегі мәліметтерге, жекелеген өрістер мен жекелеген жазбаларға қатысты қорғау шаралары қолданылуы мүмкін. Өзімізге мәлім реляциялық МҚБЖ-ларда жекелеген жазбалар арнайы қорғалмайды, әйтсе де іс-тәжірибеден бұл қажет болған жағдайлардың мысалын келтіруге болады. Қол жеткізу құқықтарын бақылау өздерінде жекелеген жазбалардың идентификация бар объектілі – бағытталған МҚБЖ-ларда болуы тиіс сияқты (объектілі-бағытталған моделдің реляциялық моделден бір айырмашылығы).
Кестелердің өрістеріндегі мәліметтерді қатысты қол жеткізудің келесі құқық деңгейлерін атап өтуге болады:
қол жеткізуге толығымен тыйым салу;
тек оқу;
барлық адамдарға рұқсат ету (қарап шығу, жаңа мәндерді енгізу, алып тастау және өзгерту).
Формаларға қатысты негізгі екі амал ескерілуі мүмкін: жұмыс істеу үшін шақырту және жасау (Құрастырушыны шақырту). Құрастырушыны шақыртуға тыйым салуды соңғы пайдаланушы байқаусызда қосымшаны бұзып алмауы үшін, экрандық формалар үшін дайын қосышаларды дайындаған дұрыс. Экрандық формалардың өзінде бөлек элементтер де қорғалуы мүмкін. Мысалы, бастапқы кестенің кейбір өрістері мүлде болмауы немесе пайдаланушыдан жасырылуы мүмкін, ал кейбір өрістерді – қарап шығу үшін қол жеткізуге болады.
Келесілерді ескермегенде есеп берулер көбінесе экрандық формаларға ұқсас болып келеді. Біріншіден, олар кестелердегі мәліметтерді өзгертуге мүмкіндік бермейді, ал екіншіден, олардың негізгі қызметі – ақпаратты қағазға басып шығару. Экрандық формалар тәрізді, есеп берулерге де оларды жасау құралдарын шақыртуға тыйым салу орнатылуы мүмкін.
МҚБЖ қосымшаларында қолданылатын программалардың мәтіндерін (кездейсоқ және әдейі) қарау мен өзгертуге жол бермеу үшін шифрлеумен қатар, оларды парольмен қорғауды қолдануға болады.
МҚ-ны қосымша қорғау құралдарына өздерін тікелей қорғау құралдарына жатқызуға болмайтын, әйтсе де мәліметтердің қауіпсіздігіне тікелей әсер ететіндерін жатқызуға болады. Оларға келесі құралдар жатады:
типіне байланысты мәліметтердің мәндерін бақылаудың ішіне орнатылған құралдары;
енгізілген мәліметтердің дәйектілігін арттыру құралдары;
кестелердің байланысының біртұтастығын қамтамасыз ету құралдары;
МҚ нысандарын желіде бірлескен түрде қолдануды ұйымдастыру құралдары.
МҚ-да редакциялай отырып, пайдаланушы мәндер енгізілетін жолдың типіне сәйкес келмейтін мәндерді кездейсоқ енгізіп қоюы мүмкін. Мысалы, нысандық өріске мәтіндік ақпаратты енгізуге тырысады. Бұл жағдайдан МҚБЖ мәндерді бақылау құралдарының көмегімен енгізуге тосқауыл қояды және пайдаланушыға қате туралы дыбыстық сигнал беру арқылы, енгізілген символдың түсін өзгерту арқылы немесе өзге әдіспен хабарлайды.
МҚБЖ-ға енгізілетін мәндердің дәйектілігін арттыру құралдары, өңдеуден өткізілген мәліметтердің семантикасымен байланысты барынша терең түрдегі бақылау жасауға қызмет етеді. Олар әдетте кестені құру кезінде мәндерге қатысты келесі шектеулерді көрсету мүмкіндігін қамтамасыз етеді: ең аз және ең көп мәндер; үнсіз қабылданатын мән (егер енгізу болмаса), міндетті түрде енгізуді талап ету; енгізудің қимаүлгісін (енгізу шаблоны) тапсыру; енгізілген мәндер бақыланатын қосымша салыстыру кестесін көрсету және т.б.
МҚ-дағы ақпараттың дәйектілігін бақылауды ұйымдастырудың аса дамыған түрі сақталынатын процедураларды жасау болып табылады. Сақталынатын процедуралар механизмі, серверде орналасқан МҚ-ларда қолданылады. Сақталып тұрған процедуралардың өзі алгоритмдері мәліметтермен қандай да бір қызметтерді (оның ішінде бақыланатыны да бар) орындауды қарастыратын программалар болып табылады. Процедуралар мәліметтермен бірге сақталады және қажет болған жағдайда қосымшалардан немесе МҚ-да қандай да бір оқиғалар орын алған жағдайда шақыртылады.
Қолданбалы есептегі шешу, әдетте, кестелерден бірнешеуіндегі ақпаратты қажет етеді. Кестелердің өздері ақпаратты өңдеу ыңғайлы болу үшін және оны қайталануын болдырмау мақсатында қандай да бір әдіспен байланыстырылады (3.3 ішкі бөлім). Байланысқан кестелердің логикалық тұтастығын қолдау қызметтерін МҚБЖ міндетіне алады (3.4 ішкі бөлім). Өкінішке орай МҚБЖ-лардың барлығы бірдей бұл қызметтерді (толықтай) жүзеге асыра бермейді, бұл жағдайда байланыстардың нақтылығына жауапкершілік қосымша жүктеледі.
МҚБЖ-ның кестелердің тұтастығын бақылауға қатысты мүмкін болар әрекеттерінің мысалын келтірейік. Екі кестенің арасында 1:М түріндегі байланыс бар делік, және соған сәйкес негізгі кетенің бір жазбасына қосалқы кестенің бірнеше жазбалары сеәйкес келуі мүмкін.
Жазбаларды қосалқы кестеге енгізген кесте жүйе негізгі кестедегі байланыс өрісіндегі сәйкес мәндердің бар болуын бақылайды. Егер енгізілетін мән негізгі кестеде болмаса, МҚБЖ жаңа жазбамен жұмысқа уақытша тосқауыл қояды және мәнді өзгертуді немесе оны тұтастай алып тастауды ұсынады.
Қосымша кестелердің жазбаларын алып тастау «ауырсынбайтындай» орындалады, ал негізгі кестенің жазбалары туралы олай деп айтуға болмайды. Негізгі кестенің жазбасы қосымша кестенің бірнеше жазбаларымен байланысқан жағдайда, екі түрлі әрекет жасауға болады: бағыныңқы жазбаның ең болмаса біреуі қалса да негізгі жазбаны алып тастамау (жазбаларды пайдаланушы алып тастауы тиіс), немесе негізгі жазбаны және барлық бағыныңқы жазбаларды түгелдей алып тастау (каскадтық жою).
Көп терезелі жүйелерде (қазіргі программалардың түгелге жуығы) және мәліметтер қорымен жұмыс істейтін үлестірілген ақпараттық жүйелерде бірдей нысандармен (МҚ нысандарын бірлесіп пайдалану) түрлі амалдарды орындаудың арасындағы келіспеушіліктерді шешу мәселесі туындайды. Мысалы, жергілікті желіні пайдаланушылардың бірі МҚ-ға өзгертулер енгізіп, ал екіншісі оның құрылымын өзгерткісі келгенде не істеу керек? Мұндай жағдайлар үшін МҚБЖ-да келіспеушіліктерді шешу механизмдері ескерілуі тиіс.
Әдетте желінің бірнеше пайдаланушылары бір мезгілде жұмыс істеген кезде, сондай-ақ бір компьютерде бірнеше қосымша жұмыс істеген кезде немесе МҚБЖ-ның бірнеше терезелерінде жұмыс істеген кезде тосқауылдар қолданылады.
Тосқауылдар МҚ-ның әртүрлі нысандарына және нысандардың жекелеген элементтеріне әсер ете алады. МҚ нысандарын тосқауылдаудың нақты жағдайы бір мезгілде нысанды пайдалану және осы нысанды жасау режиміне енуге тырысуы болып табылады. Мәліметтер қорының кестелеріне қатысты қосымша тосқауылдар жекелеген жазбалармен немесе өрістерімен жұмыс жүргізу кезінде пайда болуы мүмкін.
Тосқауылдар айқын және айқын емес болады. Айқын түрдегі тосқауылдарды пайдаланушы немесе командалар көмегімен қосымша орнатады.айқын емес тосқауылдарды орын алуы мүмкін болатын келіспеушіліктерді болдырмас үшін жүйенің өзі құрады. Мысалы, ақпаратты редакциялау кезінде МҚ құрылымының өзгертуге тырысқан жағдайда мәліметтерді редакциялау аяқталғанша МҚ-ны қайта құрылымдауға тыйым салынады.
Бақылау сұрақтары:
МҚБЖ дегеніміз не?
Қандай МҚБЖ иерархиялық деп аталады, барынша танымалдарын атап шығыңыздар?
Қандай МҚБЖ реляциялық деп аталады, кең тараған түрлерін атап шығыңыздар?
Мәліметтер қорының сервері болатын, танымал МҚБЖ атап шығыңыздар?
МҚБЖ-ның негізгі қызметтерін атаңыздар?
Мәліметтер сөздігі нені қамтамасыз етеді?
Рұқсатсыз қол жеткізуден мәліметтерді қорғау нені қарастырады?
Мәліметтер деңгейінде тұтастық және қарама-қайшылықсыз дегеніміз не?
Сыртқы кілттің мәндері үшін сәйкес алғашқы кілттердің мәндерінің бар болуы нені білдіреді?
Мәліметтер сөздігі неден тұрады?
Басынан аяғына дейін мәліметтермен жүргізілетін амалдар тізбегі қалай аталады?
Мәліметтермен жүргізілетін амалдарды орындау нәтижелері қандай жағдайда МҚ-ға тасымалданады?
ODBC дегеніміз не?
Әр түрлі МҚ-да кейіптемелердің физикалық деңгейінде жалпы жағдайда қандай форматтар болады?
QBE тілі нені кейіптейді?
QBE тілінің теориялық негіздері не болып табылады?
QBE тілі нені қамтамасыз етеді?
QBE тілі не үшін қызмет етеді?
CASE-құралдарына не жатады?
Ақпараттық жүйелерді құру және ілесе жүру үдерістерін қолдайтын программалық құралдар қалай аталады?
Қорғау жүйелерін бұзудың мүмкін зардаптарын атап шығыңыздар?
Есептеу жүйелерінде ақпаратты кешенді қорғаудың мүмкін деңгейлерін көрсетіңіздер?
Ақпараттарды қорғаудың негізгі әдістерін сипаттаңыздар?
Қорғаудың программалық-аппараттық құралдары қандай?
Қорғаудың қосымша құралдарын атаңыздар?
Әдебиеттер:
Бидайбеков Е.Ы., Елубаев К., Шекербекова Ш.Т. Мәліметтер қоры және ақпараттық жүйелер. Алматы., 2010.
Глушаков С.В., Ломотько Д.В. Базы данных.-Харковь: Фолио; М.:ООО «Издательство АСТ», 2002.
Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных. Учебник для высших учебных заведений. Под редакцией проф. А. Д. Хомоненко. – Санкт-Петербург: «КОРОНА принт», 2000 г
8-ДӘРІС. Мәліметтер қорын программалық жабдықтау.
Қарастырылатын сұрақтар:
Жүйелік және пайдаланушылық құралдар.
Мәліметтер қорын басқару жүйесі (МҚБЖ).
МҚБЖ тілдік құралдары.
SQL тілі.
Жоғарғы деңгейдегі программалау тілдердін пайдаланып мәліметтер қорын программалау.
Қазіргі уақыттағы МҚБЖ-лар мәліметтер қорымен жұмыс істеу бойынша ауқымды есептерді қосымшаны жасамай-ақ шешуге мүмкіндік береді. Дегенмен де, қосымшаны жасау дұрыс болатын жағдайлар да бар. Мысалы, егер мәліметтермен манипуляциялауды автоматтандыру қажет етілсе, МҚБЖ-ның терминалдық интерфейсі жеткілікті түрде дамымаған болса, немесе МҚБЖ-дағы ақпаратты өңдеуден өткізу жөніндегі стандарттық қызметтер пайдаланушының қажеттерін қанағаттандырмайтын болса.
Мәліметтер қорын қолданбалы программалық қамтамасыз ету дегеніміз – бұл нақты мәселелерді шешу үшін пайдаланушылардың өздері құрастыратын программалар мен жүйелер. Қазіргі уақыттағы программалаудың алгоритмдік тілдерінде – Delphi, Cu, Visual Basic және т.б. – SQL тілін пайдалана отырып мәліметтер қорына қол жеткізетін программалау құралдары бар. Сонымен қатар, көптеген МҚБЖ-ларда жүйе ішіне орнатылған программалау тілі бар. Dbase форматындағы мәліметтер қорын программалауға арналған арнайы Clipper алгоритмдік тілі бар.
Қосымшалады жасау үшін МҚБЖ –ның программалық интерфейсі болуы тиіс, оның негізін сәйкес программалау тілінің функциялары және/немесе процедуралар құрайды. Қолданыстағы МҚБЖ –лар қосымшаларды жасаудың келесі технологияларына (және олардың комбинацияларын) қолдау жасайды:
программаларды қолмен кодтау (Clipper, FoxPro, Paradox);
генераторлардың көмегімен қосымшалардың мәтіндерін құрастыру (FoxPro-де FoxApp, Paradox-та Personal Programmer);
визуалды программалау әдістерімен дайын қосымшаны автоматты түрде генерациялау (Delphi, Access, Paradox for Windows).
Қолмен кодтау кезінде программалаушылар қосымшалар программаларын мәтінін қолмен тереді, сосын олардың жұмысын жүргізіп баптайды.
Генераторларды пайдалану қосымшаларды жасауды жеңілдетеді, себебі бұл жағдайда программалық кодты қолмен термей-ақ алуға болады. Қосымшалардың генераторлары қосымшалардың негізгі элементтерін (мәзір, экрандық форма, сұраныстар және т.б.) жасауды жеңілдетеді, алайда көбінесе қолмен кодтауды жоққа шығара алмайды.
Қосымшаларды визуалды программалау құралдары қосымшалардың генераторларын қолдану идеясының дамуы боып табылады. Бұл ретте қосымша ыңғайлы біріктірілген ортаның қөмегімен дайын түрдегі «құрылыс блоктарынан» құрылады. Қажет болған жағдайда жасаушы қосымшаға өзінің кодын оңай енгізеді. Біріктірілген орта, әдетте, қосымшаларды құрастыру, баптау мен өзгертудің күшті құралдарын ұсынады. Визуалды программалау құралдарын пайдалану қысқа мерзім ішінде алғашқы екі әдіспен алынған қосымшалардан да сенімді, тартымды және тиімді қосымшаларды құрастыруға мүмкіндік береді.
Жасалған қосымша әдетте амалдар жүйесінің бір немесе бірнеше файлдарынан құралады.
Егер де қосымшаның негізгі файлы орындалатын файлы (мысалы, ехе-файл) болса, онда бұл қосымша МҚБЖ ортасынан дербес түрде орындалатын тәуелсіз қосымша болып табылады. Іс-жүзінде тәуелсіз қосымшаны алу, мәтінді қолмен теру сияқты, сондай-ақ қосымшаның генераторының немесе визуалды программалау ортасының көмегі сияқты тәсілдерімен алынған программаның бастапқы мәндерін компиляциялау жолымен жүзеге асырылады.
Тәуелсіз қосымшаларды мысалы, FoxPro МҚБЖ-лары және Delphi визуальді программалау жүйесін алуға мүмкіндік береді. Айта кететін нәрсе, Delphi құралдарының көмегімен әдетте, тәуелсіз қосымшаларды жасамайды, себебі бұл өте көп еңбекті қажет ететін үдеріс, оның орнына МҚБЖ ядросының рөлін атқаратын BDE (Borland DataBase Engine) мәліметтер қорының процессорын пайдаланады. Дербес ЭЕМ-дарға арналған қосымшаларды жасаудың ең алғашқы құралының бірі «таза түрдегі компилятор» болып саналатын Clipper жүйесі болып табылады.
Көп жағдайларда қосымша МҚБЖ ортасы болмағанда орындалмайды. Қосымшаны орындау МҚБЖ қосымша файлдарының құрамдас бөлігін (жеке жағдайда бұл бастапқы программаның мәтіні) талдайды және орындалатын қажетті машиналық командаларды автоматты түрде құруына негізделген. Былайша айтқанда, қосымша интерпретациялау әдісі арқылы орындалады.
Интерпретациялау режимі қазіргі заманғы көптеген МҚБЖ-ларда, мысалы, Access, Visual FoxPro және Paradox сияқты сондай-ақ, FoxBase және FoxPro тәрізді бұрынғы МҚБЖ-ларда жүзеге асырылған.
Сонымен қатар, компиляция мен интерпретацияның аралық нұсқасын – былайша айтқанда (псевдокомпиляция) жалған компиляцияны пайдаланатын жүйелер болады. Мұндай жүйелерде бастапқы программа компиляция арқылы аралық кодқа (псевдокодқа) өзгереді және дискіде жазылады. Бұл трүде оны кейбір жүйелерде тіпті редакциялауға рұқсат етіледі, алайда жалған компиляцияның басты мақсаты – программаны оны интерпретациялау үдерісін жылдамдатуға мүмкіндік беретін түрге өзгерту. Мұндай тәсіл DOS басқаруымен жұмыс істейтін МҚБЖ-ларда, мысалы, Foxbase+ және Paradox 4.0/4.5 for DOS-та кеңіннен қолданылған.
Windows басқаруымен жұмыс істейтін МҚБЖ-ларда (псевдокод) жалған код көбінесе қосымшаны модификациялауға тыйым салу үшін қолданылады. Бұл жұмыс істеп жатқан программаны кездейсоқ немесе әдейі бұзудан сақтау үшін пайдалы болады. Мысалы, мұндай тәсіл Paradox for Windows МҚБЖ-да қолданылған, онда әзірленген экрандық формалар мен есеп берулерді редакциялауға сәйкес нысандарға өзгертуге жол беріледі.
Кейбір МҚБЖ-лар пайдаланушыға қосымшаны жасау нұсқасын таңдап алу мүмкіндігін ұсынады: МҚБЖ-мен интерпретацияланатын программалық код ретінде немесе тәуелсіз программа ретінде.
Тәуелсіз қосымшаларда қолданудың артықшылығы – машиналық программаны орындау уақыты, әдетте интерпретация кезіндегі уақытпен салыстырғанда қысқалау болады. Мұндай қосымшаларды әлсіз машиналарда және қосымшаны пайдаланушылардың тарапынан өзгертуге қарсы жабу қажет болатын, жүйелерді, «қолдануға даяр» етіп орнатқан жағдайда пайдаланған дұрыс.
Интерпретацияланатын жүйелердің тағы бір үлкен артықшылығы – жақсы МҚБЖ-ларды әдетте мәліметтердің бүтіндігін бақылау мен оларға рұқсатсыз қол жеткізуден қорғауға арналған күшті құралдар болады, ал компиляциялаушы түрдегі жүйелер туралы олай деп айта алмаймыз. Сонғыларында аталған қызметтерді қолмен программалауға, немесе әкімшелердің құзырына қалдыруға болады.
Қосымша жасау құралдарын таңдау кезінде келесі негізгі үш факторды: компьютердің ресурстарын, қосымшаның ерекшеліктерін (программаның қызметтерін модификациялаудың қажеттігі, жасауға жұмсалатын уақыт, қол жеткізуді бақылаудың қажеттілігі және ақпараттың тұтастығын қамтамасыз ету) және жасаудың мақсатын (шеттетілетін программалық өнім немесе өзінің күнделікті іс-әрекетін автоматтандыру жүйесі) ескерген дұрыс.
Қазіргі заманғы компьютері бар және онша күрделі емес қосымшаны құруды жоспарлап отырған пайдаланушы үшін интерпретациялау типіндегі МҚБЖ көбірек сай болады. Еске сала кейік, мұндай жүйелер жеткілікті дәрежеде күшті болып келеді, олардың жоғары деңгейлі құралы бар, олар жасау мен баптауға ыңғайлы, жасау жұмысын жылдам түрде орындауға мүмкіндік береді және қосымшаға еріп жүру мен оны модификациялаудың ыңғайлы болуын қамтамасыз етеді.
Сипаттамалары нашар компьютерді пайдаланған кезде тәуелсіз қосымшаларды жасау құралдары бар жүйені таңдаған дұрыс.
Бұл ретте ескертетін нәрсе, қосымшадағы кішігірім өзгеріс программалау, программаны компиляциялау және баптау кезеңдерін циклдік түрде қайталануына әкеледі. Тәуелсіз қосымшаны орындау мен қосымшаны интерпретация режиміндегі орындаудан айырмашылығы тәуелсіз қосымшаның пайдасына миллисекунд айналасында тербелуінде болады. Сонымен қатар, қосымшаны оны пайдалануға дайындау уақытындағы айырмашылық әдетте интерпретациялау жүйелерінің пайдасына минуттар-сағаттар дәрежесіндегі шама құрайды.
SQL және мәліметтер қорының қауіпсіздігі.
МҚБЖ-нің қызметтерінің біріне мәліметтер қорының қауіпсіздігін қамтамасыз ету жатады. Реляциялық МҚБЖ-лардың қауіпсіздік жүйесінің негізі SQL тілі болып табылады. Мәліметтерді қорғаудың негізгі үш принципі қолданылады:
мәліметтерді оқуға, енгізуге және жаңартуға арналған кез келген SQL-команда қандай да бір пайдаланушының атынан орындалады;
қорғау объектілері негізінен кестелер мен бейнелеу болады;
әрбір пайдаланушыға қандай да бір әрекеттерді жасауға арналған белгілі бір артықшылықтар (құқықтар) беріледі.
Реляциялық мәліметтер қорының әрбір пайдаланушысына идентификатор – пайдаланушыны бірмәнді анықтайтын қысқаша атау меншіктеледі. Коммерциялық, өнеркәсіптік мәліметтер қорларында пайдаланушыға атауды мәліметтер қорының әкімшісі береді. Дербес ЭЕМ-дарда мәліметтер қорында мәліметтер қорын құрған пайдаланушының тек бір ғана идентификаторы болуы мүмкін. Көптеген МҚБЖ-лар үшін идентификатор ретінде операциялық жүйеде тіркелген пайдаланушылардың атаулары қолданылады. Әдетте, пайдаланушы жұмыс алдында идентификаторды және сонымен байланысты парольді енгізуі тиіс. Әртүрлі пайдаланушылардың бірдей идентификаторлары болуы мүмкін.
Артықшылықтар. SQL стандарттарында төмендегідей артықшылықтар анықталған:
оқуға (SELECT);
жазбаларды енгізуге (INSERT);
жазбаларды жоюға (DELETE);
жазбаларды өзгертуге (UPDATE).
CREATE TABLE және CREATE VIEW операторлары көмегімен кестені немесе бейнелеуді құрған пайдаланушы автоматты түрде осы объектілердің иесіне айналады және осыларға қатысты жоғарыда аталған барлық артықшылықтарға ие болады. Кестенің немесе көрсетімнің иесі басқа пайдаланушыларға осы мәліметтерге қол жеткізуге рұқсат ете алады. Ол үшін GRANT операторы қолданылады, оның синтаксистік диаграммасы төмендегідей (4.35-сурет)
4.35-сурет. GRANT операторының синтаксистік диаграммасы
Командада PUBLIC кілттік сөзі артықшылықтарды әрбір пайдаланушыға жекелеп берудің орнына, бірден барлық пайдаланушыларға артықшылықтар беру үшін қолданылады.
Егер GRANT операторында WITH GRANT OPTION сөйлемі көрсетілсе, онда артықшылықтарға ие болатын пайдаланушылар өз кезегінде оларды басқа пайдаланушыларға беруі мүмкін.
Мысал
Smith агентіне өз артықшылықтарын басқа пайдаланушыларға ұсыну мүмкіндігін беріп Orders кестесіне ақпаратты қосуға және жоюға рұқса ету
GRANT INSERT, DELETE
ON Orders
TO Smith WITH GRANT OPTION
Артықшылықтардың күшін жою. Көптеген реляциялық МҚБЖ-ларда GRANT операторы арқылы ұсынылған артықшылықтар REVOКE операторының көмегімен алынып тастауға болады. REVORE операторының синтаксистік диаграммасы төмендегідей (4.36-сурет)
4.36-сурет. REVOКE операторының синтаксистік диаграммасы
Мысал
Smith, Pol агенттерінің Orders кестесіне сұраныстар мен өзгерістер енгізуге қатысты артықшылықтарын алып тастау.
REVOКE SELECT, UPDATE
ON Orders
FROM Smith, Pol
Бақылау сұрақтары:
SQL тілі қандай мәліметтерді өңдеу құралы болып табылады?
SQL қандай тіл болып табылады?
1992 жылы SQL тілінің қандай стандарты пайда болды?
SQL тілінде белгісіз немесе анықталмаған мәліметтер қалай белгіленеді?
SQL тілінің теориялық негізі не болып табылады?
SQL тілінің функцияларын атаңыз
SQL тілінің қай операторы МҚ-ға қол жеткізуді басқарады?
SELECT, INSERT, DELETE, UPDATE операторлары не болып табылады?
REVOКE операторы нені орындайды?
SQL тілінің алғашқы стандартын кім және қашан жасаған?
Әдебиеттер:
Бидайбеков Е.Ы., Елубаев К., Шекербекова Ш.Т. Мәліметтер қоры және ақпараттық жүйелер. Алматы., 2010.
Глушаков С.В., Ломотько Д.В. Базы данных.-Харковь: Фолио; М.:ООО «Издательство АСТ», 2002.
Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных. Учебник для высших учебных заведений. Под редакцией проф. А. Д. Хомоненко. – Санкт-Петербург: «КОРОНА
Достарыңызбен бөлісу: |