Алматы энергетика және байланыс институты

Инженерлік кибернетика кафдрасы

  

 

 

МӘЛІМЕТТЕР ҚОРЛАРЫН ЖОБАЛАУ 

5B0502 - Автоматтандыру және басқару мамандығының

барлық оқу түрінің студенттеріне арналған дәрістер жинағы

 

 

Алматы 2010 

ҚҰРАСТЫРУШЫ: Ибраева Л.К. «Мәліметтер қорларын жобалау» пәні бойынша 5B0502 - Автоматтандыру және басқару мамандығының барлық оқу түрінің студенттеріне арналған дәрістер жинағы – Алматы: АЭжБИ, 2010 –  63 б. 

Дәрістер жинағы «Мәліметтер қорларын жобалау» пәнінің жұмыс бағдарламасы бойынша 5B0502 - Автоматтандыру және басқару мамандығының барлық оқу түрінің студенттеріне құрастырылған. Жинақ 15 тақырыптан тұрады және теориялық материалды оқығанда, емтихан мен зертханалық жұмыстарға дайындалғанда, өзіндік жұмыстарды орындағанда студенттерге көмек ретінде негізделген.

 

Кіріспе

Есептеу техниканың дамуы біздің қоғамымызға көп жағынан зор әсер етті. Соңғы он жылдықтарда есептеу техниканы қолдану салалары көбейіп, оның күнделікті өмірге әсері көтерілді. Мәліметтерді ұйымдастырып, ақпараттты беретін автоматтандырылған жүйе ақпараттық жүйе болып табылады.

Ақпараттық жүйелерді жасаумен байланысты ең күрделі және жауапкершілік есептердің бірі мәліметтер қорларын жобалау болып табылады. Осы есепті шешу нәтижесінде мәліметтер қорларының мазмұны, оның болашақ пайдаланушыларына тиімді мәліметтерді үйымдастырудың әдісі және мәліметтерді басқарудың инструменталды құралдары анықталуы керек.

  Мәліметтер қорын жобалау процесі тақырып аймақтың ақпараттық құрылымының сөзбен бейнеленуінен тақырып аймақтың объектілерін кейбір модель терминдеріндегі формалданған бейнелеуге көшу болып табылады. Жалпы кезде жобалаудың келесідей кезеңдерін бөлуге болады: тақырып аймақтың ақпараттық объектілерін жүйелік талқылау және сөзбен бейнелеу; тақырып аймақтың концептуалды моделін, яғни таңдалынған семантикалық модель терминдеріндегі тақырып аймақтың объектілерінің формалданған бейнелеуін жобалау; белгілі мәліметтер қорларын басқару жүйесін таңдау; таңдалынған жүйе терминдерінде мәліметтер қорын бейнелеу және соңынан, мәліметтер қорын физикалық жобалау, яғни қолданбалының тиімді жұмыс жасауын қамтамасыздандыру үшін сыртқы жадыларда мәліметтер қорының тиімді орналасуын таңдау. 

  Қазіргі кездегі мәліметтерді басқару ақпараттық технологиялар мәліметтерді басқарудың реляциялық жүйелерін қолдануда негізделген. Реляциялық мәліметтер қорлары пайда болар алдында өңделген мәліметтермен әрекеттесудің барлық тілдері файлдардың логикалық жазбалары түрде көрсетілетін мәліметтермен операцияларды жасауға бағытталған болатын. Сондықтан пайдаланушылар мәліметтерді сақтау тәртібін толығымен біліп, қажетті мәліметтерді, олардың орналасу орнын көрсетумен бірге оларды алу амалдарын орнату керек.  Қазіргі кездегі мәліметтер қорлар тілдерінің ерекшелігі, олардың мәліметтерді өңдеудің поцедураларына бағытталғаны емес, мәліметтерді өңдеудің соңғы нәтижесіне бағытталғанында.

  Дәрістер жиынтығында мәліметтер қорларының дамуы туралы негізгі мағлұматтар, мәліметтер қорлар жүйелерінің үш деңгейлі архитектурасы, мәліметтер қорларын жобалаудың концептуалды және реляциялық амалдарының негізгі түсініктемелері, мәліметтер қорларын нормалау принциптері қарастырылған.

  

1 Дәріс. Мәліметтер қорлары технологиясының дамуы 

 

Дәріс мазмұны:

-         ақпараттық жүйелердің негізгі түсініктемелері.

 

Дәріс мақсаты:

- мәліметтер қорларының даму және мәліметтерді өңдеудін әдістерін тарихын оқып білу.

 

         1.1  Ақпараттық жүйелері

Қызметтің белгілі түрін қолдану үшін мәліметтерді жинауын, сақтауын және оңдеуін қаматамасыздандыратын, электронды есептеу машиналар және информатика саласының басқа техникалық құралдарының негізінде жұмыс жасайтын кешенді ақпараттық жүйесі деп атайды. Басқа сөзбен айтқанда, ақпараттық жүйе – мәліметтерді ұйымдастырып, ақпаратты беретін автоматтандырылған жүйе.

Ақпараттық жүйе келесідей функцияларды:

-   компьютер жадысында ақпаратты сенімді сақтауды;

-   белгілі қолданбалының спецификалық ақпаратты түрлендіруі мен есепетелуін орындауды;

-    пайдаланушыларға ыңғайлы және жеңіл дағдыланатын интерфейсті ұсынуын қамтитын программалық-жабдықты кешені болып табылады

Осындай жүйелердің негізгі компоненттері ретінде бағдарламалық қамтамасыздандыру құралдары, компьютерлердің немесе компьютерлік желілердің техникалық құралдары, пайдаланушылардың интерфейстерінің лингвистикалық құралдары, жүйе арқылы сақталынып өңделінетін мәліметтік ресурстары болып табылады.

Бұл контекстінде біздер мәлімет және ақпарат терминдерін ажыратамыз. Мәліметтер деп біздер жекеленген фактілерді түсінеміз. Мысалы, «Сони фирмасы Жапонияда орналасқан». Ал, ұйымдастырылған және өңделген мәліметтерді ақпарат деп атаймыз. Ақпарат шешім қабылдау үшін басқарушыларға қажет.

Ақпараттың жобалауға және шешімдер қабылдауға маңызды әсері бар болғандықтан, ақпарат белгілі бағасы бар ресурс болып табылады, сондықтан ол реттеу мен басқаруды талап етеді. Егер басқарушылар маңызды ақпаратқа ие болса, олар уақытында шешімдер қабылдайды.

Пайда болған мәліметтер қорларын қолданатын ақпараттық жүйелер басқарушыларды дәл және уақытысында қамтамасыздандыратын негізгі құралы болып табылды.

       

1.2 Файлдар және файлдық жүйелер

Мәліметтерді өңдеу және ақпаратты басқару әдістерінің бірнеше он жылдар ішінде даму нәтижесі ретінде мәліметтер қорларының технологиясының дамуы болды. Мәліметтерді өңдеудің дамуы өткен ғасырдың 50-ші жылдарының примитивті әдістерінен қазіргі кезеңдегі күрделі интегралданған жүйелерге келтірілді. Мәліметтерді өңдеудің бірінші жүйелері тек қана кеңселік жұмыстарды орындап, қағаз сандарын азайтты. Қазіргі заманның жүйелері ақпаратты сақтап, басқаруға мүмкіндік береді. Технологиялық өзгерістер бизнес қажеттіліктерімен байланысты. Қазіргі кезде мәліметтер қорларын басқару жүйелерінің маңызды функциясы – корпоратвті пайдаланатын ақпараттық жүйелердің негізі болуында.

Есептеу техниканы қолданудың тарихында екі негізгі аймағын атауға болады.

Бірінші аймақ - қолмен жасауға мүмкін емес немесе өте күрделі болатын сандық есептеулерге есептеу техникасын қолдану. Осы саланың дамуы күрделі математикалық есептерді сандық шешу әдістерін интенсификациялауға, сандық алгоритмдерді ыңғайлы жазуға бағытталған программалық тілдердің пайда болуына, есептеу машиналардың жаңа архитектураларын өңдірулермен қайта байланысына себеп болды. Көлемдері үлкен емес, құрылымдары қарапайым болатын мәліметтерді өңдеудің күрделі алгоритмдерін қолдану есептеу техникасын пайдаланудың осы саласының сипатты ерекшелігі болып табылды.

  Біздің тақырыбымызға тікелей қатысы бар екінші аймақ — есептеу техника құралдарын автоматты немесе автоматтандырылған ақпараттық жүйелерде пайдалану. Әдетте осындай жүйелер күрделі құрылымы бар ақпараттың үлкен көлемдерімен жұмыс істейді. Ақпараттық жүйелердің классикалық мысалдары: банктік жүйелер, кәсіпорындардың автоматтандырылған басқару жүйелері, әуе немесе темір жол билеттерін, қонақ үйлердегі орынды резервтеу жүйелері, т.с. болып табылады.

Файлдарды басқарудың орталықтандырылған жүйелерін пайдалану ақпараттық жүйелердің дамуына маңызды себеп болды. Қолданбалы программа көз қарасы жағынан файл сыртқы жадының аталған аймағы болып табылады, мәліметтерді оған жазып немесе одан жазып алуға болады. Файлдарды атаудың ережелері, файлда сақталынған мәліметтерге қол жеткізудің әдістері, осы мәліметтердің құрылымы, файлдарды басқарудың белгілі жүйесінен және файл типтерінен тәуелді болады. Сыртқы жадыны таратуды, файл аттарын сыртқы жадының сәйкес адрестерінде көрсетуді, мәліметтерге қол жеткізуді файлдарды басқару жүйесі қамтамасыздандырады.

Пайдаланушылар файлды жазбалардың сызықты тізбегі ретінде қабылдап, оларға әртүрлі стандартты операцияларды қолданады: қажетті типті және өлшемді файлды жасау; алдында жасалған файлды ашу; файлдағы белгілі (ағынды, алдыңғы, бірінші немесе соңғы) жазбаны оқып шығу; файлдағы ағынды жазба орнына жаңасын жазу, файл соңына жаңа жазбаны қосу. Әртүрлі файлдық жүйелерде бұл операциялар өзгеше болуы мүмкін, бірақ жалпы мағынасы осындай болды. Ең маңыздысы — файл жазбасының құрылымы тек қана онымен жұмыс істейтін программаға белгілі болады, файлдарды басқару жүйесі оны білмейді.  Сондықтан, файлдан кейбір ақпаратты алу үшін файл жазбасының құрылымын бит дәлдігімен білу қажет болатын.

Файлмен жұмыс істейтін программаның ішінде файл құрылымына сәйкес мәліметтер құрылымы болу керек. Сондықтан файл құрылымын өзгерткен кезде программа құрылымын өзгерту керек, сонымен бірге жаңадан компиляциялау, яғни программаны жаңадан орындалатын машиналық кодтарға түрлендіру қажет болатын. Осындай жағдай программаның мәліметтерден тәуелдігі деп сипатталады. Әдетте ақпараттық жүйелерде өте көп әртүрлі пайдаланушылар (программалар), олардың әрқайсысында бір файлда сақталатын ақпаратты өңдеудің спецификалық алгоритмдері бар болады. Бір программаға қажетті файл құрылымын өзгерту үшін осы файлмен жұмыс істейтін басқа программаларды жөндеп, қайтадан компиляциялап, қосымша  түзетуді талап ететін. Ақпаратты сақтау мен басқарудың жаңа жүйелерінің жасалынуына себеп болған осы жағдай файлдық жүйелерінің бірінші маңызды кемшілігі болып табылды.

Бірінші коммерциялық компьютерлік жүйелері негізінде бухгалтерлік жұмыстарына қолданылған: балансты, жалақыны, т.б. есептеу. Бұл жұмыстарға жұмсалатын қол еңбектің шығындары сонша көп болғандықтан, компьютерлік жүйенің құны шығындардың орнын тез толтырды. Бұл жүйелер әдеттегі құжаттармен жасалынатын жұмыстарды орындайтын болғандықтан, олар мәліметтерді өңдеу жүйелері деп аталды. Компьютерлік файлдар құжаттар сақталынатын папкаларға сәйкес болды.

Бұл файлдар мәліметтерге теқ қана бір ізді қол жеткізуді рұқсат ететін еді, яғни файлдағы әрбір жазбаны оқып, өңдеу үшін оның алдындағы барлық жазбаларды қарап шығу қажет. 60-шы жылдарда (ХХ ғ.) ақпаратты дискіде сақтаудың құны өте жоғары болғанда көптеген файлдар магнитті ленталарда сақталатын, сондықтан жазбалар тізбектеліп алынып өңделетін еді.

Есептеу техникасын қолданудың екінші аймағы біріншіден соң пайда болды. Бұл жағдай келесімен байланысты: есептеу техниканың пайда болған кезеңінде компьютерлердің ақпаратты сақтау мүмкіншіліктері өте шектелген болатын. Электр көзін сөндіргеннен кейін ақпаратты ұзақ және сенімді сақтау үшін ақпаратты сақтайтын сақтау құрылғылары болуы керек болады. Компьютердің оперативті (негізгі) жадысының осындай қасиеті жоқ. Бірінші компьютерлерде сыртқы жадының екі түрі қолдалынатын еді  — магнитті ленталар мен магнитті барабандар. Магнитті ленталардың сыйымдылығы жоғары болғанмен, олар тек қана тізбектеліп қол жеткізуді қамтамасыздандыратын еді. Бекітілген басы бар магнитті барабандар (олар кәзіргі кездегі магнитті дискілерге жақын) мәліметтерге еркін қол жеткізуді қамтамасыздандырғанмен, оларда сақталатын ақпараттың көлемі шектелген.

Аталған шектеулер компьютерде орындалатын сандық есептеулерге көп кедергі жасамайды, себебі программа ақпараттың үлкен көлемін өңдеу немесе есептеу керек болса, оның тиімді орындалуы үшін осы ақпараттың сыртқы жадысында сақталу тәртібін программалау терең ойластыруға болады. Бірақ, ақпараттық жүйелерде өзара байланысқан ақпараттық объектілердің жиынтығы нақты қоршаған ортаның объектілерінің моделі болып табылады. Ал пайдаланушыларға нақты объектілер күйлерін адекватты көрсететін ақпарат қажет болғандықтан, олардың сұраныстарына жүйе бірден жауап беруі керек. Бұл кезде жәй құрылғылары болып табылатын магнитті ленталар мен барабандар мәліметтерді сақтауға жеткілікті болмайды.

Сондықтан сандық емес қолданбалылардың талаптары жылжымалы  басы бар алмастырылып отыратын магнитті дискілердің пайда болуына себеп болды деп болжауға болады. Есептеу техникасының тарихында бұл себеп революциялық болды.  Осындай сыртқы жадының құралдарының сыйымдылықтары магнитті барабандарға қарағанда маңызы үлкен болып, мәліметтерге еркін қол жеткізу режіміндегі жылдамдығы жеткілікті, ал құрылғыдағы дискілік пакетті алмастыру мүмкіншіліктері практикалық шектелмеген мәліметтер архивін орнатуға мүмкіндік берді.

Магнитті дискілердің пайда болуымен бірге мәліметтерді сыртқы жадыда басқару жүйелерінің тарихы басталды. Файлдағы жазбаларға еркін қол жеткізу қажеттілігі пайда болды.

Файлдың белгілі жазбасына оны алдына-ала реттемей немесе алдынғы барлық жазбаларды оқымай қол жеткізуді еркін қол жетерлік деп атайды.

Мұның алдында сыртқы жадыда мәліметтерін сақтайтын әр қолданбалы программа магнитті лентада немесе барабанда мәліметтердің әр бөлігін орнатуын өзі анықтап оперативті жады мен сыртқы жадының құрылғылары арасындағы мәліметтермен алмасуды төменгі деңгейдегі программа-жабдықтық құралдары көмегімен (машиналық бұйрықтар немесе операциялық жүйенің сәйкес программаларын шақыру жолымен) өзі орнататын еді. Мұндай режім бір сыртқы құрылғыда ұзақ сақталатын ақпараттың бірнеше архивін сақтауын сүйемелдеуін қиындатады немесе мүмкіндік бермейді. Сонымен бірге, әр қолданбалы программаға мәліметтер бөліктерін атаудың және сыртқы жадыдағы мәліметтерді құрамдастыру мәселелерін шешу қажет болатын еді.

Өткен ғасырдың алпысыншы жылдары индексті файлдар көп тарады. Олар жазбаны еркін ретімен табуға мүмкіндік береді. Керекті жазбаны табу үшін, файлдарда кілт деп аталатын, бір немесе бірнеше өрістер белгіленеді. Жазбаны бір мағналы анықтайтын мәліметтер өрістері кілт болып табылады.

Индекстік файлдарды: негізгі және индексті деп аталатын екі бөліктен тұратын файл ретінде көрсетуге болады. Бұл екі бөлік физикалық бір файлда болмауы мүмкін, көбінесе индекстік аймақ бөлек индексті файлды құрастырады, ал негізгі аймақ оған индекс жасалатын файл болып табылады.

Индексті және негізгі аймақтарды ұйымдастыру ережесіне байланысты файлдардың екі типін қарастырады - тығыз индексі және тығыз емес индексі бар файлдар. 

Олардың құрылымдарымен сүйемелденетін еркін жазбаға қол жекткізу әдістерімен тікелей байланысты бұл файлдардың тағы қосымша атаулары бар. Тығыз индексі бар файлдар индексті-тіке файлдар деп, ал тығыз емес индексі бар файлдар индексті-тізбектелген файлдар деп аталады.  

 

2 Дәріс. Мәліметтер қорларын қолданатын ақпараттық жүйелері

 

Дәріс мазмұны:

-         мәліметтер қорларының пайда болуының қажеттілігі.

 

Дәріс мақсаты:

- файлдық жүйелердің кемшіліктерін және мәліметтер қорларын қолданатын ақпараттық жүйелерінің пайда болу себептерін оқу.

 

2.1 Файлдық жүйелерінің кемшіліктері

Еркін қол жеткізу файлдардың пайда болғанымен кез-келген типті файлдық жүйелердің кейбір кемшіліктері бар болатынына тез көз жетті.  

Бұл келесі кемшіліктер:

1) мәліметтердің артықшылығы. Көптеген қолданбалы программалар өздерінің  жеке мәліметтер файлдарын қолданады, сондықтан бір мәлімет әртүрлі файлдарда қайталанады. Мысалы, банкте клиенттің бірдей аты жинақтауыш, ағынды, несие туралы шоттарды сақтайтын файлдарда кездесуі мүмкін. Сонымен бірге әртүрлі файлдарда клиенттің аты  сақталатын өрістерге әртүрлі атаулар берілуі мүмкін жәнеде әр файлда бұл өрістердің өлшемдері әртүрлі болуы мүмкін.

Осындай мәліметтердің артықшылығынан оларды сақтауға және сүйемелдеуге артық шығындар жұмсалады. Бұл артықшылық жалпы мәліметтердің әртүрлі версиялары арасындағы қайшылыққа келтіреді.

Мәліметтер қорларын қолданатын ақпараттық жүйелер осындай артықшылықтарды жоюға мүмкіндік береді, себебі барлық қолданбалылар мәліметтердің бір жиынтығын қолданады. Маңызды ақпарат тек қана бір рет жазылады. Басқа сөзбен айтқанда қолданбалылар сәйкестірілген мәліметтермен жұмыс жасайды;

 2) мәліметтердің әлсіз бақылануы. Файлдық жүйеде орталықтанған бақылану жоқ. Мәліметтердің бір элементінің әртүрлі атаулары болуы мүмкін, әртүрлі бөлімдерде қолданылатын терминдер әртүрлі болады. Мысалы, банк шот деген терминді депозит мағынасы жағынан немесе ссудалар көз қарасы жағынан әртүрлі мағынада қолдануы мүмкін

Бір терминнің әртүрлі мағыналары омонимдер деп аталады.

Кері жағынан, әртүрлі сөздердің бірдей мағынасы болуы мүмкін. Мысалы, банкте шот иесі немесе клиент деген терминдер бірдей мағынада қолданылуы мүмкін.

Бірдей мағынадағы терминдер синонимдер деп аталады.

Мәліметтер қорларын басқару жүйелері мәліметтерді орталықтандырылған басқаруын орындап, омонимдер мен синонимдер себептерінен пайда болатын қателіктерді жоюға мүмкіндік береді.

Файлдық жүйелер әртүрлі пайдаланушылардың файлдарының жалпы қоры болғандықтан, файл басқару жүйелері файлдарға қол жеткізуді басқару керек. Жалпы кезде қарастырылып отырған есептеу желінің барлық файлдары үшін тіркелген пайдаланушыға рұқсат етілген немесе рұқсат етілмейтін әрекеттері аталады. Қазіргі кездегі файлдарды басқару жүйелері үшін алдынғы кезде UNIX операциялық жүйесінде іске асырылған фалдарды қорғау амалдары қолданылады. Бұл операциялық жүйеде әр тіркелген пайдаланушыға екі бүтін санды идентификаторлар сәйкес қойылады: пайдаланушы тобының идентификаторы мен топтағы пайдаланушының жеке идентификаторы. Әр файл құрамында файлды жасаған пайдаланушының толық идентификаторы сақталады, және де файл иесі файлмен қандай әрекеттерді орындауына болатыны, осы топтың басқа пайдаланушылары, басқа топтың пайдаланушылары файлмен қандай әрекеттерін жасай алатыны тіркеледі. Файлға қол жеткізу ережелерін оны жасаған иесі орнатады. Бір тақырып аймақтың ақпараттық моделін көрсететін файлдар жиынтықтары үшін осындай басқару принциптері қосымша кедергі жасайды. Ақпаратқа қол жеткізуді басқарудың орталықтандырылған әдістерінің жоқтығы мәліметтер қорларының басқару жүйелерінің пайда болуының тағы бір себебі болып табылды;

 3) мәліметтерді басқарудың жеткіліксіз мүмкіншіліктері. Индекстік файлдар белгілі жазбаны кілт арқылы табуға мүмкіндік береді. Бөлек жазба керек болса бұл жеткілікті болады. Ал, егер де бізге байланысқан мәліметтердің жиыны керек болса, мұндай ақпаратты файлдық жүйеден алу қиын немесе мүмкін емес те болады. Ол файлдық жүйелердің әртүрлі файлдардың мәліметтері арасында байланысты орнатуға мүмкіндік бермейтіндігіне байланысты.

 Әртүрлі файлдардағы мәліметтерді байланыстыруын қарапайымдау үшін әдейі мәліметтер қорларын басқару жүйелері өңделген;

4) программистердің жұмысына кететін көп шығындар. Файлдық жүйеде жаңа қолданбалы программаға файлдардың жаңа жиыны керек. Бар болатын файлда қажетті ақпарат болса да қолданбалы мәліметтердің тағы бір жиынын талап етеді. Нәтижесінде программист тағы бір программаны жазады. Басқа сөзбен айтқанда, файлдық жүйеде мәліметтер мен программа арасында қатаң байланыс бар. 

Мәліметтер қорлары программалар мен мәліметтерді бөлуге мүмкіндік берді, сондықтан кейбір мағынада программа мәліметтерді анықтаудың детальдарынан тәуелсіз болады;

5) бір файлмен көп пайдаланушылардың параллельді жұмыс жасауының тиімділігін қамтамасыздандыру келесі себеп болды. Жалпы кезде файлдарды басқару жүйелері көп пайдаланушы режімін қамтамады. Егер де операциялық жүйе көп пайдаланушы режімін сүйемелдесе екі немесе оданда көп пайдаланушылар бір файлмен бір уақытта жұмыс істеуге тырысуы мүмкін. Егер де олар тек қана файлды оқып шығатын болса, ешқандай қателік болмайды.  Бірақ файлды өзгерту қажет болса пайдаланушылар жұмысы дұрыс орындалуы үшін олар файлмен жұмыс істеуін өзара реттеу керек.

Файлдарды басқару жүйелерінде әдетте келесі амал қолданылған. Файлды ашу операциясында (файлмен жұмыс істеу сеансында бірінші және міндетті түрде орындалатын операция)  басқа параметрлермен бірге файлмен жұмыс істеу режімі көрсетіледі (оқу немесе өзгерту). Егер де осы операцияны кейбір PR1 пайдаланушы процесі орындаған кезде файл басқа PR2 процеспен өзгерту режімінде ашылған болса, онда жүйенің ерекшеліктеріне қарай PR1 процесіне файлды ашу мүмкін еместігі хабарланады немесе PR2 процесінде файлды жабу операциясы орындалғанша PR1 процестің жұмысы тоқталады.

Осындай ұйымдастыру амалында файлдардағы мәліметтерді өзгертумен байланысты бірнеше пайдаланушылардың файлмен бірдей жұмыс жасауы іске асырылмай немесе өте жәй болады.

Ақпаратты жүйелерді өңдеушілері ақпаратты басқарудың жаңа амалдарын ұсынуға осы кемшіліктер себеп болды. Осы амал жаңа программалық жүйелерде іске асырылды, олар соңынан Мәліметтер Қорларын Басқару Жүйелері (МҚБЖ) деп аталды. Осы жүйелермен басқарылатын  ақпаратты сақтау қорлары мәліметтер қорлары (МҚ) немесе мәліметтер банктері деп аталады (МБ).

 

 2.2 Мәліметтер қорларын қолданатын ақпараттық жүйелер

 Мәліметтер қорларын басқару жүйелердегі терминологиясы мен «мәліметтер қоры» және «мәліметтер банкі» терминдері де жартылай финанстық қызметтен алынған. Бұл жағдай кездейсоқ емес себебі ақпарат пен ақша массасымен жұмыс жасау бір-біріне ұқсаc. Екі салада да объекттер бір бірінен айырылмайды: жүз тенгелі екі банкноталар (сериялық нөмірін есепке алмағанда) екі байт сияқты бір бірінен айырылмайды да өзара алмасуларына болады. Ақшаңызды шотқа салып өз туыстарыңызға шотты басқа банктен пайдалануға рұқсат берулеріңізге немесе шот арқылы әр түрлі төлемдерді орындауға болады. Сонда ақша купюралары басқа болады бірақ олардың құны өзгермейді. Сонымен бірге алдында айтылғандай бірінші коммерциялық компьютерлік жүйелер бизнесті сүйемелдеуге қолданылған болатын.

Жалпы тақырыппен немесе міндетімен байланысқан сақталынатын мәліметтердің реттелген жиынтығы мәліметтер қоры (МҚ) деп аталады. Мәліметтер қорының негізгі міндеті – онда сақталатын мәліметтерді пайдаланушыларға тез тауып беру.

Мәліметтер қорларын басқаратын жүйе (МҚБЖ) – мәліметтер қорын басқаратын программалық қамтамасыздандыру.  

Мәліметтер қоры тек қана мәліметтердің жиыны емес. Мәліметтер қорының  өзінен басқа мәліметтермен жұмыс істейтін қолданбалы программалар, оған сәйкес жабдықтар мен персонал болуы керек.

Мәліметтер банкі (МБ) дегеніміз — арнайы түрде ұйымдастырылған мәліметтер жүйесі — мәліметтерді коллективті көп мақсатымен қолдануға және орталықтандырылған сақтауды қаматамсыздандаруға арналған мәліметтер қорлары, техникалық, тілдік, ұйымдастыру-нұсқалық құралдар жиыны.

Бизнестегі белгілі практикалық есептерді шешетін бағдарламалар қолданбалы бағдарлама немесе қолданбалы деп аталады. Ал, байланысқан есептерді бірге орындайтын қолданбалылар жиынтығы қолданбалы жүйе деп аталады. Біздің контекстте пайдаланушыларға мәліметтер қорларымен жұмыс жасауға көмек беретін программаларды қолданбалы деп атаймыз.

Жалпы кезде бір мәліметтер қорымен қолданбалылардың көп саны жұмыс істей алады. Мысалы, мәліметтер қоры кейбір кәсіпорынды модельдесе, онымен жұмыс істеуге бір неше қолданбалы өңделуі мүмкін: біреуі кадрлерді тіркеп басқаратын жүйесіне қызмет жасайтын, басқасы қызметкерлердің жалақысын есептеуге міндеттелген, тағы біреуі қойма есептерін орындаса, ал басқасы  кәсіпорын процестерін жобалауға негізделген болуы мүмкін. Бір мәліметтер қорымен жұмыс істейтін қолданбалыларды қарастырғанда, олар параллельді және бір біреуінен тәуелсіз жұмыс істейді деп есептелінеді. Мәліметтер қорларын басқару жүйесі бір мәліметтер қорымен қолданбалылардың көп санының жұмысын сүйемелдейді: әр қолданбалы басқаларының мәліметтер қорына енгізген өзгертулерін есепке алып, дұрыс орындалуын МҚБЖ басқарады.

Мәліметтер қорларын қолданатын ақпараттық жүйе немесе мәліметтер қорларының жүйесі төрт компоненттен тұрады: жабдықтар. программалық қамтамасыздандыру (МҚБЖ), мәліметтер (МҚ) және адамдар (пайдаланушылар, әкімшілік, қызмет жасайтын персонал).

Дұрыс өңделіп жұмыс жасайтын жүйеде компоненттердің барлық төртеуіде қажетті есептерді орындайтын тұтас жүйені құрастырып өзара байланысады: қызмет жасайтын персонал, пайдаланушылармен ақылдасып қажетті мәліметтерді анықтап пайдаланушылар қажеттіліктеріне сәйкес мәліметтер қорының құрылымын анықтайды.

Содан кейін мәліметтер қорының құрылымы мәліметтер сөздігі арқылы мәліметтер қорын басқару жүйесіне хабарланады. Пайдаланушылар мәліметтер қорын басқару жүйесіне анықталған процедуралар (инструкциялар) арқылы өз мәліметтерін енгізеді. Енгізілген мәліметтерді сақтауын жабдықтар қамтамасыздандырады. Мәліметтер қорына қол жеткізуіне қызмет жасайтын программаларды программистер өңдейді, пайдаланушылар бұл программаларды өз компьютерлерінде жұмысқа қосады. Бұл программалар кәсіпорынның басшылар мен клиенттеріне қажетті ақпаратты береді.

Мәліметтер қорларын қолданатын ақпараттық жүйелер файлдық жүйелердің кемшіліктерін жоюға мүмкіндік берді.

Мәліметтер қорлары жұйелерінің негізгі мақсаттарының біреуі - мәліметтердің тәуелсіздігің, яғни мәліметтерді сақтау құрылымы мен қол жеткізу стратегиясынан қолданбалылардың тәуелсіздігін қамтамасыздандыру.

Мәліметтер қорында мәліметтердің бүтіндігі, яғни олардың дәлдігі мен сәйкестігі сүйемелденеді.

 

  3 Дәріс Мәліметтер қорларын басқару жүйелерінің даму тарихы

 

Дәріс мазмұны:

-         мәліметтер қорларын басқару жүйелерінің даму сұрақтарын қарастыру.

 

Дәріс мақсаты:

- мәліметтер қорларын басқару жүйелерінің даму тарихын оқу.

 

3.1 Үлкен ЕЭМ-дегі мәліметтер қорлары

Есептеу техниканың тез дамуы, оның қоғам өміріндегі ролінің принципиалды өзгеруі мәліметтер қорларының дамуына да әсер етті. Мәліметтерді өңдеудің осы бағытының дамуында төрт кезеңін атауға болады. Бірақ та бұл кезеңдердің араларында қатаң уақыттық шектеулерінің болмауын айтып кету керек.

Мәліметтер қорларын басқару жүйелерінің (МҚБЖ) дамуының бірінші кезеңі мәліметтер қорларын үлкен ЕЭМ-да ұйымдастырумен байланысты. Мәліметтер қорлары ЕЭМ-ың сыртқы жадысында сақталатын еді, бұл мәліметтер қорларының пайдаланушылары ретінде әдетте пакеттік режімде жұмысқа қосылатын есептер болатын. Өздерінің есептеу ресурстары жоқ, тек қана орталық ЕЭМ үшін енгізу-шығару құрылғы болатын терминалдар арқылы қол жетудің интерактивті режімі қамтамасыздандырылған. Мәліметтер қорына қол жеткізу программалар әртүрлі тілдерде жазылып, әдеттегі есептеу программалар сияқты жұмысқа қосылады. Қуатты операциялық жүйелер көп есептерді параллельді орындауды қамтамасыздандырған.

Дамудың осы қадамының ерекшеліктері келесідей:

    - барлық МҚБЖ-ер қуатты мультипрограммалық операциялық жүйелерде негізделген, сондықтан әдетте таратылған қол жеткізу режімінде орталықтанған мәліметтер қорымен жұмыс жасау сүйемелденеді;

    - ресурстарды таратуын басқару функциялары көбінесе операциялық жүйемен орындалады;

    - мәліметтерге навигациялық қол жеткізу әдістеріне бағытталған мәліметтермен әрекеттесудің төменгі деңгейлік тілдері сүйемелденеді;

- мәліметтерді әкімшілеуге көп зер салынады;

     - мәліметтердің реляциялық моделін негіздеу мен формаландыру жағынан көп жұмыстар өткізіліп,  реляциялық  идеологияны іске асыратын бірінші System R жүйесі жасалды;

- ғылыми зерттеулердің нәтижелері баспаларда ашық талқыланып, мәліметтер қорларының теориясы мен практикасының барлық аспектеріне қатысты мақалалар көбейді; теориялық зерттеулердің  нәтижелері коммерциялық МҚБЖ-ге активті ендірілді;

- мәліметтердің реляциялық моделімен жұмыс істеуге негізделген жоғарғы деңгейлі тілдер пайда болды, бірақ осы бірінші тілдер үшін ешқандай стандарттар әлі жоқ болатын.

3.2  Дербес компьютерлер кезеңі

Қоғам өміріндегі есептеу техниканың орыны мен ролін дербес  компьютерлер мұғайым өзгертті. Дайын емес пайдаланушылардың жұмысына негізделген көптеген программалар пайда болды. Жүйелік программистер екінші орынға ығысты. Осы жағдайлар мәліметтер қорларымен жұмыс істеуге де әсер етті. Ақпараттың үлкен көлемдерін сақтауға мүмкіндік беретін мәліметтер қорларын басқару жүйелері деп аталған программалар пайда болды. Олардың мәліметерді енгізуге ыңғайлы интерфейсі, әртүрлі есеп берулерді генерациялауға ішкі құрылғылары болды. Осы программалар бұрында қолмен жасалатын көптеген есеп беру функцияларын автоматтандыруға мүмкіндік берді.

Дербес компьютерлердің бағалары төмендеген сайын оларды кәсіпорындар мен фирмалармен бірге жеке пайдаланушылар да сатып алатыен болды. Компьютерлер құжаттар мен өз есеп беру функцияларды дайындаудың құралы болып табылды. Осы жағдайлар мәліметтер қорларының даму саласына дұрыс әсермен бірге теріс әсерлерді де әкелді. Дербес компьютерлердің көрінген қарапайымдылығы, олардың программалық қамтамасыздандыруына жеңіл қол жетерлік көптеген дилетанттардың пайда болуына әкелді. Бірақ бұрында өз қызметінде есептеу техниканы қолданбайтын білімдердің көп салаларындағы пайдаланушыларға дербес компьютерлерге қол жетерлік оны қолдануын мәжбүр етті. Мәліметтерді өңдеудің дамыған ыңғайлы программаларға сұраныстар программалық қамтамасыздандыру өңдеушілеріне жаңа жүйелерді өңдеуге талап етті, бұл жүйелер үстелдік (desktop) МҚБЖ деп аталды.

Осы қадамның ерекшеліктері келесі:

- барлық МҚБЖ-р мәліметтер қорларын көбінесе монополды қол жеткізу режімінде қолдануға негізделген болатын. Бұл түсінікті, себебі компьютер дербес болғандықтан, ол желіге қосылмаған, ондағы мәліметтер қоры жалғыз пайдаланушының жұмысына негізделген болатын. Кейбір кезде бірнеше пайдаланушы өз жұмыстарын тізбектеп орындайтын болатын, мысалы, әуелі бухгалтерлік құжаттарды енгізетін оператор,  содан кейін бастапқы құжаттарға сәйкес операцияларды анықтайтын бас бухгалтер;

- МҚБЖ-ің көбісінде пайдаланушының дамыған және ыңғайлы интерфейсі болды. МҚБЖ көбісінде мәліметтер қорын бейнелеу және сұраныстарды жобалау жағынан жұмыс жасаудың интерактивті режімі болды. Сонымен бірге МҚБЖ-ің көбісі программалаусыз дайын қолданбалыны өңдеуге негізделген дамыған және ыңғайлы интерфейсін ұсынатын. Инструменталдық ортасы экрандық формалар шаблондары, есеп берулер, сұранысты графикалық құрастырушылары түріндегі қолданбалының дайын элементтерінен тұратын, оларды тек қана тұтас кешенге жинау керек болатын; 

  - барлық үстелдік МҚБЖ-де реляциялық модельді елестетудің тек қана сыртқы деңгейі сүйемелденетін, яғни мәліметтер құрылымының сыртқы кестелік түрі;

  - реляциялық алгебра мен SQL типті мәліметтермен әрекеттесудің жоғарғы деңгейлі тілдері болғанымен үстелдік МҚБЖ-де кестелердің бөлек жолдары деңгейіндегі мәліметтермен әрекеттесетін төменгі деңгейлі тілдер қолданылатын;

  - үстелдік МҚБЖ-де мәліметтер қорының сілтемелі және құрылымдық бүтіндігін қамтамсыздандыратын құралдары жоқ. Бұл функцияларды қолданбалылар орындау керек еді, бірақ қолданбалыны өңдеудің құралдарының аздығынан кейбір кезде оларды орындауға мүмкін болмайтын еді.  Осындай жағдайда бұл функциялар пайдаланушымен орындалады, сондықтан мәліметтер қорында сақталатын ақпаратты өзгерткенде немесе енгізгенге пайдаланушы қосымша бақылауды орнатады;

  - жұмыстың монополды режімі әкімшілік функцияларын жойды, сондықтан мәліметтер қорларын әкімдеудің инструменталдық құралдары дамыған жоқ;

  - және соңғы маңызды ерекшелік — үстелдік МҚБЖ жағынан аппараттық қамтамасыздандыруға көп талап қойылмайды. Мысалы, Clipper жүйесінде өңделген қолданбалылар PC 286 компьютерлерінде жұмыс істейді.

 

3.3 Таратылған мәліметтер қорлары

Тарих спирал бойынша дамитыны белгілі, сондықтан «дербестеу» процестен кейін кері — интеграциялау процесі басталды. Жергілікті желілер сандары көбейді, ақпараттар компьютерлер арасында таратылатын болды, желінің әртүрлі бөліктерінде сақталып логикалық бір бірімен байланысқан өңделетін ақпараттың келісушілігін орнату сұрақтары туды,   транзакциларды яғни мәліметтер қорын бір күйден басқа күйге көшіретін оған қолданатын операциялар тізбектерін параллельді өңдеумен байланысты есептер пайда болды. Осы есептерді тиімді шешу үшін үстелдік МҚБЖ артықшылықтарын сақтап, сонымен бірге ақпаратты параллельді өңдеуді ұйымдастырып мәліметтер қорының бүтіндігін сүйемелдеуге мүмкіндік беретін таратылған мәліметтер қорлары пайда болды.

Бұл қадамның ерекшеліктері:

- қазіргі кездегі МҚБЖ-ің барлығы толық реляциялық модельді сүйемелдейді;

- қазіргі кездегі МҚБЖ-ің көбісі көп платформалық архитектураға негізделген, яғни олар әртүрлі архитектуралары бар компьютерлерде және әртүрлі операциялық жүйелерде жұмыс жасай алады; сонымен бірге әртүрлі платформалардағы МҚБЖ-ен басқарылатын мәліметтерге пайдаланушының қол жеткізуі бірдей болады;

   - мәліметтер қорымен көп пайдаланушының жұмысын сүйемелдеу қажеттілігі және мәліметтерді таратылған сақтау мүмкіндіктері мәліметтер қорларын әкімдеу құралдарының дамуына себеп болды;

   - жаңа іске асыру қажеттіліктері таратылған мәліметтер қорларының іске асыруларын оптималдау жағынан теориялық жұмыстардың пайда болуына және таратылған транзакциялар мен сұраныстармен жұмыс жасауға келтірді, осы алынған нәтижелер коммерциялық МҚБЖ-де ендірілді;

   - үстелдік МҚБЖ-сі көмегімен өңделген клиенттік қолданбалыларды қосуға арналған құралдары және дамудың екінші кезеңіндегі үстелдік МҚБЖ-сі форматтарынан мәліметтерді экспорттау құралдары қазіргі кездегі МҚБЖ-де бар;

    - SQL89, SQL92, SQL99-дан бастап мәліметтерді бейнелеу және олармен әрекеттесу тілдерінің бірнеше стандарты  және әртүрлі МҚБЖ арасындағы мәліметтермен алмасу технологиялары өңделеді, мысал ретінде Microsoft фирмасы ұсынған ODBC (Open DataBase Connectivity) протоколын атауға болады;

       - объектті-бағытталған мәліметтер қорларының концепциясымен байланысты жұмыстар басталды.

 

     3.4 Мәліметтер қорларын басқару жүйелерінің даму перспективалары

     Бұл кезең мәліметтерге қол жеткізудің жаңа технологиясы — интранет пайда болуымен байланысты. Бұл амалдың клиент-сервер технологиясынан негізгі айырмашылығы: арнайы клиенттік программалық қамтамасыздандыруды қолданбауға болады. Алыстағы мәліметтер қорымен жұмыс істеу үшін интернеттің стандартты браузері қолданылады. Соңғы пайдаланушысы үшін мәліметтерге қатысу кәдімгі интернетпен жұмыс жасауға ұқсас.  Сонымен бірге пайдаланушы жүктейтін HTML беттеріндегі әдетте Java, Java-script, Perl, т.б. тілдерде жазылған код пайдаланушының барлық әрекеттерін бақылап, оларды мәліметтер қорына төменгі деңгейдегі SQL-сұраныстарға көшіреді. Сонымен, клиент-сервер технологиясында клиенттік программа орындайтын жұмысты осы код орындайды. Осы амал өте  ыңғайлы болғандықтан оны алыстан мәліметтер қорына қол жеткізумен бірге кәсіпорынның жергілікті желісінің пайдаланушылары да қолданатын болды.  Көптеген өзара байланысқан объектілердегі мәліметтерді келісіп өзгертетін күрделі алгоритмдерін қолданбайтын мәліметтерді өңдеудің қарапайым есептерді осы архитектураның ережесі бойынша қарапайым және тиімді шешіледі. Бұлкезде осы есепті қолданатына пайдаланушыны қосу үшін қосымша клиенттік программаны орнату қажет емес. Бірақ алгоритмдік күрделі есептерді арнайы клиенттік программалық қамтамсыздандыруын өңдеп, «клиент-сервер» архитектурасында іске асырған жөн.

 Мәліметтермен жұмыс істеудің аталған амалдарының әрқайсысының өз артықшылықтары мен кемшіліктері бар, олар таңдалынған әдісті пайдалану аймағын анықтайды. Қазіргі кезде амалдардың барлығы да кең қолданылады.

 

  4 Дәріс Тақырып аймақты жүйелік талқылау

 

Дәріс мазмұны:

-         нақты ортаның модельденетін бөлігін талқылау сұрақтары.

 

Дәріс мақсаты:

- модельденетін тақырып аймақты жүйелік талқылаудың амалдарын оқу.

 

 4.1 Ақпараттық жүйенің тақырып аймағы

 Әрбір ақпараттық жүйе өзінің міндетіне қарай нақты ортаның белгілі бөлігімен айналысады. Оны тақырып аймағы деп атайды. Пайдаланушыға кажетті нақты объектілерінің біршама жиынтығы тақырып аймақ болып табылады. Мәліметтер қорын жобалау кезеңінің алдында тағы бір кезең бар. Бұл кезеңнің моделі тақырып аймақтың ақпараттарын қолданатын МҚБЖ-нен тәуелсіз түрде көрсетуі керек.

 Сонымен, мәліметтер қорын жобалаудың бірінші кезеңінде тақырып аймақты жүйелік талқылауын орындау керек.

  Мәліметтер қорларын жобалау көз қарасы жағынан жүйелік талқылауда біріншіден тақырып аймақтың объекттері мен олар арасындағы нақты байланыстарын толығымен сөзбен бейнелеген жөн. Бұл бейнелеу тақырып аймақтың объектілері арасындағы барлық байланыстарын дұрыс анықтауы керек.

     Жалпы кезде тақырып аймақтың құрылымы мен құрамын анықтаудың екі амалы бар:

   - егер де қарастырылып отырған мәліметтер қоры кейбір адамдар топтарының ақпараттық қажеттіліктеріне қызмет жасауған өңделсе және олардың функциялары мен есептер кешені алдын ала белгілі болса онда «есептерден» бастап қозғалу функционалдық амалдың принципі болып табылады. Бұл жағдайда тақырып аймақтың бейнеленетін объектілерінің минималды қажетті жиыны анық белгілі болады;

   - егер де болашақ мәліметтер қорының пайдаланушылар ақпараттық қажеттіліктері белгіленбеген болса тақырыптық амал қолданылады. Бұл қажеттіліктер көп аспектілі және динамикалық болуы мүмкін. Тақырып аймақтың бейнеленетін объектілерінің минималды қажетті жиыны анықталмауы мүмкін. Бұл кезде тақырып аймақтың бейнеленуіне оның маңызды және сипаттайтын объекттері мен байланыстары кіреді. Құрастырылған мәліметтер қоры тақырыптық деп аталады яғни ол көптеген әртүрлі алдын ала анықталмаған есептерді шешуге қолданылуы мүмкін. Осындай тақырыптық мәліметтер қорын құрастыру қызығарлық болғанымен, тақырып аймақты әр жағынан қарастырып, пайдаланушылардың қажеттіліктерін нақтылау мүмкін емес.  Нәтижесінде осы жолмен құрастырылған мәліметтер қорының сұлбасы өте күрделі болып, оны белгілі есептерге қолдану тиімді болмайды. 

Практикада көбінесе бір жағынан анықталған есептерге немесе пайдаланушылардың функционалдық қажеттіліктеріне бағытталған, басқа жағынан жаңа қолданбалыларды қосу мүмкіншіліктері есепке алынатын компромисті нұсқаны қолданған жөн.

Жүйелік талқылау нәтижесінде келесілерді алу керек:

- мәліметтер қорында сақталатын және белгілі есептерді шешуге қолданылатын тақырып аймақтың объектілері туралы ақпараттың толық бейнеленуін;

- өңделген мәліметтер қоры көмегімен шешілетін белгілі есептердің қойылуын;

- мәліметтер қорын мәліметтермен толтыруға қолданатын кірудегі құжаттардың бейнеленуін;

- есептерді шешу алгоритмдерін қысқаша бейнеленуін;

- жүйе жасайтын шығудағы құжаттардың бейнеленуін.

 

 4.2 Тақырып аймақты бейнелеудің мысалы

 1 мысал. Баспа қызметімен байланысқан компаниясына ақпаратты жүйені өңдеу қажет болсын. Мәліметтер қоры компанияның редакторлар, менеджерлер, және басқа қызметкерлеріне ақпараттық қызмет жасауға негізделген және онда компанияның қызметкерлері, кітаптар авторлары, компанияның финанстық жағдайы туралы мәліметтерлер орналасады, әртүрлі есеп берулер дайындалады.

Тақырып аймағына сәйкес жүйе келесі ерекшеліктерді есепке алумен құрастырылады: әр кітап келісім шарт бойынша басылады; кітаптің бірнеше авторлары болуы мүмкін; келісім шартқа бір менеджер және кітаптің авторларының барлығы қолтаңбаларын қояды; әр автор бірнеше кітапті жазуы мүмкін (әртүрлі келісім шарттар бойынша); кітаптің сыртында орнатылған реті бойынша авторлардың гонорарлары әртүрлі болады; егер де қызметкер редактор болса, ол бір уақытта бірнеше кітаппен жұмыс істеуі мүмкін; әр кітаптің бірнеше редакторы болуы мүмкін, олардың біреуі жауапты редактор болады; әр тапсырыс бір тапсырыс берушілерге тіркеледі; сатып алу тапсырысында бірнеше кітап аталуы мүмкін.

Әр басып шығарылатын кітап келесідей параметрлерімен сипатталады: авторлар, аты, тиражы, шығу мерзімі, бір дананың бағасы, басуға жұмсалған жалпы шығын, авторлық гонорары.

Кітап авторлары туралы келесідей ақпарат болуы керек: аты–жөні, РНН, паспорттық мәліметтер, мекен жәйы, телефоны. Авторлар үшін олардың жазған кітаптары туралы мәліметтерді сақтау керек.

Баспасөздің әр қызметкері туралы келесідей мәліметтер сақталады: аты–жөні, табельдік нөмірі, жынысы, түған жылы, паспорттық мәліметтер, РНН, қызметі, оклады, мекен жәйы және телефоны. Реадкторлар үшін редакцияланатын кітаптар туралы мәліметтер, ал менеджерлер үшін – қол таңбалар қойылған келісім шарттар туралы мәліметтер сақталу керек.

Компанияның финанстық жағдайын көрсету үшін кітаптарға тапсырыстарды есепке алып отыру керек. Жүйеде тапсырыс үшін тапсырыс нөмірін, тапсырыс берушіні, оның мекен жайын, тапсырыс түскен мерзімін, оны орындау мерзімін, тапсырысқа түскен кітаптар тізімі мен олардың санын сақтау керек. 

Келесідей пайдаланушылар топтарына қызмет жасау үшін жүйені өңдейді: әкімшілік (дирекция), менеджерлер, редакторлар, тапсырыстарға қызмет жасайтын компанияның қызметкерлері.

Пайдаланушылардың мәліметтер қорын ақпараттық сүйемеледеуге мүмкіндіктері болуы керек: мәліметтер қорын билеу (ақпаратты жазу, оқу, өзгерту, архивте сақтау); мәліметтер қорының логикалық сәйкестігін қамтамасыздандыру; мәліметтерді рұқсат етілмеген немесе кездейсоқ қол жеткізуден сақтауды қамтамасыздандыру (қол жеткізу ережелерін орнату).

Сонымен бірге мәліметтер қорының пайдаланушыларының келесідей мүмкіндіктері болуы керек: ағынды жобалардың барлығының тізімін алу (баспадағы және сатудағы кітаптар тізімін); кітаптармен жұмыс істейтін редакторлар тізімін алу; кітап (жоба) туралы толық ақпаратты алу; белгілі автор туралы (бір немесе барлық жобалар бойынша) ақпаратты алу; сатулар туралы (бір немесе барлық жобалар бойынша) ақпаратты алу: ағынды жобалар бойынша сатулардың жалпы табысын анықтау; белгілі жоба бойынша автор гонорарының шамасын анықтау.

     2 мысал. Кітапханадағы кітаптарды беру мен қабылдауды есепке алуды автоматтандыратын ақпаратты жүйені өңдеу қажет болсын. Өңделген жүйе кітапханадағы кітаптарды білім саласы бойынша тіркейтін жүйелік каталогты сүйемелдеуі керек. Жүйелік каталогта  білім саласының өзінің уникалды ішкі нөмірі мен толық атауы болады. Әр кітапта бірнеше білім салалары бойынша мағлұматтар болуы мүмкін. Кітапханадағы әр кітаптің бірнеше данасы болуы мүмкін.

Кітапханада сақталатын әр кітаптің келесідей сипаттамалары бар: уникалды шифры, аты, авторлардың аты (болмауы мүмкін), басып шығарылған жері (қала), баспасөз, басып шығарылған жылы, беттер саны, кітаптың бағасы, кітаханадағы кітаптің дансының саны. Кітаптардың бірдей атаулары болуы мүмкін, бірақ олар өздерінің уникалды шифрлерімен (ISBN) айырылады.

     Кітапханада оқырмандардың картотекалары бар. Әр оқырман туралы картотекаға келесідей мағлұматтар енгізіледі: аты-жөні, мекен жәйы, телефондары (жұмыс және үй телефоны бар деп есептелінеді), туған күні. Әр оқырманға оқу билетінің уникалды нөмірі меншіктеледі. Әр оқырман бір уақытта 5 кітаптан артық ала алмайды. Оқырман бір атты кітаптің жалғыз ғана данасын ала алады.

    Әр кітаптің кітапханада бірнеше данасы болуы мүмкін. Әр дананың келесідей сипаттамалары бар: уникалды инвентарлы нөмірі, кітап шифрі (кітаптің бейнелеуіндегі уникалды шифрмен бірдей), кітапханадағы орны.

     Оқырманға кітап данасы берілген болса, кітапханада әдейі оны тіркеп қояды, тіркелу қағазға келесідей мәліметтер жазылады: кітапті алған оқырманның билетінің нөмірі, кітаптің алынған мерзімі, оны қайтару мерзімі.

     Жүйедегі ақпаратқа келесідей шектеулер ескертілген: кітаптің авторлары болмауы мүмкін; кітапханаға жазылатын оқырмандар 17 жасқа толуы керек; кітапханада 1960 жылдан бастап кәзіргі уақытқа дейін шығарылған кітаптар сақталады; әр оқырман бір уақытта 5 кітаптан артық ала алмайды; тіркелген кезде әр оқырман өзінің телефонын беруі керек (жұмыстағы немесе үйдегі); білімдердің әр саласы кітаптардің көп санына сілтеме жасауы мүмкін, және әр кітап білімдердің әртүрлі саласына қатысты болуы мүмкін.

Аталған ақпараттық жүйесімен келесідей пайдаланушылар топтары жұмыс істейді: кітапханашылар, оқырмандар, кітапхана әкімшілігі.

          Жүйемен жұмыс істегенде кітапханашы келесі есептерді шешеді:

          - жаңа кітаптарды қабылдап, оларды бір немесе бірнеше білім салаларына қатыстыру; оларды каталогтарда тіркеу;

          - оқырмандарға берілген кітаптарды есепке алуды орындау, бұл жұмыстың екі режимі бар деп есептелінеді: кітаптарды оқырмандарға беру және кітапханаға қайтарылатын кітаптарды олардан қабылдау; кітапті берген кезде оның данасы, берілген және қайтарылатын мерзімі тіркеледі; кітап қабылданған кезде оның инвентарлық нөмірінің сәйкестігі тексеріледі және ол бұрынғы орнына қойылады;

  - оқырмандар жоғалтқан кітаптарды акт бойынша есептен алып тастау;

  - оқырманның абонементін жабу.

 Оқырмандардың келесідей есептерді шешуге мүмкіндіктері болу керек:

-    жүйелік каталогты қарап шығу;

-    таңдалынған білім сала бойынша кітапханадағы кітаптар тізімін алу; 

-    таңдалынған автор бойынша оның кітаханадағы кітаптарының тізімін алу.

          Кітапхана әкімшілігі келесідей ақпаратты талап етеді:

          - уақытысында кітаптарды қайтармаған оқырмандар туралы;

          - оқылмайтын яғни кітаптің бір да данасы оқырмандармен алынбаған кітаптар туралы;

          - белгілі кітаптің бағасы туралы;

          - өте көп сұраныстыратын яғни барлық даналары оқырмандармен алынған кітаптар туралы мәліметтерді. 

Көрсетілген мысалдар келесіні анықтайды: жобаны өңдеу алдында жүйеде қандай жұмыстар орындалуы керек, онда қандай пайдаланушылар жұмыс істейді, әр пайдаланушы қандай есептерін шешеді – осы сұрақтарға толық жауап алу керек. Мәліметтер қорын жасаудың анық мақсаты белгілі болмаса, өңдеушілердің жұмысы тиімді болмайды, мәліметтер қорының жобасы ыңғайсыз, нақты модельденетін объектпен, оны қолданып шешетін есептерге сәйкес болмайды. 

 

  5 Дәріс. Мәліметтер қорларын жобалаудың принциптері

 

Дәріс м азмұны:

- мәліметтер қорларын жобалаудың принциптері.

 

Дәріс мақсаты:

-         мәліметтер қорларын жобалаудың негізгі принциптерін оқу.

 

5.1 Мәліметтер қорларының архитектурасы. Физикалық және логикалыө тәуелсіздік

Мәліметтерге қол жеткізу әдістерінің маңызды даму аспектісі келесі идея болып табылды: пайдаланушылармен қабылданатын мәліметтердің логикалық құрылымы мен олармен әрекеттесуін компьютерлік жабдықтар талап ететін мәліметтердің физикалық көрсетуінен бөлу. МҚБЖ-ң жасалуын   зерттейтін ғылыми процесінде әр түрлі іске асырулар ұсынылды. Стандарттау бойынша америкалық ANSI (American National Standards Institute) институті   ұсынған мәліметтер қорларын ұйымдастырудың үш деңгейлі жүйесі ең тиімді болып табылды. Бұл үш деңгейлі мәліметтер қорларының архитектурасы сыртқы, концептуалды және ішкі деңгейлерден тұрады.

Модельдердің сыртқы деңгейі ең жоғарғы деңгей, мұнда мәліметтерге әр модельдің өзінің елестетуі бар. Бұл деңгей әртүрлі қолданбалылардың мәліметтер қорына көзқарасын анықтайды. Әр қолданбалы тек қана өзіне қажетті мәліметтерді көріп, өңдейді. Мысалы, жұмыстарды тағайындау жүйесі қызметкерлердің квалификациясы туралы мағлұматтарды қолданады, бірақ оған қызметкердің мекен жәйы, телефоны, оклады туралы мәліметтер керек емес, керісінше осы мәліметтер кадрлар бөлімсешінде қолданылады. 

   Пайдаланушылардың елестетулерін анықтайтын мәліметтер қорының құрылымдық деңгейі сыртқы деңгей деп аталады. Бұл деңгей пайдаланушыға ең жақын деңгей, ол пайдаланушы мәліметтерді қай түрде көретінімен байланысты. Әрбір пайдаланушылар тобының мәліметтер қорындағы мәліметтер туралы елестетулері бар. Осындай елестетулер жинақтары сыртқы деңгей болады.

Ортанғы басқару түйін концептуалды деңгей болып табылады; мұнда мәліметтер қорымен жұмыс істейтін қолданбалылардың барлығы қолданатын мәліметтер біріктіріліп, жалпы түрде көрсетіледі. Концептуалды деңгей мәліметтер қоры жасалатын тақырып аймақтың (нақтылықтың объектілерінің) жалпы моделін көрсетеді. Әр модель сияқты концептуалды модель нақтылықтың объектілерінің өңдеу жағынан маңызды болатын ерекшеліктерін көрсетеді.

  Мәліметтер қорының логикалық сұлбасын анықтайтын деңгей - концептуалды деңгей болады. Концептуалды деңгейде мәліметтер қорының концептуалды жобасы жасалынады. Концептуалды жобалауда пайдаланушылардың ақпараттық қажеттіліктері талқыланып, оларға керек мәліметтердің элементтері анықталады. Концептуалды жобалау нәтижесінде концептуалды сұлба, яғни мәліметтердің барлық элементтерінің және олар арасындағы қатынастарының бірлескен логикалық бейнелеуі пайда болады.

Физикалық деңгей —ақпаратты сақтайтын сыртқы құрылғыларда орналасқан файлдардағы мәліметтер.

   Мәліметтер қорына физикалық көз-қарасты (дискілер, физикалық адрестер, индекстер, көрсеткіштер, т.б.) анықтайтын мәліметтер қорының құрылымды деңгейі ішкі деңгей деп аталады. Бұл деңгейді физикалық мәліметтер қорының жобалаушылары бақылайды. Пайдаланушылар (пайдаланушы ретінде) бұл деңгеймен жұмыс жасамайды. Сонымен, бұл деңгей мәліметтерді сақтаудың физикалық әдістерімен байланысты.

Мәліметтермен жұмыс жасағанда осы архитектура логикалық (1 және 2 деңгейлер арасында) және физикалық (2 және 3 деңгейлер арасында) тәуелсіздікті қамтамасыздандыруға мүмкіндік береді. Мәліметтер қорымен жұмыс жасайтын барлық қолданбалыларды бөлек өзгертуге мүмкіндік болса, сонда логикалық тәуелсіздік бар деп есептеледі. Ал физикалық тәуелсіздік мәліметтер қорымен жұмыс жасайтын барлық қолданбалылардың жұмысын бұзбай сақталатын мәліметтерді бір орнынан басқа жерге тасымалдауға мүмкіндік береді. Файлдық жүйелерді қолданғанда  осы қасиеттер жоқ болатын.

Концептуалды деңгейдің бөлінуі мәліметтер қорын орталықтанған басқару аппаратын өңдеуге мүмкіндік берді.

  Егер де сыртқы деңгей пайдаланушылардың жеке елестетулерімен байланысты болса, концептуалды деңгей пайдаланушылардың қорытынды елестетулерін анықтайды деуге болады. Басқа сөзбен айтқанда, мәліметтер қорына «сыртқы» көз-қарастар көп болуы мүмкін, әрқайсысы мәліметтер корының кейбір бөлігінің елестетуінен тұрады, ал «концептуалды елестету», толық мәліметтер корының абстракты елестетуінен тұратын жалғыз ғана болады. Және де сақталынатын мәліметтер корын толығымен көрсететін жалғыз «ішкі» елестету болады. 

 

  5.2 Мәліметтердің концептуалды модельдері

  Мәліметтер қорларының концепциясында жалпы «мәліметтер» және  «мәліметтер моделі» категориялар негізгі болып табылады. Объектті, шартты, оқиғаны немесе басқа факторларды сипаттайтын белгілі мәндер, параметрлер жиындары мәліметтер қорларының концепциясында «мәліметтер» түсініктемесі болады. Мәліметтердің анықталған құрылымы болмайды, оларға пайдаланушы белгілі құрылым меншіктесе яғни олардың мағналы мазмұнын түсінсе, сонда мәліметтер ақпарат болады. Сондықтан мәліметтер қорлары саласындағы негізгі түсініктеме модель түсініктемесі болып табылады. Бұл терминнің бір мағналы анықтамасы жоқ, әр түрлі авторларда бұл абстракция кейбір айырмашылықтармен анықталады, бірақта бұл анықтамалардың жалпы сипаттарын белгілеуге болады. Мәліметтер қоры дегеніміз анықталған жолмен құрылымдасқан мәліметтер жиыны екенін еске салып кетейік. Мәліметтер қорының құрылымы тақырып аймақтың құрылымын іске асырады.

Тек қана таңдалынған бөліктерін көрсететін нақтылықтың елестетуі модель болып табылады. Мәліметтер қорлары көз қарасы жағынан  мәліметтерді құрылымдастыру әдістері мәліметтер моделі деп аталады.

Алдында қарастырылған үш деңгейлі архитектураға сәйкес мәліметтер моделі түсініктемесі әр деңгейге қатысты анықталады.

  Концептуалды модель кез-келген мәліметтер қоры жүйесінің өзегі болып табылады. Концептуалды деңгейде концептуалды жобалау яғни мәліметтер қорының концептуалды сұлбасын өңдеу орындалады. Бұл қадамда пайдаланушылар мен мәліметерді елестетулерінің толық модельдері жасалып, соңынан олар мәліметтер қорының құрамында болатын мәліметтердің барлық элементтерін көрсететін концептуалды модельге ұйымдастырылады.

   Концептуалды модель тақырып аймақты сөзбен бейнелегеннен кейін өңделеді. Бұл модель тақырып аймақтың формалданған бейнелеуі болып табылады, бұл бейнелеуді мәліметтер қорларының мамандары емес, басқа да адамдар түсінуі керек және ол белгілі мәліметтер қорын басқару жүйесіне тәуелді емес. Мәліметтер қорын басқару жүйесін таңдау бөлек есеп болып табылады, оны шешу үшін жоба дайын болуы керек.

 Концептуалды жобалау тақырып аймақтың семантикасын (мағнасын) мәліметтер қорының моделінде көрсетумен байланысты. Реляциялық модель қарапайым және қысқаша болғадықтан тақырып аймақтың мағнасын көрсетпейді.

Семантиканы елестету мәселесін шешу үшін өткен ғасырдың 70-ші жылдарында өңдеушілермен семантикалық модельдер деп аталған бірсыпыра мәліметтер модельдері ұсынылған. Мәліметтердің құрылымын модельдегенде мәліметтер мағнасына сүйемелденген модельдеу семантикалық модельдеу деп аталады. Осындай модельдер ретінде 1981 жылы Хаммер (Hammer) және Мак-Леон (McLeon) ұсынған модельді, Шипман (Shipman) ұсынған функционалдық модельді (1981 жылы), және  1976 Питер Пин-Шэн Чен (Chen) ұсынған «нақтылық—байланыс» модельді, т.с. атауға болады. Барлық модельдердің артықшылықтары да кемшіліктері де болды. Кәзіргі кезде көбінесе қолданылатын соңғы модель. Соңынан көптеген авторлары осындай модельдердің өздерінің нұсқаларын ұсынды (Мартин, IDEF1X, Баркер, т.б. нотациялары).

Бұл жерде семантикалық модельдеу құралы ретінде нақтылық—байланыс (ER - Entity-Relationship) диаграммаларының әр түрлі нұқсалары қолданылады. Кәзіргі кезде Чен моделі концептуалды модельдеудің стандарты болып табылады. Қысқаша оны «ER-модель» деп атайды. «Нақтылық—байланыс» диаграммалары тақырып аймақтың объектілерін, олардың қасиеттерін (атрибуттарын) және объектілер арасындағы байланыстарын графикалық түрде көрсетеді. Сурет әр кезде де мәтіндік бейнелеуден көрнекі болады деген пікірімен диаграммалар қолданылады.

 

  6 Дәріс. Мәліметтерді концептуалды модельдеу

 

Дәріс мазмұны:

- мәліметтерді концептуалды модельдеудің негізгі анықтамалары.

 

Дәріс мақсаты:

         - мәліметтерді концептуалды модельдеудің негізгі принциптерін оқу.

 

  6.1 Мәліметтердің концептуалды модельдерінің негізгі анықтамалары

 

Кез-келген модельдегідей концептуалды модельдің бірсыпыра негізгі түсініктемелері бар. Бастапқы элементтер болып табылып, алдын-ала анықталған ережелер бойынша олардан күрделілеу объекттер құрастырылады.  Кәзіргі кезде күрделі программалық жүйелерді өңдеуге негізгі болып табылатын объектілік бағытталған концепциясымен осы модель үлкен дәрежеде келісіледі.

          Концептуалды модельдің  бас элементтері объекттер мен қатынастар болып табылады. Пайдаланушы маңызды деп таңдаған нақтылықтың модельденетін бөлігінің заттары объекттер деп аталады. Тақырып аймақтың заттар жиыны құрылымы мен жүріс–тұрысы жағынан біртекті болатын объектілер топтарына бөлінеді, олар объектілік жиынтықты құрастырады. Объектілік жиынтықтың белгілі элементі объект-элемент болады. Объект әдетте зат есімдермен көрсетіледі. Объектілік жиынтықтың аты улкен әріппен жекешек жазылады. Мысалы, АДАМ – адамдарды елестетін объектілік жиынтықтың аты, объектілік жиынтықтың элементі жәй әріптермен («адам») белгіленеді.

  Объектілік жиынтықтар лексикалық және абстаркты болады. Басып шығарылатын элементтерден тұратын объектілік жиынтық лексикалық объектілік жиынтық деп аталады. Объектілік жиынтықтың элементтерін басып шығаруға мүмкіндік болмаса объектілік жиынтық абстракты объектілік жиынтық болады.

Концептуалды модельді компьютерлік іске асырғанда лексикалық объектілердің элементтері символдар тізбегі ретінде көрсетіледі. Абстракты объектілердің элементтері жүйеден тыс мағынасы жоқ ішкі нөмірлерімен көрсетіледі. Ішкі нөмірді объект идентификаторы немесе суррогатты кілт деп атайды. Сонымен, жүйеден тыс жерде мағынасы жоқ абстрактты объект-элементтің идентификаторы сурогатты кілт болып табылады.

  Объектілер базалық (бас) немесе бағынышты (ұрпақтық) деп бөлінеді. Мысалы, кітапхананың оқырманы негізгі объект, ал осы оқырманның абонементі бағынышты объект болып табылады, себебі ол сәйкес оқырманның болуына тәуелді. 

Кейбір объектілік жиынтықтар басқа объектілік жиынтықтарының құрамына кіреді. Басқа объектілік жиынтықтың ішкі жиынтығы болатын объектілік жиынтықты нақтылау деп атайды. Басқа объектілік жиынтықтың сыртқы жиынтығы болатын объектілік жиынтық жалпылау болып табылады. 

Екі объектілік жиынтықтар элементтерінің арасындағы байланыстар орнатылуы мүмкін. Объекттер өзара қалай әрекеттесетінін немесе қатынасатынын көрсететін бинарлық ассоциациялар байланыстар болып табылады. Байланысты екі объект арасында немесе объекттің өзін өзімен (рекурсивті байланыс) орнатуға болады. Байланыс екі объектілік жиынтықтар элементтерінің өзара байланысуын көрсетеді. Екі объектілік жиынтықтар элементтерінің байланысуы қатынас деп аталады, қатынастар етістіктермен көрсетіледі.  Қатынастың өзі объектілік жиынтық болып табылады, ол қатынасты байланыстыратын екі объектілік жиынтықтардың объект-элементтерінің жұптарынан тұрады. Объектілік жиынтық ретінде қарастырылатын қатынас құрамды объектілік жиынтық деп аталады. Құрамды объектілік жиынтықтарға аттар беріп, оларды жәй объектілік жиынтықтар сияқты басқа қатынастарда қолдануға болады.

  Бір объектілік жиынтықтың элементтерінің басқа объектілік жиынтығының элементтерімен байланыстарының максималды саны қатынастың құаттылығы деп аталады. Бір бағыттағы бірге тең максималды қуаттылық математикадағы жиынтықтар арасында бір-бірге немесе көп-бірге сәйкестіктерді орнататын функция түсініктемесіне сәйкес. Сондықтан, бағыттардың біреуінде максималды қуаттылығы бірге тең болатын қатынас осы бағытта функционалды деп аталады.    

  Егер де қатынастың максималды құаттылығы екі бағыттада бірге тең болса, қатынас бір-бірге қатынасы деп аталады (1:1 немесе 1-1 деп белгіленеді). Егер де қатынастың максималды құаттылығы бір бағытта бірге тең, кері бағытта көпке тең болса, қатынас  бір-көпке қатынасы деп аталады (1:* немесе 1:М деп белгіленеді). Егер де қатынастың максималды құаттылығы екі бағыттада көпке тең  болса, қатынас  көп-көпке қатынасы деп аталады (*:* немесе М:М деп белгіленеді).

Егер де қарастырылы отырған байланыста объекттердің әр данасы байланысу керек болса, объекттер арасындағы қатынас міндетті болып табылады, кері жағдайда міндетті емес болады. Сонымен бірге байланыс бір жағынан міндетіі, басқа жағынан міндетті емес болуы мүмкін.

   Бизнестегі көп мәселелер жоғарғы деңгейдегі қатынастарды қолдануын талап етеді, мұндай қатынастарға үш немесе оданда көп объектілік жиынтықтар қатысады. Үш немесе оданда көп объектілік жиынтықтар арасындағы қатынас жоғарғы деңгейдегі қатынас деп аталады. Екі объектілік жиынтықтар арасындағы қатынас бинарлы қатынас деп аталады. N объектілік жиынтықтар арасындағы қатынас (жоғарғы деңгейдегі қатынас) n-арлық қатынас деп аталады

  Объектілік жиынтықтардың элементтерінің атрибуттары бар деп есептеледі. Бір объектілік жиынтықтың басқа объектілік жиынтығымен функционалды қатынасы объект атрибуты болып табылады. Егер де атрибуттар басқа қатынастарда қолданбаса атрибуттар деп  объекттердің кейбір сипаттамаларын түсінеді. Кәдімгідей қолданғанда атрибуттар объекттен атрибутқа қарай функционалды қатынас болып табылады. Басқа сөзбен айтқанда атрибут мәні объекттің әр элементі үшін бір мағналы анықталған дегеніміз. Мысалы, әр адамда туған күні жалғыз дата болып табылады. Егер де объектілік жиынтықтың элементі үшін кейбір атрибуты анықталмаған болса, онда объектілік жиынтық элементінің атрибуты бос мәнді болады. Сонымен, объектілік жиынтықтың элементі үшін атрибут мәні анықталмаған болса, атрибут мәні бос болады.

  Атрибуттарды объекттерден бөлу керек, себебі атрибут мәндері өзгеруі мүмкін, ал бейнеленетін объект өзгермейді. Бірақ атрибуттардың барлығы өзгермейді. Әдетте, кілттер ретінде қолдануға болатын мәндері өзгермейтін атриуттар ізделінеді.  Объектілік жиынтығының элементін бір мағыналы анықтайтын атрибуттар мәндері кілт немесе идентификатор болып табылады. Кілт кейбір объекттер үшін қажет емес. Мысалы, сатылымдарды тіркейтін мәліметтер қорында пайдаланушыға тек қана сатылымдар көлемдері мен сатылған тауар қажет болсын. Көптеген сатылымдардың тауар мен көлем мәндері бірдей болуы мүмкін. Егер де пайдаланушыға екі осындай сатылымды айыру қажет болмаса, әр сатылым үшін кілтті жасау керек емес. Кілтті жасамаған себептен ешқандай салдар болмайды.

         Нақтыланған объекттер жалпылау объекттердің барлық атрибуттары мен қатынастарына ие болады. Сыртқы объектілік жиынтықтың барлық атрибуттары мен қасиеттерін ішкі объектілік жиынтықпен қабылдау мұрагерлік деп аталады.

  Модельдеудің базалық амалдары көмегімен жасалған модельдер қарапайым болып табылады, сонда да олардың мүмкіншіліктері мен пайдасы өте маңызды.

 

  6.2 Концептуалды модельді графиқалық көрсету

  Тақырып аймақты сөзбен бейнелегеннен кейін жобалаудың екінші кезеңінде мәліметтер қорының концептуалды моделін өңдеу қажет. Концептуалды модель тақырып аймақтың формалданған бейнелеуі болып табылады, және оны мәліметтер қорлар саласында маман емес адамдарда түсінуі керек. Мәліметтер қорының жобасының дұрыстығын және тереңдігін бағалауға мүмкін болатындай осы бейнелеу толық және әрине, белгілі мәліметтер қорларын басқару жүйесінен тәуелсіз болуы керек. МҚБЖ-ін таңдау сқрағы бөлек есеп болып табылады, бұл есепті шешу үшін ешқандай белгілі МҚБЖ-ен байланыспаған жобамыз болуы керек.

Мәліметтер қорларын концептуалды модельдеуге мәліметтер қорын объекттер мен олар арасындағы байланыстар түрінде көрсететін ER-модель қолданылады. Қазіргі кезде ER-модель үшін барлығы қабылдаған жалғыз белгілеу жүйесі жоқ, әртүрлі графикалық белгілері қолданылады. Бірақ біреуін түсініп, басқаларды да қолдану қиын емес.

Объектілік жиынтықтың көп тараған графикалық белгілеуінің бірі - төртбұрыш, ал жиынтықтың элементтері нүктемен белгіленеді. Объектілік жиынтықтың нақтылауы U символымен белгіленеді. Атрибуттар овалдарда орнатылады. Объектілік жиынтықтың тағы бір белгілеуі де төртбұрыш, оның жоғары жағында объекттің аты, ал төмен жағында атрибуттар аттары, сонымен бірге кілттік атрибуттар астынан сызылып немесе басқа шрифтпен жазылады. Объектілік жиынтықтар арасындағы байланыстар түзу сызықтармен белгіленеді, осы сызықтың ортасында байланыс атын орнатады. Кейбір кезде көрнекі болу үшін байланыс атын осы сызудың ортасында орнатқан ромб ішінде жазады.

         Әр түрлі нұсқаларда байланыс қуаттылығы өзгеше белгіленеді. Байланыстың көп болатынын байланыс сызығын бірнешеге бөлу жолымен немесе * және М символдарымен көрсетуге болады. Байланыстың міндетті екеніде әртүрлі жолдармен белгіленеді. Мысалы, байланыстың міндетті еместігін байланыс шегіндегі бос шеңбермен, ал міндетті екенін байланысқа перпендикуляр сызумен көрсетуге болады. Объекттер арасындағы өзара байланыстардың мағнасын дұрыс түсінуге байланыстың графикалық интерпретациялануы мүмкіндік береді және көрнекі болады.

Мысал ретінде СТУДЕНТ және МҰҒАЛІМ объектілік жиынтықтар арасындағы байланыстарды көрсететін ER-диаграммасын келтірейік. Бұл мысалда байланыс – диплом жобалаға жетекші болу: әр студенттің жалғыз жетекшісі бар, бірақ мұғалімде диплом жазатын студенттердің көп саны болуы мүмкін, байланыс «бір-көпке» (6.1 суретті қараңыз).

 

              

6.1 Сурет  – СТУДЕНТ және  МҰҒАЛІМ объекттерді байланыстыру нәтижесіндегі  «бір-көпке» қатынастың мысалы

Тақырып аймақтың объекттер мен байланыстар жиындары түрдегі моделін құрастыру нәтижесінде байланысқан графты аламыз. Алынған графта циклдік байланыстар болмауы керек, олар модельдің дұрыс еместігін анықтайды.

7 Дәріс. Талқыланатын тақырып аймақтың ER-диаграммасын өңдеу

 

 Дәріс мазмұны:

 - ER-диаграммаларды өңдеудің әдістері.

 

 Дәріс мақсаты:

   - талқыланатын тақырып аймақтың ER-диаграммасын өңдеу.

 

   Концептуалды жобалаудың негізгі есептері жүйенің тақырып аймағын анықтау және программалық қамтамасыздандыруға мәліметтер қорының болашақ пайдаланушылар позицияларынан көз қарасты құрастыру. Бірінші мысал ретінде кітапханада көрсетілетін кітаптар мен білім салаларының ақпараттарын сақтауға негізделген жүйенің концептуалды моделін жобалайық. Тақырып аймақтың бейнелеуі алдында (4 дәріс) келтірілген.

 Негізгі объектілік жиынтықтарды анықтайық.

 Біріншіден КІТАПТАР объектілік жиынтығы бар, оның кілті болатын әр кітаптің уникалды шифры, және тақырып аймақтың бейнелеуінен алынған бірсыпыра атрибуттары бар.

 КІТАПТАР жиынтығының даналары кітапханада сақталатын кітаптар жиынтығын құрастырады. КІТАПТАР жиынтығының әр данасы полкада тұрған белгілі кітапті анықтамайды, ол әдетте кітапхананың тақырыптық каталогында берілетін кейбір кітаптің бейнелеуіне сәйкес.

Әр кітаптің бірнеше данасы болуы мүмкін, осы даналар кітапхананың полкаларында тұратын белгілі кітаптар. Осыны көрсету үшін ДАНАЛАР деген объектілік жиынтықты енгіземіз, бұл жиынтық кітапханадағы барлық кітаптардың даналарының бейнелеулерінен тұрады. ДАНАЛАР объектілік жиынтығының әр данасы полкада тұрған белгілі кітапқа сәйкес. Сонымен бірге, кітаптің әр данасы кітапханада немесе кейбір оқырманның қолында болуы мүмкін; соңғы жағдайда осы дана үшін қосымша оқырманның кітапты алған күні мен оны қайтаратын датасы көрсетіледі.

Байланыстар міндетті және факультативті болатынын еске салып кетейік. Егер де бір типті объект басқа типті объектпен міндетті түрде байланысатын болса осы типтер объекттері арасында міндетті байланыс бар болады. Кері жағдайда байланыс факультативті болып табылады.

КІТАПТАР және ДАНАЛАР объекттер арасында екі жақтанда міндетті «бір-көпке» (1:М) байланысы бар. Байланыстың осы типі немен анықталады? Әр кітаптің кітапханада бірнеше данасы бар деп болжауға болады, сондықтан байланыс «бір-көпке» болып табылады. Сонымен бірге кітапханада белгілі кітаптің бір да данасы жоқ десек, онда осы кітаптің бейнелеуін сақтамаймыз. Сондықтан кітап КІТАПТАР объектте бейнеленген болса, кітапханада осы кітаптің ең кемінде бір данасы болғаны. Сондықтан кітап жағынан байланыс міндетті.

ДАНАЛАР объектті қарастырсақ, кітапханадағы барлық даналар белгілі кітаптің данасы болады, сондықтан  ДАНАЛАР объектісі жағынан да байланыс міндетті болады.

Енді біздің жүйемізде оқырман қалай көрсетілетінін анықтау керек. Оларды көрсету үшін, әрине,  ОҚЫРМАНДАР объектілік жиынтығын енгіземіз, бұл жиынтықтың әр элементі белгілі оқырманды көрсетеді. Кітапханада әр оқырманға оны бір мағналы анықтайтын уникалды оқу билетінің нөмірі меншіктеледі. Оқу билетінің нөмірі ОҚЫРМАНДАР объекттің кілттік атрибуты болып табылады. Сонымен бірге қойылған есептерді шешуге мүмкіндік беретін ОҚЫРМАНДАР объектте қосымша атрибуттар болуы керек, осы атрибуттар  «Аты-жөні», «Оқырман адресі», «Үй телефоны» және «Жұмыс телефоны» болып табылады. Неге телефондарға екі бөлек атрибуттарды бөлдік? Себебі оқырманды табу үшін әртүрлі уақытта оқырманға осы нөмірлермен телефон шалу қажет болады, кітапхананың әкімдігіне телефонның типін білу қажет. Тақырып аймақтың бейнелеуінде оқырмандар жасына шектеу қойылған, сондықтан  ОҚЫРМАНДАР объектіне оқырмандар жасын бақылауға мүмкіндік беретін тағыда міндетті «Туған жылы» атрибутын орнатамыз.

Тақырып аймақтың бейнелеуінде айтылғандай әр оқырман кітаптардың бірнеше данасын ала алады. Осыны белгілеу үшін ОҚЫРМАНДАР және ДАНАЛАР жиынтықтар арасында байланысты орнатамыз. Неге байланыс ОҚЫРМАНДАР мен КІТАПТАР жиынтықтар арасында орнатылмайды? Себебі оқырман кітапханадан белгілі кітаптің белгілі данасын алады. Ал, оқырман қандай кітапты алғанын ДАНАЛАР және КІТАПТАР объекттер арасындағы қосымша байланыс арқылы анықтаймыз. Осы байланыс әр данаға бір кітапті сәйекестіреді. Сондықтан оқырмандармен алынған кітаптардің тек қана инвентарлық нөмірлерін байланыстырсақ та, кез-келген уақытта оқырмандар қандай кітапті алғанын білеміз.

ОҚЫРМАНДАР және ДАНАЛАР объекттер арасындағы байланыс «бір-көпке» байланысы болып табылады, жәнеде ол екі жақтанда міндетті түрдегі емес. Ағымдағы уақытта оқырманда ешқандай алынған кітап болмауы мүмкін, басқа жақтан, кітаптің белгілі данасы кітапхана полкасында тұруы мүмкін (ешкім оны алмады).

Енді жүйелік каталогпен байланысты соңғы объектті көрсетуіміз керек. Кітапханадағы кітаптардың білім салалар тізімі жүйелік каталогта орнатылған. Кітапханадағы жүйелік каталогты еске салыңыз, егер де кітаптардың авторлары мен аттарын білмесек, қажетті кітаптарды іздеуін осы каталогтан бастаймыз.

Білім саланың атауы өте ұзын болып, бірнеше сөздерден тұруы мүмкін. Сондықтан моделімізге екі «Білім саланың коды» және «Білім саланың атауы» атрибуттары бар ЖҮЙЕЛІК_КАТАЛОГ объектілік жиынтықты орнатамыз. «Білім саланың коды» атрибуты объектілік жиынтықтың кілттік атрибуты болады.

Әр кітапта бірнеше білім салалардан ақпарат орнатылуы және кітапханада бір білім саланың бірнеше кітабі болуы мүмкін екенін тақырып аймақтың бейнелеуінен түсіндік. Сондықтан ЖҮЙЕЛІК_КАТАЛОГ және КІТАПТАР жиынтықтар арасында «көп-көпке» байланыс орнатылады. Бұл байланыс екі жақтанда міндетті болып табылады. Әрине, кітапханада бір да кітабі жоқ білім саласы жүйелік каталогта көрсетілмейді. Кері жағынан, оқырман тауып алу үшін әр кітап бір немесе бірнеше білім саласына орнатылады.

Бұл қатынас құрамды объектілік жиынтықты құрастырады. Ыңғайлы болу үшін осындай жиынтықтарға кейбір кезде объектілік атаулар (қатынас атына қосымша) беріледі – зат етістіктер. Осы жиынтықты МАҒЛҰМАТТАР деп атайық. Құрамды объектілік жиынтық графикалық түрде қатынаспен оған қатысатын объектілік жиынтықтарды қоршайтын төртбұрыш болып табылады (7.1 суретті қараңыз).

 

 

7.1 Сурет - «Кітапхана» тақырып аймақтың концептуалды  моделі

Екінші мысалда баспа қызметімен байланысатын компанияның ақпаратын сақтауға негізделген жүйенің концептуалды моделін жобалаймыз. Тақырып аймақтың бейнелеуі алдында келтірілген (4 дәріс). Модельді өңдеуін негізгі объекттерді анықтаудан бастаймыз.

Біріншеден КІТАПТАР объектілік жиынтық және әр кітаптің бірсыпыра атрибуттары бар болады, олар тақырып аймақтың бейнелеуінен алынады. Өңделетін жүйеде авторларды көрсету үшін АВТОРЛАР объектілік жиынтықты орнатамыз, бұл жиынтықтың әр данасы белгілі авторды көрсетеді (бұл жиынтықтың атрибуттары да тақырып аймақтың бейнелеуінде келтірілген). Бұл жерде жазылып, басуға дайын кітаптар туралы әңгімелеп отырғанымызды айтып кеткен жөн. Әр кітаптің белгілі авторлар тізімі бар, әр автор (авторлар тобы) бірнеше кітапті жазуы мүмкін. Жалпы кезде бұл байланыс «көп-көпке» болады. Осындай жағдайда бұл қатынас БАСУҒА_ДАЙЫН_КІТАПТАР деген құрамды объектілік жиынтықты құрастырады. Бұл жиынтықтың өзінің атрибуттары болуы мүмкін, мысалы, тиражы, бағасы, шығу мерзімі.

Белгілі кітапты басып шығару жұмысына компанияның қызметкерлері қатысады, оларды  сәйкес атрибуттары бар ҚЫЗМЕТКЕРЛЕР объектілік жиынтықпен көрсетеміз. Қызметкерлер кітаптардың редакторлары және де кітапты басып шығаруға келісім шарттарды дайындайтын менеджерлер деп бөлінеді. Бұл қызметкерлер топтарының функциялары әртүрлі. Сондықтан, ҚЫЗМЕТКЕРЛЕР объектілік жиынтықтың нақтылауларын енгіземіз - МЕНЕДЖЕРЛЕР және РЕДАКТОРЛАР. Әр кітапті редакторлардың белгілі тобы  (бірнеше редакторлар) редакциялайды, бұл топ бірнеше кітаптармен жұмыс істеуі мүмкін: жиынтықтардың қатынасы  «көп-көпке». Бұл қатынасты РЕДАКЦИЯЛАУ деп атауға болады – жаңа объектілік жиынтық, оның, мысалы, келесідей атрибуттары бар: басталу мерзімі, аяқтау мерзімі.

Авторлардың әр тобы (немесе жеке автор) бірнеше кітапті басып шығаруға келісім шарттарға қол қоюлары мүмкін. Менеджерлер де көптеген авторлармен жұмыс істейді. Сондықтан АВТОРЛАР және МЕНЕДЖЕРЛЕР жиынтықтарының арасындағы қатынас құаттылығы «көп-көпке» болады, бұл қатынас жаңа КЕЛІСІМ_ШАРТ деген объектілік жиынтықты құрады (контракттар атрибуттары – нөмірі, қол қою датасы, авторлық гонорар).

Компанияның негізгі қызметі аталған кітаптарды басуға тапсырыстарды орындау: ТАПСЫРЫС_БЕРУШІЛЕР объектте тапсырыс берушілер туралы мәліметтер сақталады (тапсырыс берушінің аты-жөні, адресі, телефоны). Тапсырыс берушілер жалғыз емес, көп кітаптарға тапсырыс берулері мүмкін, және де әр кітапті көп тапсырыс берушілер сатып алуына болады: ТАПСЫРЫС_БЕРУШІЛЕР және  КІТАПТАР арасындағы қатынас «көп-көпке» болады, бұл қатынас ТАПСЫРЫСТАР объектілік жиынтықты анықтайды (атрибуттары – тапсырыстың түсу мерзімі, оны орындау мерзімі, тапсырыс бағасы).

Баспа компанияның моделінің ER–диаграммасының нұсқасы 7.1 суретте келтірілген. Диаграмма өте күрделі болмау үшін объектілік жиынтықтардың атрибуттары мен құрамды объектілік жиынтықтар келтірілмеген).

 

7.2 Сурет Баспа компанияның моделінің ER–диаграммасы

Сонымен, объекттер мен олардың өзара байланыстарын модельдеу үшін объект-қатынас диаграммалары көрнекі графикалық белгілеуді қолдануға мүмкіндік береді. Әдістің негізгі артықшылығы бастапқы диаграммаларды тізбектеп дәлелдеу жолымен модельді құрастыру болып табылады.  Концептуалды диаграммалар белгілі мәліметтер қорларын басқару жүйелерінің ерекшеліктерін есепке алмайды.

8 Дәріс. Концептуалды модельдеудің мысалдары

 

 Дәріс мазмұны:

 - мәліметтер қорларын концептуалды модельдеудің мысалдары.

 

 Дәріс мақсаты:

   - концептуалды сұлбаларды өңдеудің әдістерін  мысалдарда оқып үйрену.

 

  Алдында айтылып кеткендей қатынастарды объекттер ретінде қарастыруға болады, бұл жағдайда олар құрамды объектілік жиынтық деп аталады. Бизнестің көптеген мәселелері құрамды объектілерді қолдануын талап етеді. Алдынғы мысалдарда барлық қатынастар екі объектілік жиынтықты қолданады (бинарлық қатынастар). Бірақ қатынас үш және одан да көп объектілік жиынтықтарды байланыстыра алады (n-арлық қатынас). Осыны мысалдарда қарастырайық.

   Дүние жүзінде сатулармен айналысатын компанияның тәжірибесін қарастырайық. Компанияның келесідей мақсаты бар: әр елдерде сапаның жоғары стандарттарына сәйкес тауарларды өндіретін өндірушілерді, тауарларды сататын фирмаларды табу, таңдалынған өндірушілердің тауарларымен сатушыларды қамту үшін сатушылар мен өндірушілер арасында істік байланыстарды орнату. Компанияның әр елде кеңселері бар, әр кеңсенің штаты сату агенттерден және сатып алушылардан тұрады. 

    Компанияның мәліметтерінің концептуалды моделін жасаймыз. Компанияның клиенттері, сату агенттері, тауарлары және тауарлардың өндірушілері бар. Келесідей объекттерді белгілейік: ТАУАР, КЛИЕНТ, САУДА_АГЕНТІ, ӨНДІРУШІ. Олар арасында 8.1 суретте көрсетілгендей келісімді қатынастарды орнатамыз.

 

 

 

 

 

 

Подпись: 8.1 Сурет –  Объекттер арасындағы қатынастар объектами

 

 

   Әр клиентке сатылған тауардың санын бақылап отыру қажет болсын. Объекттердің біреуіне САНЫ атрибутын меншіктеуміз керек. Егер де бұл атрибут ТАУАР жиынтықтың атрибуты болса, онда әртүрлі клиенттерге қандай тауарлар сатылғанын біле алмаймыз, ал атрибутты КЛИЕНТ объектіне меншіктесек, клиентке сатылған тауарларды айыра алмаймыз. Сондықтан, САНЫ атрибуты бөлек тауардың немесе клиенттің атрибуты болмайды,  тауар мен клиент арасындағы қатынастың атрибуты болады. Сонымен «сатылды_кімге» қатынас өзі объектілік жиынтық немесе құрамды жиынтық болады, оған САНЫ атрибут меншіктеледі (8.2 сурет қараңыз).

 

 

 

 

 

                8.2 Сурет Сатулардың санын дұрыс көрсететін модель

  Әр клиентке белгілі күні сатылған әр тауардың санын есепке алып отыру қажет болсын. Онда «сатылды_кімге» қатынасын ДАТАСЫ объектпен байланыстырып, осы жаңа қатынасқа САНЫ атрибутын меншіктейміз. Модельді үш жақты қатынас түрінде көрсеткен ыңғайлы болады (8.3 сурет). Сонымен бірге модельдің объекттерінің бірі тауарлардың өндірушілері болатынын есепке ала отырып, оны сұлбада көрсетейік. Сұлбада және де қатынастардың қуаттылықтары белгіленген.

 

 

 

 

 

 

 

                     8.3 Сурет – Сатылымдарды бақылаудың толық моделі

   Концептуалды модельдеудің тағы бір түсініктемесін көрсету үшін келесі мысалды қарастырайық. Құрылыс компания әртүрлі гимараттарды салады. Барлық гимараттар үшін әртүрлі санда әртүрлі материалдар керек. Жобаның әртүрлі кезеңдерінде әртүрлі бригадалар жұмыс істейді (арматурщиктер, штукатурлар, тасшылар, т.б.). Жұмыс графиғін жасағанда, фирма бригадалар құрамын өзгертіп отырады. Бригадалар құрамына жұмысшылар өздерінің квалификациясына қарай кіреді. Мысалы, бір жұмысшының екі квалификациясы болса, ол әртүрлі бригада құрамына әртүрлі квалификациямен кіреді. Салынатын гимарат талабына сәйкес бригада құрамы құрылады. Әр бригадада басшысы – бригадир болады. Жұмысшы бір бригадада басшы болып, басқаға жәй жұмысшы ретінде кіруі мүмкін. Фирманың қожасын қажетті ақпаратпен қамтамасыздандыратын мәліметтердің концептуалды моделін құрастырайық. 8.4 суретте гимараттар мен материалдар арасындағы байланыс көрсетілген.

 

 

 

 

 

 

 

Подпись: 8.4 Сурет – Гимараттар мен материалдар арасындағы қатынас

 

 ГИМАРАТ және МАТЕРИАЛ_ТИПІ объектілік жиынтықтары арасында қатынастың құаттылығы көп-көпке болады. АДРЕС атрибуты тек қана ГИМАРАТ жиынтықтың атрибуты болады,. сондықтан бұл атрибутты идентификатор ретінде қолдануға болады. Қатынасты қоршаған төртбұрыш осы қатынасты құрамды объектілік жиынтық ретінде қарастыратынымызды көрсетеді.  Осы құрамды объектілік жиынтықтың элементі ретінде гимараттар мен материал типтерінен құрастырылған жұптар болады, Объектілік жиынтықтың атрибуты САНЫ болып табылады.

Келесі маңызды түсініктемені атап кету керек. Бұл мысалда МАТЕРИАЛ_ТИПІ объектілік жиынтық физикалық объект емес, концептуалды объект болып табылады. Заттардың типін белгілейтін объект концептуалды объект деп аталады, бұл объекттің элементтері абстрактілік түсініктемелер болады. Басқа сөзбен айтқанда бұл жиынтықтың әр элементі материалдың физикалық  «тілімін»  емес матералдың типін белгілейді. Элементтері физикалық заттар болатын объектілік жиынтық физикалық объектілік жиынтық деп аталады. Мәліметтерді концептуалды модельдерінде физикалық объектке қарама қарсы қойылатын концепуалды объекттің осындай түсініктемесі жиі қолданылады. Алдында қарастырған кітапхананың мәселесінде КІТАП объектілік жиынтықта концептуалды кітаптар туралы мәліметтер сақталады, біздің модель бойынша олардың даналары яғни томдары физикалық кітаптарды құрастырады. Оқырман осы екі түсініктемені бөлмеуі мүмуін.

         Енді бригадалар қалай құрастырылатынын және жұмысшылар мен бригадирлер бригадаларға қалай тағайындалатынын көрсетейік. Концептуалды объектілік жиынтықтың тағы бір мысалы БРИГАДА_ТИПІ болып табылады; бұл жиынтық белгілі бригадалардан тұрмайды, бригада типтерінен тұрады (арматурщиктер, тасшылар, электриктер, т.б. бригадалар түрлерінен) Гимараттар мен бригадалар типтері арасындағы қатынас осы гимаратта белгілі жұмыс түрін орындауға тағайындалған белгілі бригаданы көрсетеді. Осы қатынасты объект ретінде қарастырып, оны БРИГАДА деп атаймыз.

БРИГАДА объектілік жиынтықтың элементі ретінде әр бригадаға оның жұмыс күндері белгіленеді. Сондықтан, ДАТАСЫ және БРИГАДА деген объекттер арасында көп-көпке қатынасы бар болады.

Содан кейін бригадир мен жұмысшыларды бригадалар бойынша орнату көрсетілген. Бұл арада «бригадир_болады» қатынасының құаттылығы бір-көпке, себебі бір бригадада жалғыз бригадир болады, ал бір жұмысшы бірнеше бригдаларды басқаруы мүмкін.

 

 

 

 

 

 

 

 


8.5 Сурет – Бригадалар мен бригадирлерді құрастыру моделі

8.6 суретте құрылыс компаниясының толық моделін көрсететін біріктірілген диаграмма көрсетілген.

Подпись: БРИГАДА

 

 

 

 

 

 

 

 

8.6 Сурет – Құрылыс компанияның мәліметтерінің моделі

Қарастырылған модельдер басшылар қоятын сұрақтардан шығатын ақпаратта негізделген болатын. Сондықтан осы модельдер ақпаратты-басқару жүйенің фундаменті болып табылады.  Концептуалды модельді істік операцияларда қолданатын есеп берулер түрлерінен де шығаруға болатынын айтып кеткен жөн.

9 Дәріс. Мәліметтерді модельдеудің әдістері

 

Дәріс мазмұны:

-         мәліметтерді модельдеудің әдістерінің тарихи дамуы.

 

Дәріс мақсаты:

 - мәліметтерді құылымдастырудың концептуалды әдістерін оқу.

 

  9.1 Мәліметтердің үш негізгі модельдері

         Мәліметтер қорларының жүйесі объекттердің екі түрін: объекттерді және байланыстарды көрсетуге мүмкіндік беруі керек. Сонымен бірге олар арасында принципиалды айырмашылық жоқ: байланыс арнайы түрдегі объект болып табылады. Мәліметтерді модельдеудің үш амалы (иерархиялық желілік, реляциялық) пайдаланушыға байланыстарды көрсету мен өңдеуге мүмкіндік беретін әдістерімен айырылады.

           

9.1.1 Мәліметтердің иерархиялық моделі

Мәліметтер қорын қолданатын бірінші ақпараттық жүйе 60-шы жылдары (ХХ ғ.) пайда болған. Ол иерархиялық модельде негізделген болатын. Мәліметтер арасындағы қатынастардың құрылымы иерархия түрдегі болатын мәліметтер моделі иерархиялық модель болып табылады. Бұл модельдер ертерек пайда болған, қазіргі кезде осы заманғы реляциялық модельдерге қарағанда сирек қоланылады. Бірақ осы модельдер негізінде жұмыс жасайтын жүйелер әлі де бар және объектті бағытталған мәліметтер қорларының даму концепциясының бірі желілік модельді реляциялық модельмен біріктекстіруді болжайды. Нақты ортада көптеген байланыстар иерархияларға сәйкес болатыны иерархиялық модельдің пайда болуына себеп болды. Объекттер кластары арасындағы өзара байланыстарын көрсету үшін иерархия қарапайым және де орынды болады. 

Иерархиялық модельде негізгі ақпараттық бірліктер мәліметтер қоры, сегмент және өріс болып табылады. Мәліметтер қорларын басқаратын жүйе көмегімен алынатын мәліметтердің минималды бөлінбейтін бірлігі мәліметтердің өрісі деп аталады. Мәліметтер қорларының мәселелерін қарастыратын DBTG (Data Base Task Group) американ ассоциациясының терминологиясы бойынша сегмент деп түсінетін бөлік жазба болып табылады. Сонымен бірге осы ассоциация терминдері бойынша екі түсініктеме: сегмент типі немесе жазба типі және де сегмент данасы немесе жазба данасы анықталады.

Мәліметтер элементтерінің аталған типтер жиыны сегмент типі деп аталады.

Мәліметтер элементтерінің немесе белгілі өрістерінің мәндерінен сегмент экземпляры құрастырылады.  Иерархиялық модельде әр сегмент типі біртекті жазбалар жиынын құрастырады. Берілген жиында әртүрлі жазбаларды айыру үшін сегменттің әр типінің кілті немесе кілттік атрибуттар жиыны (өрістер, мәліметтер элементтері) болу керек. Сегмент данасын бір мағналы идентификациялайтын мәліметтер элементтерінің жиыны кілт деп аталады.

Иерархиялық модельде сегменттер бағытталған ағаш құрамды графқа бірлеседі. Графтың бағытталған қабырғалары сегменттер арасындағы иерархиялық байланыстарды көрсетеді деп есептеледі: иерархия бойынша жоғары тұрған және қарастырылып отырған сегмент типімен байланысқан сегменттің әр данасына қарастырылып отырған (бағынышты) сегмент типінің бірнеше (көп) даналары сәйкес келеді.

Иерархияның жоғарғы деңгейінде тұрған сегмент типі онымен бағытталған иерархиялық қабырғалармен байланысқан сегментке қарай логикалық бастапқы деп, ал соңғылары логикалық бағынышты деп аталады. Кейде бастапқы сегменттер аналық сегмент деп, ал бағыншыты сегменттер ұрпақтық сегменттер деп аталады.

Концептуалды деңгейде иерархиялық модель терминдерінде мәліметтер қорының сұлбасы түсініктемесі анықталады. Бөлек ағаштар жиындары иерархиялық мәліметтер қорының сүлбасы болып табылады, осы модельдегі әр ағаш физикалық мәліметтер қоры деп аталады. Әр физикалық мәліметтер қоры келесідей иерархиялық шектеулерді қанагаттандыруы керек:

- әрбір физикалық мәліметтер қорында түпті сегмент яғни логикалық бастапқы (аналық) сегменті жоқ;

- әрбір логикалық бастапқы сегмент логикалық бағынышты сегменттердің еркін санымен байланысады;

- әрбір логикалық бағынышты сегмент тек қана жалғыз аналық сегментпен байланысады.

Сегменттер даналары арасында да иерархиялық байланыстар бар болады. Аналық сегменттің бір типімен байланысқан бір типті ұрпақ даналар  «егіздер» деп аталады.

         Иерархиялық мәліметтер қорында файлдар бір бірімен физикалық көрсеткіштермен байланысады. Дискідегі жазбаны сақтау орынын көрсететін физикалық адрес көрсеткіш деп аталады.

           

 9.1.2 Мәліметтердің желілік моделі

 Барлық қатынастарды иерархия түрінде көрсету мүмкінсіздігі иерархиялық модельдің кемшілігі болып табылады. Егер де файлдағы әр жазба басқа бірнеше файлдардың жазбаларына бағынатын болса мәліметтер арасындағы қатынастар желілік деп аталады. Осындай қатынастарды өңдеу қажеттіліктері себептерінен 60-шы жылдардың (ХХ ғасыр) аяғында желілік мәліметтер қорларын басқару жүйелері пайда болды. Иерархиялық жүйелердегідей желілік мәліметтер қорларының жүйелерінде мәліметтерді байланыстыру үшін алдын ала анықталған физикалық көрсеткіштер қолданылды. Иерархияда әр ұрпақта (файлдағы бағынышты жазбада) тек қана жалғыз анасы (иерархияда бағындыратын жазба) болады. Желілік модельдер әртүрлі файлдардағы жазбалар арасында күрделі қатынастарды сүйемелдеді.

Модельдің негізгі объекттері келесі: мәліметтер элементі, мәліметтер агрегаты, жазба, мәліметтер жиыны.

Иерархиялық модельдегідей мәліметтер қорын басқаратын жүйе көмегімен пайдаланушыға қол жеткізуге болатын минималды ақпараттық бірлік мәліметтер элементі болып табылады.

Модельдегі жалпылаудың келесі денгейіне мәліметтер агрегаты сәйкес. Модельде агрегаттардың екі типі анықталған: вектор типті агрегат және қайталанатын топ типті агрегат. Мәліметтер агрегатының аты болады, жүйеде осы ат бойынша агрегатқа қатысу болады.

Нақты ортаның объекттерінің кейбір класын модельдейтін агрегаттар жиыны яғни мәліметтер элементі жазба деп аталады. Жазба түсініктемесі бұл жерде иерархиялық модельдегі «сегмент» түсініктемесіне сәйкес. Сегмент сияқты жазба үшін де жазба типі және жазба данасы түсініктемелері енгізіледі.

Желілік модельдің келесі негізгі түсініктемесі «жиын» болып табылады. Жазбаның екі типін «бір-көпке» қатынасымен байланыстыратын екі деңгейлі граф жиын деп аталады.

Жазбалардың екі типтері арасындағы иерархиялық байланысты жиын көрсетеді. Осы жиындағы жазбаның аналық типі жиын иесі, ал ұрпақтық жазба типі осы жиын мүшесі деп аталады. Жазбалардың кез келген екі типі үшін оларды байланыстыратын жиындардың кез келген саны берілуі мүмкін. Осындай мүмкіндіктің болғаны нақты ортаның екі объекттері арасындағы  «көп-көпке» қатынасын модельдеуге мүмкіндік береді. Осы жағдай иерархиялық модельге қарағанда желілік модельдің артықшылығы. Жиын ішінде бір жиын иесімен байланысты жиын мүшелерінің даналарын тізбектеп қарап шығуға болады.

Жазбалардың екі типтері арасында жиындардың кез келген санын анықтауға, мысалы, екі өзара байланысқан жиындарды құрастыруға болады. Жазбаның бір типі бір кезде жиын иесі және жиын мүшесі бола алмайтыны жиынның маңызды шектеуі болып табылады.

        

 9.1.3 Реляциялық модельге көшу

 Реляциялық модель жиындар теориясы мен предикаттар логикасының математикалық принциптерінде негізделген. Мәліметтерді модельдеу саласында бұл принциптер ең бірінші доктор Е.Ф.Кодд қолданған (ол кезде IBM корпорациясының қызметкері). 1970 ж. доктор маңызы жағынан революциялық болып табылған мәліметтер қорлары туралы мақаланы басып шығарды. Мәліметтерді байланыстыруға физикалық көрсеткіштері емес, олардың ішкі логикалық өзара қатынастарын қолдану керек деген идея ұсынылды. Сонымен, егер де бастапқы мәліметтерде оларды қиыстыруға қажетті логикалық ақпарат болатын болса, пайдаланушылар  әртүрлі көздегі мәліметтерді қиыстыра алады. Бұл идея ақпаратты басқару жүйелер үшін жаңа мүмкіншіліктерді берді, себебі мәліметтер қорларына қоятын сұраныстар енді физикалық көрсеткіштермен шектелмеген болады. Логикалық байланыстар негізінде мәліметтерді тауып шығаруды сүйемелдейтін мәліметтер қорларын қолданатын ақпараттық жүйелер көптеген сұрақтарға жауап алуға мүмкіндік береді.

         Өзінің мақаласында Кодд мәліметтердің қарапайым моделін ұсынды. Осы модельге сәйкес барлық мәліметтер жатық және тік жолдардан тұратын кестелерде орнатылады. Осы кестелер реляциялық алгебрада реляциялар деп аталады, сондықтан модель реляциялық  деген атқа ие болды.

  Реляциялық модель мәліметтерді көрсету (мәліметтер құрылымын), мәліметтерді қорғау әдістерін (мәліметтер бүтіндігін) және мәліметтермен орындалатын операцияларды (мәліметтермен әрекеттесуді) анықтайды. Реляциялық модель кестелер арасындағы қатынастарды көрсететін болғандықтан оның аты пайда болды деген пікір дұрыс емес. Керісінше реляциялық модельдің аты оның негізінде болатын қатынастардан (теория бойынша реляциялардан) пайда болды. Реляциялық модельде мәліметтер концептуалды деіңгейінде қатынастар түрде көрсетіледі, бірақ физикалық деңгейде мәліметтердің іске асырылуы туралы ешқандай бұйрықтар жоқ.

  Мәліметтерді физикалық емес, концептуалды көз қарас жағынан қарастырып Кодд тағы бір революциялық идеяны ұсынды. Мәліметтер қорларының реляциялық жүйелерінде мәліметтер файлдарын тұтас бір бұйрықпен өңдеуге болады, ал дәстүрлі жүйелерде бір бұйрықпен тек қана бір жазба өңделеді. Концептуалды және логикалық деңгейлерді айыру әдісі мәліметтер қорларын программалау саласына өзгерістерді әкелді. Коддтың амалы мәліметтер қорларын программалаудың тиімділігін көтерді. Бұрында мәліметтер қорларын программалау үшін әдетте мәліметтерді сақтауға негізделген құрылғыларды физикалық басқарудың программалық кодтарды жазылатын еді.

 Мәліметтерге логикалық көз қарас компьютерлік технологиялар жағынан маман болмайтын пайдаланушыларға түсінікті болатын сұраныстардың тілдерін жасауға мүмкіндік берді. Әрине, компьютермен жұмыс істеу тәжірибелері әртүрлі болатын барлық адамдар қолданатын тілдерді өңдеу өте қиын. Бірақ бұрынғыға қарағанда сұраныстардың реляциялық тілдері көптеген пайдаланушыларға мәліметтер қорларына қол жеткізуге мүмкіндік берді.

Өткен ғасырдың 70-ші жылдардағы Коддтың жариялаулары ғалымдар мен мәліметтер қорларын басқаратын реляциялық жүйелерін жасайтын коммерциялық жүйелерді өңдеушілер арасында активтілікті көтерді. Осы жұмыстар нәтижесінде 70-ші жылдардың екінші бөлігінде келесідей (Structured Query Language - SQL, құрамдасқан сұраныстар тілдері), Query Language (Quel, сұраныстар тілі) және Query-by-Example (QBE, үлгі бойынша сұраныстар) тілдерді сүйемелдейтін реляциялық жүйелер пайда болды.

Кәзіргі кезде реляциялық мәліметтер қорлары мәліметтермен жұмыс істеуге негізделген осы заманғы коммерциялық жүйелердің стандарты ретінде қарастырылады.  

 

10 Дәріс. Мәліметтердің реляциялық моделі

 

 Дәріс мазмұны:

 - мәліметтердің реляциялық модельдерінің негізгі анықтамалары.

 

 Дәріс мазмұны:

          - мәліметтердің реляциялық модельдерінің негізгі анықтамаларын оқу.

 

          10.1 Реляциялық кестелер мен кілттер

 Реляциялық модель "қатынас" (Relationship) деген түсінікте негізделген. Оның артықшылықтары мен бірге кемшіліктері де болса, қазіргі кезде ең көп тараған модель болып табылады. 80-ші жылдардың (ХХ ғ.) ортасынан бастап осы модельдің артықшылықтары басқа МҚБЖ-ді дүниежүзінің нарығынан ығыстыруына себеп болды.

Реляциялық модельдің артықшылықтары ретінде келесілерді атауға болады:

- қарапайымдылық, көп тараған тақырып аймақтардың көбісін қарапайым модельдеуге абстракцияларының аз саны және интуитивті түсінікті болып отырып олар формалды анықтамаларды орнатуға мүмкіндік береді;

- жақсы өңделген және қуатты математикалық аппаратының бар болуы;

- мәліметтердің физикалық үйымдастыруын білмей ақ оларға операцияларды қолдану мүмкіндіктері.

Реляциялық модельдің кемшіліктері деп келесілерді есептейді:

 - басқа модельдерге қарағанда мәліметтерді сақтаудың тиімділігі төмен болып табылады;

 - кейбір операцияларды іске асырғанда жылдамдылық жеткілікті болмайды:

- мәліметтердің күрделі құрылымдарын көрсету мүмкіндіктері шектелген;

- тақырып аймақтың семантикасын адекватты көрсету мүмкін емес.

    Мәліметтерді кестелер немесе реляциалар түрінде көрсететін мәліметтер моделі мәліметтердің реляцялық моделі болып табылады. Реляция дегеніміз жатық және тік жолдардан тұратын екі өлшемді кесте. Кодд моделінде кестедегі мәліметтермен жұмыс жасауға екі тілді: реляциялық алгебра мен реляциялық есептеуді қолдануы ұсынылады. Бұл теориялар математикалық логиканың бөліктері. Оларда кестені relation (қатынас) деп атайды. Осы тілдердің екеуі де мәліметтермен жұмыс істеуді физикалық көрсеткіштер негізінде емес, олардың логикалық сипаттамалары арқылы қамтамасыздандырады.

         Кесте түсініктемесі реляциялық модельдің негізі болып табылады. Мәліметтер қорын кестелер жиыны деп түсінуге болады. Бірақ бұл кестенің түсініктемесі тек қана мәліметтерді көрсету түріне қатысты, дискіде немесе жадыда жазбаларды физикалық іске асыруымен оның еш қандай байланысы жоқ.

Реляциялық МҚБЖ-де ең кемінде екі шарт орындалады:

  1) пайдаланушылар мәліметтерді кесте түрінде қабылдайды;

  2) пайдаланушы бар кестелерден белгілі операторларды қолданып жаңа кестелерді жасауларына болады.

         Кестеге операцияны қолданған кезде нәтижесінде қайтадан кесте пайда болатыны өте маңызды қасиет (реляциялық бекітілу қасиеті). Басқа сөзбен айтқанда бір түрлі объектке операцияны қолдансақ нәтижесінде бірдей типті объектті аламыз.

         Реляциялық модель негізінде келесідей түсініктемелер болады: мәліметтер типі, атрибут, домен, бастапқы кілт, қатынас.

Реляциялық модельдегі мәліметтер типі деген түсініктеме программалау тілдердегі осындай түсініктемемен толығымен сәйкес. Әдетте символдық, сандық, календарлы, ақшалы, және биттік типтер қарастырылады.

Ақпаратты сақтау үшін атрибут қолданылады. Реляциялық модельдегі атрибут түсініктемесінің мағнасы ER-модельдегі объект қасиетімен бірдей. Атрибуттың аты мен типі болады. Қатынас құрылымы атрибуттар жиыны мен олардың типтерінен құрастырылады. Атрибуттар саны реляция дәрежесі (рангы) болып табылады.

Атрибуттар реті маңызды емес деп есептелінеді. Сондықтан, реляцияның ешқандай екі атрибутарының аттары бірдей болмауы керек. Атрибуттың қабылдайтын барлық мәндерінің жиыны атрибут домені (аймағы) деп аталады. Реляциялық модельде доменнің үлкен ролі бар. Ол анықтама функциясын іске асырады. Доменді қолдану көптеген салыстыру қателерден сақ болуды орындайды. Мысалы, бір түсініктемені әртүрлі жолмен енгізген кезде (мысалы, енгізу қатесі болса). Сонымен бірге орнатылған позицияларынан қажеттісін таңдау жолымен, домен енгізуді бақылау және классификациялау функцияларын орындайды. Доменнің барлық элементтері бірдей типті  болып, кейбір логикалық шартты қанағаттандырады. Домен элементі сан, символдық жол, дата болуы мүмкін, бірақ массивтер, тізімдер сияқты күрделі құрылым бола алмайды.

Атрибуттардың екі аймағы  бірдей болу үшін олардың  бірдей мағнасы болуы керек. Екі атрибуттың аймақтары бірдей болса да, олардың аттары әртүрлі болуы мүмкін. Әр атрибуттың мәндері бір доменнен болады яғни атрибут мәндерін берілген жиыннан қабылдайды. Атрибуттың аты мен мәні бар, көбінесе атрибут аты домен атымен бірдей болады.

Аталған

 (Ai, Di), i=1,k

жұптар жиынын қатынастың сұлбасы деп атайды,

         мұндағы Ai – атрибут аты, Di – домен аты, k – қатынас рангы.

Егер де атрибут аты домен атымен бірдей болса, қатынас сұлбасын келесі тізім ретінде көрсетуге болады

R (A1, A2, ... Ak),

мұндағы Аi домендер аттары.

Қатынастар сұлбаларының жиындары реляциялық мәліметтер қорының сұлбасы болып табылады және келесідей компоненттерден тұрады

S(rel) = < A, D, R, Rel, F>,

мұндағы A атрибуттар жиыны, D домендер жиыны, R қатынастар аттарының жиыны, Rel қатынастар сұлбаларының жиыны, F шектеулер,  сонымен бірге функционалдық тәуелділіктер жиыны.

"Атрибут аты, атрибут мәні" жұптардың жиыны қатынастың кортежі болып табылады, сонымен бірге әр атрибут кортежге тек қана бір рет кіреді. Кортеж қатынастың денесі (реляциялардың жатық жолдары) деуге болады. Ол толтырылған атрибуттар жиындарынан тұрады. Қатынаспен бейнеленетін объект туралы ақпаратты кортеж береді. Егер де атрибуттар мен домендер құрылымды белгілесе, кортеж ақпаратпен толтыру болып табылады.

Қатынастың бір сұлбасына сәйкес кортеждер жиынтығы қатынас болып табылады.

Практикада қатынасты кесте түрінде көрсету ыңғайлы; қатынас сұлбасы кестенің ат жолы,  ал кортеждері жатық жолдары болып табылады; сонда атрибуттар аты кестенің тік жолдарының аты болады. 

Жатық жолдардың алдын ала белгілеген реті жоқ, сондықтан кез-келген екі кортеж мәндерінің жиынтығы бірдей болмауы керек.

Егер де атрибут қолданылмаса немесе оның мәні белгісіз болса, оған меншіктелетін мән бос мән болып табылады.

Реляциялық кестенің әрбір кортежін бір мағналы анықтайтын атрибуттардың кез-келген жиынтығы суперкілт деп аталады.

Минималды суперкілт яғни атрибуттардың минималды жиыны реляцияның кілті болып табылады.

Егер де кілт құрамына екі немесе бірнеше атрибуттар кірсе кілт құрамды кілт деп аталады.

Кез келген реляциялық кестеде кілт болып таңдалынатын атрибуттар жалғыз болмауы мүмкін. Олар потенциалды кілттер деп аталады. Кілт ретінде таңдалынған потенциалды кілт бастапқы кілт деп аталады. Әдетте бастапқы кілт ретінде пайдалануға ыңғайлы потенциалды кілтті таңдайды. Бастапқы кілтті әдетте кілт деп атайды. Реляциялық кестенің белгілеуінде кілттік атрибутты астынан сызып қояды. 

     Әртүрлі қатынастарды байланыстыру үшін сыртқы кілт түсініктемесі қолданылады. Басқа Ak қатынаста кілт болып табылатын және оның мәндері Dk доменде жататын кестенің атрибуты (атрибуттар жиыны) сыртқы кілт деп аталады. Басқа қатынаста атрибуты бастапқы кілт болатын сыртқы кілті анықталған қатынас алдынғы қатынасқа сілтеме жасайды деп айтады. Сонымен, сыртқы кілт дегеніміз басқа кестенің (немесе өзінің) кілті болып табылатын бір кестенің атрибуттар жиыны болады. Сыртқы кілттер кестелер арасындағы маңызды байланыстарды орнатады. Сыртқы кілттің атрибуттарының аттары сәйкес кілттің аттарынан бөлек болуы мүмкін.

Өз реляциялық кестесіне сілтеме жасайтын сыртқы кілт рекурсивті сыртқы кілт деп аталады.

Сыртқы кілттер туралы ақпарат өте маңызды болғандықтан реляциялық кестелерді анықтағанда міндетті түрде сыртқы кілттерін көрсетеді.

  Реляциялық кестенің жалпы белгілеуі: реляция атынан кейін жақшада оның барлық атрибуттары жазылады. Реляциялық кестелердің аттарынан, олардың атрибуттарының аттарынан, кілттік атрибуттарынан, сыртқы кілттерінің анықтамаларынан тұратын толық тізім мәліметтер қорының реляциялық сұлбасы деп аталады.    

 

10.2 Мәліметтердің бүтіндігін қамтамасыздандыратын шектеу шарттары

Мәліметтер қорындағы мәліметтердің келісілімдігі мәліметтердің бүтіндігі деп аталады. Коддтың реляциялық моделінде мәліметтер қорындағы мәліметтерді тексеруге және мәліметтерге мағналы құрылымды орнатуға негізделген бірнеше шектеу шарттары бар. Олар мәліметтердің бүтіндігін сүйемелдейді.

Мәліметтер қорында мәліметтердің мәндерін шектейтін ережелерді шектеу шарттары деп атайды. Шектеу шарттар мәліметтер қорындағы мәліметтердің дұрыс мәндерін сүйемелдейтін логикалық негізі болып табылады, мәліметтерді жаңартып өңдегенде қателерден сақтайды.

Осындай мүмкіншіліктердің ақиқат бағасы бар, себебі мәліметтер қорының негізгі мақсаты басқаруға және шешім қабылдауға дәл мәліметтерді беру. Әдетте келесідей шектеулер қарастырылады:  категориялық бүтіндік;  сілтеме денгейіндегі бүтіндік;  функционалдық тәуелділіктер.

Мәліметтер қорының реляциялық кестесінің жатық жолдары мәліметтер қорында нақты ортаның белгілі элементтерін яғни реляциялық терминологияға сәйкес категорияларын көрсетеді. Реляциялық кестенің кілті кестенің әрбір жолын яғни категория элементін бір мағналы анықтайды. Сонымен, егер де пайдаланушылар белгілі жолдың мәндерін алғысы немесе өңдегісі келсе, олар осы жолдың кілтінің мәнін білуі керек. Сондықтан, элементтің кілттік атрибуттарының мәндері толық анықталғанша ол кестеге жазылмайды. Басқа сөзбен айтқанда, кілт немесе оның бір бөлігі бос мән болмауы керек. Осы талап категориялық бүтіндік ережесі ретінде жазылады: жатық жолдың ешқандай кілттік атрибуты бос мәнді бола алмайды.

         Реляциялық кестені жасағанда бір кестенің жолдарын басқа кестенің жолдарымен байланыстыру үшін сыртқы кілттер қолданылады. Барлық бос емес сыртқы кілттері басқа реляциялық кестенің ағынды мәндеріне сілтесе мәліметтер қорының сілтеме денгейінде бүтінгі бар.

Сілтеме деңгейіндегі бүтіндік ережесі: бос емес сыртқы кілт мәні басқа реляциялық кестенің кілтінің ағынды мәніне тең болуы керек.

Шектеулердің үшінші түрін талқылау үшін мәліметтер қорын нормалау ережелерін қарастыру керек.         

11 Дәріс. Концептуалды модельді реляциялық модельге түрлендіру

 

Дәріс мазмұны:

-   концептуалды модельді реляциялық модельге түрлендіру принциптері.

 

Дәріс мақсаты:

-   концептуалды модельдің элементтерін реляциялық кестелерге түрлендіру әдістерін оқу.

 

Көптеген мәліметтер қорларын басқару жүйелері (МҚБЖ) реляциялық модельде негізделген. Тікелей концептуалды сұлбаны іске асыратын объектті бағытталған МҚБЖ-р қазіргі уақытта әлі өңделмеген. Rонцептуалды модельді 3ске асырылатын модельдерге көшірудің кейбір әдістері қажет. Концептуалды модельді реляциялық модельге түрлендіру әдістерін қарастырайық.

         Концептуалды модель объекттерден, қатынастардан, атрибуттардан, нақтылаулардан, құрамды объекттерден, т.с. тұрады. Осы құрылым бөліктердің әр қайсысын реляциялық кестелерге түрлендірудің әдістерін қарастырамыз.

 

11.1 Объектілік жиынтықтар мен атрибуттарды түрлендіру

Оларды келесі ережелер бойынша түрлендіреді:

а) әр объектілік жиынтық үшін реляциялық кесте жасалады. Көбінесе объектілік жиынтықтар мен реляциялық кестелердің аттары бірдей болады. Бірақ, олар бөлек те болуы мүмкін, себебі объектілік жиынтықтардың аттарына, уникалды болу талаптан басқа қосымша синтаксистік шектеулер қойылмайды. Ал кестелердің аттары белгілі МҚБЖ талаптарымен шектелуі мүмкін.   Көбінесе бұл аттар кейбір негізгі тілдің идентификаторлары болуы мүмкін, өлшемдері шектелген, аттарында бос орын және басқа арнайы символдар орнатылмайды. Мысалы, объектілік жиынтықтың аты ҚЫЗМЕТКЕРЛЕР болса (11.1 суретті қараңыз), оған сәйкес кестені, мысалы,  EMPLOYEE деп атаған дұрыс (бос орынсыз, латын әріптерімен).

 

 

 

 

 

 

 

  11.1 Сурет - ҚЫЗМЕТКЕРЛЕР объектілік жиынтықты  EMPLOYEE кестесіне түрлендіру

   Объектілік жиынтықтың атрибуттары реляциялық кестенің атрибуттары болып табылады. Атрибуттарға жаңа аттар қою ережелері объектілік жиынтықтарға жаңа ат қоюға сәйкес. Әр атрибут үшін МҚБЖ-де рұқсат етілген белгілі мәліметтер типі (11.2 суретті қараңыз) және атрибуттың міндетті немесе міндетті еместігі орнатылады (басқа сөзбен айтқанда оған NULL мәні рұқсат етілгені немесе етілмегені);

             11.2 Сурет - EMPLOYEE қатынастың атрибуттарының қасиеттері

 

б) егер де концептуалды модельде кілттік атрибуты болса, оны реляциялық кестенің бастапқы кілті (PRIMARY KEY) ретінде қолдануға болады. Кері жағдайда кестенің кілттік атрибуты мәліметтер қорының жобалаушысымен жасалады. Бірақ, осындай атрибуттың өздігінен модельден пайда болғаны жақсы. Практикада, әрине, кілтті таңдау туралы жобалаушылар пайдаланушылармен ақылдасуы керек. Қатынастың бастапқы кілтіне кіретін атрибуттар автоматты түрде міндеттілік қасиеттеріне (NOT NULL)  ие болады;

в) егер де концептуалды модельде объектілік  жиынтықтың нақтылаулары яғни ішкі және жалпылау объекттері болса, онда көрсетудің бірнеше нұсқалары бар. Бір жалпылау объекттің ішкі объекттері үшін бір қатынасты жасауға болады. Оған ішкі объекттердің барлық атрибуттарын орнатады. Бұл нұсқада кейбір даналар үшін кейбір атрибуттардың мағналары болмайды. Олардың анықталмаған мәндері болса да бір ішкі объектті басқадан айыру үшін қосымша ережелер керек болады. Тек қана жалғыз қатынас жасалатыны осындай көрсетудің артықшылығы. Екінші нұсқада әр ішкі және жалпылау объект үшін өздерінің бөлек қатынастары жасалады. Өте көп қатынастардың жасалуы осындай көрсетудің кемшілігі. Бірақ ішкі объекттің тек қана мағнасы бар атрибуттарымен жұмыс істеу артықшылығы болып табылады.

   Әдетте объектілік жиынтықтың нақтылауы жалпылау объектілік жиынтықтың барлық атрибуттарына ие болады.  Онда нақтылау мен жалпылау объектілік жиынтықтарда қайталанатын ақпарат болады. Осындай ақпараттың артықшылығын жою үшін нақтылаудың реляциялық кестесінен барлық қайталанатын кілттік емес атрибуттарды алып тастайды; ал оның кілттері жалпылау объектілік жиынтықтың кілттерімен бірдей болады.

 

 

11.2 Қатынастарды түрлендіру

Өздерінің қуаттылығына байланысты Қатынастар келесі әдістердің біреуімен түрленеді:

а) «бір-бірге» қатынасты түрлендіру үшін бір объектілік жиынтықтың атрибуттарын екінші объектілік жиынтықтың кестесіне орнатамыз. Екінші объектілік жиынтықтың таңдалынуы қолданбалы бағдарламаның қажеттіліктерімен анықталады;

б) «бір-көпке» қатынас; кез келген «бір-көпке» қатынаста қуаттылығы «көп» деген жақтағы объектті бейнелейтін кестеге сыртқы кілт болып табылатын екінші объекттің тік жолы орнатылады.

Сыртқы кілттер болатын атрибуттар үшін байланыстың міндетті еместігін модельдеу үшін анықталмаған мәндердің рұқсат етілгендігін көрсететін NULL қасиеті орнатылады. Байланыстардың типі міндетті болса атрибуттарда анықталмаған мәндер болмауы керек деген қасиет (NOT NULL белгісі) меншіктеледі;

в) «көп-көпке» қатынасы; мәліметтердің реляциялық моделінде қатынастар арасында тек қана «бір-көпке» типті қатынастар орнатылады, ал ER-модельде «көп-көпке»  қатынастар рұқсат етіледі. Сондықтан реляциялық модельге спецификалық болмайтын оның рұқсат етілген категорияларының көмегімен көптік байланыстарды көрсетуге арнайы түрлендіру механизмі қажет. Түрлендіру әрбір бастапқы қатынастармен «бір-көпке» байланыспен байланысатын арнайы қосымша қатынасты енгізу жолымен орындалады. Бұл қатынастың атрибуттары байланысатын қатынастардың бастапқы кілттері болып табылады.

Сонымен, «көп-көпке» қатынасты түрлендіру үшін қиылысу кесте жасалады. «Көп-көпке» қатынаспен байланысқан екі кестенің элементтерін көрсететін кесте қиылысу кестесі болып табылады. «Көп-көпке» қатынастар көп мағналы атрибуттарға сәйкес болып, қатынаста қолданылатын екі объектілік жиынтықтың кілттік атрибуттарынан кілтті жасау жолымен түрленеді. Басқа сөзбен айтқанда бастапқы кестелерден алынған жаңа кестенің әр атрибуты  сыртқы кілт болып табылады (FOREIGN KEY), ал бірге олар бастапқы кілтті (PRIMARY KEY) құрастырады. Қиылысу кестенің өзінің қосымша кілттік емес атрибуттары болуы мүмкін;

г) рекурсивті қатынастарды түрлендіргенде атынасты белгілейтін атрибут үшін жаңа мағнасы бар ат беріледі.

Барлық белгілі конструкцияларын түрлендіргеннен кейін алынған реляциялық сұлбаны артықшылықтардан жою мақсатымен тексеру керек. Кез келген артықшылықтары бар кестелерді (яғни ақпараттары толығымен сұлбаның басқа кестелерінде орнатылаған кестелер) сұлбадан жою керек.

 

12 Дәріс. Мәліметтер қорларын нормалау

 

 Дәріс мазмұны:

 - мәліметтер қорларын нормалау теориясының негізгі түсініктемелері.

 

 Дәріс мақсаты:

          - мәліметтер қорларын нормалау түсініктемесі мен бірінші нормалы форманы оқу.

           

   Мәліметтер қорының сұлбасын жобалау екі жолмен орындады:

 - декомпозиция (бөлу) жолымен; сұлбаға кіретін қатынастардың бастапқы жиыны олардың проекциялары болатын басқа қатынастар жиынымен орын басады (сонымен бірге олардың сандары өседі);

- синтездеу яғни тақырып аймақтың объекттері арасындағы берілген бастапқы элементарлы тәуелділіктерден мәліметтер қорының сұлбасын құрастыру жолымен.

Реляциялық мәліметтер қорын жобалағанда мәліметтердің ең тиімді болатын құрылымы туралы сұрақты шешу керек. Сонда шешілетін негізгі мақсат: кестелердегі мәліметтерге тез қол жеткізуді қамтамасыздандыру; мәліметтерді енгізгенде қателердің және компьютердің дискілік кеңістігін тиімді қолданбау себептерінен болатын мәліметтердің қайталануларын (артықшылығын) жою; бір объекттер өзгергенде автоматты түрде олармен байланысқан объекттерде сәйкес өзгеретіндей мәліметтердің бүтіндігін қамтамасыздандыру. Қатынастардың атрибуттары арасында ұнамсыз байланыстары болмайтын мәліметтер қорының сұлбасы дұрыс болады.

Мәліметтердің реляциялық қоры қатынастардың жиыны болып табылады. Бірақ кез келген жиын емес, нормаланған қатынастар жиыны болады. Мәліметтердің реляциялық қорларын жобалаудың классикалық технологиясы қатынастардың атрибуттары арасындағы функционалдық тәуелділіктерді анализдеуде негізделген нормалау теориясымен байланысты. Мәліметтердің реляциялық қорларын нормалау теориясының фундаменталды түсініктемесі функционалдық тәуелділік болып табылады. Біздер соңынан анықтамасын береміз, әзірше осы түсініктеменің мағнасын қарастырайық. Қарастырып отырған тақырып аймақтың объекттері мен олардың қасиеттері арасындағы тұрақты қатынастарды функционалдық тәуелділіктер орнатады. Сондықтан қарастырып отырған тақырып аймаққа сипатты болатын функционалдық тәуелділіктерді сүйемелдеу процесі жобалау процесі үшін негізгі болып табылады.

Кейбір кәсіпорында орнатылған мәліметтерге қойылатын талаптарға сәйкес аталған қасиеттері болатын қатынастардың жиындарын жасау нормалау деп аталады. Реляциялық кестелерді стандартты түрге келтіру процесі нормалау процесі болып табылады.

     Реляциялық мәліметтер қорларының теориясында әдетте нормалы формалардың келесідей тізбегі белгіленеді:

- бірінші нормалы форма (1NF);

- екінші нормалы форма (2NF);

- үшінші нормалы форма (3NF);

- Бойс— Коддтың нормалы формасы (BCNF);

- төртінші нормалы форма (4NF);

- бесінші нормалы форма, немесе проекция-байланыстыру формасы.

        Мәліметтер қорларын практикалық жобалағанда бірінші үш нормалы формалар қолданылады.

Декомпозицияны қолданып жобалау процесі қатынастар сұлбасын тізбектеп нормалау процесі болып табылады, сонымен бірге әр келесі итерация жоғарылау денгейдегі нормалы формаға сәйкес болып, алдынғыға қарағанда қасиеттері де жақсырақ болады.  Әр нормалы формаға шектеулердің анықталған жиыны сәйкес болады және қатынас кейбір нормалы форманың  шектеу жиынын  қанағаттандырса, ол осы нормалы формада болады.

Нормалы формалардың негізгі қасиеттері:

- әрбір келесі нормалы форма кейбір мағнада алдынғының қасиеттерін жақсартады;

  - келесі нормалы формаға көшкенде алдынғы нормалы формалардың қасиеттері сақталады.

  Жобалаудың классикалық процесінің негізінде алдыңғы нормалы формадан келесі нормалы формаға көшу тізбегі болады. Бірақ декомпозиция процесінде қайта көшу яғни бастапқы сұлбаны қалпына келтіру мәселесі пайда болады.  Сонымен, мәліметтер қорының бір сұлбасын басқа сұлбамен орын басқанда декомпозиция сұлбалардың эквиваленттігін сақтауы керек. Егер де нәтижедегі сұлбаға кіретін қатынастарды біріктіру жолымен бастапқы мәліметтер қорының құрамын алуға мүмкіншілік болса, және бастапқы мәліметтер қорында жаңа кортеждер пайда болмаса онда мәліметтер қорларының сұлбалары эквивалентті деп аталады. Эквивалентті түрлендірулерді орындағанда қатынастар атрибуттары арасында бастапқы фундаменталды функционалдық тәуелділіктер жиыны сақталады.

   Функционалдық тәуелділіктер мәліметтер қорының ағынды күйін анықтамайды, олар оның барлық мүмкін болатын күйлерін анықтайды яғни мәліметтер қоры көмегімен модельденетін нақты объектің атрибуттары арасындағы байланыстарды көрсетеді. Сондықтан мәліметтер қорының данасында абсолютты толық ақпарат болса (басқа сөзбен айтқанда, мәліметтер қорына ешқандай  мәліметтерді қосу немесе өзгерту орындалмайтын болса) мәліметтер қорының ағынды күйінен функционалдық тәуелділіктерді анықтауға болады. Нақты жағдайларда бұл талап орындалмайды, сондықтан функционалдық тәуелділіктер жиындарын тақырып аймақтың жүйелік талқылауына негізделіп өңдеуші немесе жүйелік аналитик орнатады,

         Мәліметтер қорын салақ жобалау себебінен мәліметтердің артықшылығы (қайталануы) пайда болады; бұл артықшылық қосымша орынды талап еткенімен бірге бүтіндікті бұзуы яғни мәліметтер қорының мәліметтерінің қайшылығына келтіруі мүмкін. Мәліметтер арасындағы сәйкеспеушілік (қайшылық) аномалиялар деп аталады. Аномалиялардың үш түрі бар:

  - жаңартудың аномалиясы – мәліметтердің артықшылығы мен оларды жарым-жартылай жаңартудың себебін пайда болатын мәліметтердің қайшылығы;

           - жоюдың аномалиясы - басқа мәліметтерді жойған себебінен абайсыздан мәліметтерді жоғалту;

   - енгізудің аномалиясы – басқа мәліметтер жоқ болғандықтан мәліметтерді кестеге енгізу мүмкін емес.

Әрине, осындай аномалиялар болмауы керек. Аномалиялар себептерінен пайда болатын мәселелерді минимумдау үшін бөлу деп аталатын формалды амалды қолдану керек. Аномалиялардан құтылу және мәліметтердің бүтіндігін қамтамасыздандыру үшін қолданатын кестелерден бірнеше кестелерді жасау процесі бөлу болып табылады. Ол үшін нормалы формалар яғни кестелерді құрылымдастыру ережелері қолданылады. 

 Егер де кестенің әрбір атрибуты үшін оның мәндері қайталанатын топ немесе мәндер жиыны болмаса реляциялық кесте бірінші нормалы формада (1НФ) болады. Кейбір кезде 1НФ-да болатын кестенің атрибуттары скалярлы шамалар деп айтады. Сонымен, егер де кестенің әр тік жолымен жатық жолының  қиылысында атрибуттардың тек қана элементарлы мәндері орнатылған болса қатынас бірінші нормалы формада болады. Кейбір мағнада бұл анықтама артық болып табылады, себебі реляциялық мәліметтер қорының теориясында оның өзі қатынасты анықтайды. Бірақ тарихи орнатылған себептерден бірінші нормалы форманың осындай анықтамасы бар. Коддтың реляциялық кесте анықтамасында реляциялық кесте бірінші нормалы форманы қанағаттандыру керек деген шарты бар. Басқа сөзбен айтқанда келешекте барлық қарастырылып отырған реляциялық сұлбалар 1НФ-на қанағаттандырады деп есептейміз.

 Кейбір кезде атрибуттың скалярлы екенін анықтау қиын болады. Мысалы, дата үш әртүрлі компоненттерден тұрады: күн, ай, жыл. Датаны үш әртүрлі атрибут немесе тұтас бір атрибут түрінде сақтауға болады. Таңдауымыз модельденетін тақырып аймақтың ерекшеліктеріне тәуелді. Егер де дата бөлек шама ретінде қолданылса ол скалярлы болып табылады. Егер жүйе датаның бөлек құрамдастырушыларымен жұмыс істесе, оны үш әртүрлі атрибут жиыны ретінде сақтаған дұрыс. Сол сияқты «Аты_жөні» атрибуттыда әртүрлі жолдармен модельдеуге болады: атрибутта элементтің толық аты-жөні болуы мүмкін немесе әр құрамдастырушысын бөлек атрибут ретінде орнатуға болады; адресті модельденгенде: толық адрес пе немесе тек қана көшемен үй нөмірі ме.

Кесте бірінші нормалы формада болуы үшін келесі талаптарды қанағаттандыруы керек:

1)     кестеде қайталанатын жазбалар жоқ;

2)     кестеде қайталанатын өрістер топтары жоқ;

3)     жатық жолдар реттелмеген;

4)     тік жолдар реттелмеген.

13 Дәріс. Функционалды тәуелділітер мен олармен байланысты нормалы формалар

 

Дәріс мазмқны

- негізгі нормалы формалар.

 

Дәріс мақсаты:

- функционалды тәуелділік түсініктемесі мен онымен байланысты нормалы формаларды оқу.

 

13.1 Функционалды тәуелділіктер мен нормалы формалар

Алдында талқыланған категориялық бүтіндік және сілтеме денгейіндегі бүтіндік ережелері реляциялық сұлбаға шектеулерді орнатады. Функциолналдық тәуелділіктер (ФТ) қосымша шектеулерді орнатуға мүмкіндік береді.

Кортеждегі атрибуттың мәні басқа атрибуттың мәнін бір мағналы анықтайтын болса олар арасында фунционалды тәуелділік болады.  Жалпы түрде  фунционалды тәуелділік келесідей анықталады: егер де R кестеде А және В атрибуттары болса, онда

жазбасы келесіні анықтайды: егер R кестенің екі кортежінде А атрибутының мәндері бірдей болса, онда осы кортеждерде В атрибутының мәндері де бірдей болады. Егер де А және В бөлек тік жолдар емес, тік жол жиынтықтары болса да, осы анықтама орындалады. 

Белгілеу келесідей оқылады: А функционалды В-ны анықтайды.

ФТ-ің сол жағындағы атрибут детерминант деп аталады. Кортеждердің басқа атрибуттарының мәндерін анықтайтын атрибут (атрибуттар) мәндері детерминант болып табылады.

Егер де ешқандай кілтті емес атрибуттар кілттің бөлігінен функционалды тәуелді болмаса, реляциялық кесте екінші нормалы формада (2НФ) болады. Сонымен, екінші нормалы форма тек қана кілт құрамды болған кезде бұзылады.

Егер де кесте 2НФ-ны қанағаттандырмаса, әртүрлі аномалиялар (енгізудің, жаңартудың, жоюдың) пайда болады. Аномалиялардан құтылу үшін бастапқы кестені 2НФ-ке сәйкес болатын екі реляциялық кестеге бөлу керек. Осы екі кішілеу кестелер бастапқы кестенің проекциялары болып табылады.

Басқа кестенің кейбір таңдалынған атрибуттарынан тұратын кесте проекция болып табылады.

2НФ-кестеге бөлу процесі келесі қадамдардан тұрады:

1)     атрибуттары ретінде бастапқы кестедегі ФТ ережесін бұзатын атрибуттары таңдалынып жаңа кесте құрастырылады. ФТ-ің детерминанты жаңа кестенің кілті болады;

2)     ФТ-ің оң жағындағы атрибут бастапқы кестеден алып тасталады;

3)     егер 2НФ-ны бұзатын ФТ саны бірден көп болса, 1 және 2 қадамдар осындай ФТ үшін қайталанады;

4)     егер бір детерминант бірнеше ФТ-ке кірсе, онда одан функционалды тәуелді болатын барлық атрибуттар кілтік емес атрибуттар ретінде детерминант кілті болатын кестеге орнатылады.

Егер де кез келген  функционалдық тәуелділік үшін X кілт болса (яғни детерминант кілт болып табылса) реляциялық кесте үшінші нормалы формада (3НФ) болады.

Анықтамадан келесі белгілі болып тұр: кез-келген 3НФ-ны қанагаттандыратын кесте 2НФ-да қанағаттандырады. Егер де кесте 3НФ сәйкес болмаса, әртүрлі аномалияларды тудыратын мәліметтердің артықшылығы пайда болады. Осындай мәселелерді де шешу кестелерді бөлу жолымен орындалады.

3НФ-кестелер әр кездеде 2НФ-ны қанағаттандыратын болғандықтан тек қана үшінші нормалы форманың критериімен пайдалануға болады. Егер де кестедегі әр детерминант осы кестенің кілті болса, онда кестелер бірінші, екінші, үшінші нормалы формаларды қанағаттандырады. Осы жағдай нормалау процесін қарапайымдайды себебі тек қана бір критерийді тексеру керек.

Келесіні айтып кету керек: үшінші нормалы форманың осы анықтамасы кейбір әдебиеттер Бойс—Кодд деп аталатын нормалы формасына сәйкес.

Көптеген жағдайларда нақты мәліметтер қорларының жобаларына үшінші нормалы форманы орнату жеткілікті деп есептелінеді. Бірақ нормалау теориясында жоғарғы ретті нормалы формалар бар. Олар тақырып аймақтың семантикасының күрделілеу сұрақтарын көрсететін қатынастар атрибуттарының функционалдық тәуелділіктерімен емес, тәуелділіктердің басқа түрлерімен байланысты. 

Бірінші нормалы форма көп мағналы атрибуттарды орнатуға рұқсат етпейді. Бірақ көптеген жағдайларда көп мағналық қажет болады.

         Атрибуттардың мәндерін міндетті түрде қайталау жолмен олардың тәуелсіздігін қанағаттандыратын шарт көп мағналы тәуелдік деп аталады. Көп мағналы тәуелдіктер ФТ сияқты шектеу шарт болып табылады, себебі олар мәліметтердің мәндерінің қайталауын талап етеді. Нормалаудың маңызды кезені көп мағналы тәуелдіктерден құтылу болып табылады. Егер де кесте үшінші нормалы формада болса және онда көп мағналы тәуелділіктер болмаса ол төртінші нормалы формада болады. Көп мағналы тәуелдіктер көп мағналы атрибутар себебінен пайда болады, сондықтан әрбір көп мағналы атрибутты кілтімен бірге өзінің кестесіне орнату жолымен мәселе шешіледі.

 Барлық студенттерге түсінікті белгілі жағдайды қарастырайық. Алдындағы сессияда емтихандарды тапсыруды модельдейтін қатынас берілген болсын. Оның түрі келесідей болсын

 (Сынақ кітапша нөмірі. Тобы, Пән).

Студенттің тапсыратын пәндер тізімі оның аты жөнінен емес, ол топ нөмірінен (оның мамандығынан) тәуелді.

Бұл қатынаста келесідей екі көп мағналы тәуелділіктер бар:

Тобы -» Пән  және  Тобы -» Сынақ кітапша нөмірі.

Басқа сөзбен айтқанда оқу жоспары бойынша әр топ үшін белгілі пәндер тізімі болады және де топ нөмірі осы топта оқитын студенттер тізімін анықтайды.

Егер де бастапқы қатынаспен жұмыс істесек топқа студенттер тізімін енгізгенше жаңа топтар және олардың оқу жоспарлары (топ оқитын пәндер тізімдері) туралы ақпаратты сақтай алмаймыз. Оқу жоспарының пәндер тізімі өзгерсе, мысалы, жаңа пән қосылса, осы топта оқитын студенттерінің барлығының қатынастарына осы өзгертулерді енгізу қажет. Басқа жақтан, студентті топқа қосатын болсақ, онда осы топтың пәндер тізіміне сәйкес көптеген кортеждерді қосуымыз керек. Бұл модификациялау аномалиялары жаңағы екі көп мағналы тәуелділіктердің себебінен пайда болады. 

Бұл мысалда бастапқы қатынасты декомпозициялап, екі қатынасқа бөлуге болады:

 (Сынақ кітапша нөмірі. Тобы),

(Тобы, Пән).

Қатынастардың екуіде төртінші нормалы формада болады, оларда аталған аномалиялар жоқ. Шынындада, аталған модификациялау операциялардың екеуіде қарапайымдалады:  жаңа студентті тізімге қосу тек қана жалғыз кортежді бірінші қатынасқа қосумен, ал жаңа пәнді қосу жалғыз кортежді екінші қатынасқа қосумен орындалады. Сонымен бірге екінші қатынаста анықталған пәндер тізімдерін бірге топтардың кез келген санын сақтай аламыз (әзірше студенттер тізімдері қосылмаған болсада).

         Бесінші нормалы форма 5NF соңғы нормалы форма болып табылады. Практикада ол сирек қолданылады. Көбінесе теориялық зерттеу ретінде қарастырылады.

 

13.2 Мәліметтердің концептуалды және реляциялық модельдерін салыстыру

Мәліметтер қорының негізгі міндеті пайдаланушыны дәл ақпаратпен қамтамасыздандыру болып табылады. Сондықтан мәліметтер қорының құрылымы логикалық болып оның кемшіліктері болмағаны өте маңызды. Мәліметтер қорының моделі күрделі болған сайын оны дұрыс жобалау қиындайды. Объектілік жиынтықтар, нақтылаулар, құрамды объекттер мен қатынастар қосылған сайын күрделік өседі. Сондықтан реляциялық модельдің мәтіндік амалына қарағанда графикалық амал (концептуалды модельдің сұлбасы) дәл модельдерді алудың ықтималдығын көтереді.

Реляциялық модельдерге қарағанда мәліметтердің концептуалды модельдерін түсіну жеңіл болады, себебі олар біздің зат есімдері (объектілік жиынтықтар) мен етістіктерді қолдану жолымен көрсетілген заттарға жаратылыс көз қарасымызға сәйкес. Ақпарат графикалық түрде көрсетіледі, визуалды елестету құрылымды түсінуін қарапайымдайды.

Ал реляциялық модельде реляциялық кестелер мен сыртқы кілттер жалғыз құрылғылар болып табылады, барлық объектілік жиынтықтармен қатынастар бірдей жолмен модельденеді. Реляциялық сұлбадан бірден қандай кестелер объекттер немесе қатынастар екенін түсіну өте қиын. Реляциялық модельді талқылағанда кестелерді байланыстыратын суретті елестетесіз. Басқа сөзбен айтқанда реляциялық модельді түсіну үшін ойда концептуалды модельдеуде орындалатын жұмыс жасалады. Сондықтан концептуалды модельді өңдеу және соңынан оны нормаланған реляциялық модельге түрлендіру жұмсалған күш салуды ақтайды. Кері жағдайда күрделі оқиғаларда маңызды қателер жасалуы мүмкін. Әрине, қарапайым мәліметтер қорлары үшін концептуалды модельді жасау орнына реляциялық модельді жасау жеңілдеу болатын шығар.

Алдында қарастырылған реляциялық модельдерге қолданған нормалау теориясын  «объект—байланыс» модельге де қолдануға болады. Семантикалық модельді бесінші нормалы формаға келтіру алгоритмі келесідей болуы мүмкін:

- нақты ортаның өзара байланысқан объекттері модель сұлбасында бар екенін талқылап (осы жағдай нормаланған қатынастарға сәйкес),  олардың әр қайсысын бірнеше жаңа объекттерге бөлу керек; олар арасында сәйкес байланыстарды орнату керек; алынған сұлба бірінші нормалы форманы қанағаттандырады;

- бастапқы құрамды кілттері бар барлық объекттерде бастапқы емес атрибуттары кілттік атрибуттарына функционалды  тәуелді еместігін талқылау. Егер де осындай жағдай анықталса, объекттерді екіге бөліп, әр объект үшін бастапқы кілттерді анықтап, олар арасында сәйкес байланыстарды орнату керек. Алынған сұлба екінші нормалы форманы қанағаттандырады;

- барлық объекттерде кілттер емес детерминантардың бар екенін талқылау керек. Егер де осындай детерминанттар бар болса, объектті екіге бөліп, олар арасында сәйкес байланыстарды орнату керек. Алынған сұлба үшінші нормалы форманы қанағаттандырады;

- барлық объекттерде көп мағналы тәуелділіктер бар екенін талқылау керек. Егер де бірнеше көп мағналы тәуелдіктерге ие объекттер болса, оларды екіге бөліп, арасында сәйкес байланыстарды орнату керек.

Осы жолмен алынған сұлба  сонымен төртінші нормалы форманы қанағаттандырады.

Егер де концептуалды сұлбаны реляциялық сұлбаға 11 дәрісте аталып кеткен ережелер бойынша дұрыс түрлендірсе, практикада осы соңғы амалдарды қолданбай ақ төртінші нормалы формадағы сұлба шығады деп есептелінеді,

 

14 Дәріс. Өңделген реляциялық сұлбаны іске асыру

 

Дәріс мазмұны:

  - белгілі МҚБЖ ортасында мәліметтер қорының өңделген жобасын іске асырудың сұрақтары қарастырылады.

 

Дәріс мақсаты:

         - қазіргі замандағы мәліметтермен әрекеттесу тілдермен танысу.

 

         14.1 Құрылымдасқан сұраныстардың SQL тілі

Мәліметтердің реляциялық қорлары пайда болар алдындағы жасалған және дербес компьютерлердің МҚБЖ-рі үшін өңделген мәліметтермен әрекеттесу тілдері файлдардың логикалық жазбалары ретінде көрсетілетін мәліметтерге операцияларды қолдануда негізделген болатын. Сондықтан пайдаланушы мәліметтерді сақтаудың ұйымдасуын толық білуі және олар қандай мәліметтер керек екінін көрсетіп, мәліметтердің орналасқан жерін біліп, тізбектеп оларды алуға көп күш жұмсаулары керек болды. Қарастырылып отырған процедуралық емес SQL (Structured Query Language – құрырымдасқан сұраныстар тілі) тілі логикалық өзара байланысқан кестелер жиындары түрінде көрсетілген мәліметтерге операцияларды қолдануда бағытталған. Осы тілдің сөйлемдерінің ерекшеліктері оның  мәліметтерді өңдеудің процедурасына емес, өңдеудің соңғы  нәтижесіне бағытталғаны болып табылады. Мәліметтер қайда орнатылғанын, оларды алу үшін қандай индекстерді және ең тиімді болып табылатын операциялар тізбегін қолдану керек екенін SQL өзі шешеді: мәліметтер қорына сұраныста осы детальдарды көрсету қажет емес.

Егер де мәліметтер қорымен тек қана жұмыс жасау әрекеттерін  көрсету жеткілікті болса (процестің алгоритмін бейнелемей), тіл процедуралық емес  тіл болып табылады. SQL-сұраныстарды өңдеудің барлық алгоритмдері МҚБЖ-ің өзімен генерацияланады және пайдаланушыдан тәуелді емес.  SQL тілі келесі категорияларға бөлінетін операторлар топтарынан тұрады:

- Data Definition Language (DDL) — мәліметтер қорында объекттерді жасауға, енгізуге, жоюға мүмкіндік беретін мәліметтерді анықтау тілі;

- Data Manipulation Language (DML) — мәліметтер қорындағы объекттердегі мәліметтерді өзгертуге, енгізуге, жоюға мүмкіндік беретін мәліметтерді басқару тілі;

- Data Control Languages (DCL) — пайдаланушылардың құқықтарын басқаруға қолданылатын тіл;

- Transaction Control Language (TCL) — операторлар топтарымен жасалған өзгертулерді басқару тілі;

- Cursor Control Language (CCL) — курсорларды анықтау, SQL операторлар орындалуыен дайындау және де басқа кейбір операцияларды орындау операторлары.

 ХХ ғ. 80-ші жылдарының басында SQL кәсіби реляциялық МҚБЖ үшін осындай тілдердің стандарты болып табылды.  1987 жылы ол мәліметтер қорларының тілінің дүниежүзілік стандарты болып, дербес компьютерлердің барлық тараған МҚБЖ ендіріле бастады.

 

 14.2 Мәліметтер қорының объекттері

 14.2.1 SQL-дің кестелері

 "Кесте" деген түсініктеме, әдетте, нақты кестемен (CREATE TABLE операторы көмегімен жасалатын) яғни әр жатық жолы үшін компьютердің физикалық жадысында сақталатын кейбір егізі бар кестемен байланысты. Барлық реляциялық МҚБЖ-лер кестелерді сүйемелдейді және олардың өрістерінде әртүрлі типті мәліметтер сақталады. Бірақ SQL тағы да бір сыпыра виртуалды кестелерді жасай алады: елестетулерді, курсорларды және негізгі кестелер мен елестетулерге сұраныстардың нәтижелері орнатылатын аталмаған жұмыс кестелерді. Бұл кестелер мәліметтер қорында жоқ бірақ пайдаланушы көз қарасы жағынан бар болады.

Бір немеше бірнеше нақты кестелерден мәліметтерді ұсынатын виртуалды кесте елестету болып табылады. Нақтылықта оның ешқандай мәліметтері жоқ, ол тек қана мәліметтердің көзін бейнелейді. Жиі жағдайда осындай объекттер мәліметтер қорында күрделі сұраныстарды сақтауға қолданылады. Елестетуді сақталынған сұраныс десек болады. Көптеген қазіргі замандағы МҚБЖ-де елестетулер арнайы визуалды құралдарымен жасалады. Олар экранда қажетті кестелерді көрсетуге, олар арасында байланыстарды орнатуға, көрсетілетін өрістерді таңдауға, жазбаларға шектеулерді орнатуға, т.б. мүмкіндік береді. Жиі жағдайда осы объекттер кестелерге қол жеткізуге рұқсат бермей, олардың көмегімен мәліметтерді қарап шығуға мүмкіндік беріп мәліметтердің қауіпсіздігін қаматамасыздандыруға қолданылады. Сонымен бірге объекттердің кейбір елестетулері әртүрлі мәліметтерді көрсетеді мысалы, пайдаланушы атына тәуелді; ол тек қана оған керек мәліметтерді алуға болады.

Кестелерді жасағанда бастапқы кілттерді анықтаған өте маңызды болады. Жиі жағдайда бастапқы кілттерді МҚБЖ өзі жасайды. Кілтті клиенттік қолданбалыда генерациялағаннан бұл ыңғайлы болып табылады, себебі көп пайдаланушылар жұмысын сүйемелдейтін жүйеде МҚБЖ көмегімен кілттерді генерациялау, олардың кезекті мәндерін алу, кілттердің қайталануынан сақ болудың жалғыз амалы. Әртүрлі МҚБЖ-де кілттерді генерациялау үшін әртүрлі объекттер қолданылады. Осындай объекттердің кейбіреуі бүтін санды және одан кейнгі мәннің генерациялау ережесін сақтайды; әдетте, бұл амал триггерлер көмегімен орындалады. Кейбір МҚБЖ бастапқы кілттер үшін өрістердің арнайы типін сүйемелдейді. Жазбаларды қосқан кезде осындай өрістер автоматты түрде тізбектелген мәндермен (әдетте, бүтін сандармен) толтырылады. Microsoft Access және Microsoft SQL Server жүйелерінде осындай өрістер Identity fields деп аталады. Реляциялық МҚБЖ-ң көбісінде кілттер индекстер деп аталатын объекттер көмегімен іске асырылады. Индекстерді жазбалардың нөмірлер тізімі ретінде елестетуге болады, олар жазбаларды қандай ретімен шығару керектісін көрсетеді.

 

14.2.2  Шектеулер

Қазіргі замандағы серверлік МҚБЖ-ң көбісінің құрамында шектеулер деп аталатын арнайы объекттер бар. Бұл объекттер өрістердің мүмкін болатын мәндеріне орнатылатын шектеулер туралы мағлұматтардан тұрады. Мысалы, осындай объект көмегімен берілген өрістің мәнінің максималды немесе минималды мәнін орнатуға болады; содан кейін МҚБЖ мәліметтер қорында осы шартты бұзатын жазбаны сақтауға мүмкінді бермейді. Мәліметтердің өзгеру диапазонынан басқа сілтеме жасау шектеулер бар. МҚБЖ барлығы шектеулерді сүйемелдемейді. Осындай жағдайда ұқсастық функционалдығы бар ережелерді іске асыру ұшін басқа объекттерді қолдануға болады (мысалы, триггерлерді) немесе осы ережелерді мәліметтер қорымен жұмыс істейтін клиенттік қолданбалыларда сақтауға болады.

 

14.2.3 Мәліметтер қорларына сұраныстар

Мәліметтерді модификациялау немесе сұрыптау, метамәліметтерді өзгерту және тағы да басқа операцияларды орындау сұраныстар көмегімен іске асырылады.

Қазіргі кездегі МҚБЖ көбісінде (және колданбалыларды өңдеудің кейбір құралдарында) осындай сұраныстарды жасаудың құралдары бар.  Мәліметтермен әрекеттесудің әдісінің бірі «queries by example» (QBE) — үлгі бойынша сұраныс деп аталады. QBE кестелерді байланыстырып, сұраныс нәтижесінде көрсетілетін өрістерді таңдаудың визуалды құралы болып табылады. Сұранысты тікелей SQL тілін қолданып жазуға болады.

Реляциялық кестеден өзгеше сұраныс нәтижесінде жатық жолдар реттелген, олардың реті бастапқы сұраныспен (кей кезде индекстердің бар болуымен) анықталады. Сондықтан осындай жиында ағынды жолды анықтап, оған курсор деп аталатын көрсеткішті орнатуға болады.

 

14.2.4 Транзакциялар

Мәліметтерге қолданылатын операциялар тобы транзакция болып табылады. Олар бірге орындалады немесе бұзылады. Транзакцияға кіретін барлық операциялар табысты орындалып, олардың жұмысының нәтижесі мәліметтер қорында сақталған болса транзакция аяқталды деп есептелінеді. Егер де транзакция құрамына кіретін барлық орындалған операциялар жойылып, осы операцияларға қолданылған мәліметтер қорының объекттері бұрынғы күйіне келсе транзакцияның шегінуі болады. Шегінудің мүмкіндігі болу үшін көптеген операцияларды МҚБЖ log-файлдарға жазып отырады, осы файлдар бастапқы мәліметтерді қалпына келтіруге мүмкіндік береді. Транзакция құрамында бірнеше ішкі транзакциялар болуы мүмкін.

 

 14.2.5 Пайдаланушылар мен рольдер

 Мәліметтерді рұқсат етілмеген қол жеткізуден сақтау м аңыздымәселе болып табылады және әртүрлі жолдармен шешіледі. Кестені немесе оның бірсыпыра өрістерін парольмен қорғау ең қарапайымы болып табылады. Қазіргі кезде көп қолданылатын тағы бір әдіс  — пайдаланушылардың аттарымен парольдерінің тізімдерін жасау. Кейбір МҚБЖ, әдетте, серверлік пайдаланушылар тізімдерінен басқа рольдерді сүйемелдейді. Ерекше құқықтар жиыны рольдер болып табылады. Егер де пайдаланушы рольге ие болса, е осы рольға меншіктелген барлық құқықтарын қабылдайды.

 

14.2.6 Жүйелік каталог

Пайдаланушылар мен рольдердің тізімдерін сүйемелдейтін кез келген реляциялық МҚБЖ оларды бір жерде сақтауы керек. МҚБЖ-рі осы тізімдерге қосымша кестелер, индекстер, триггерлер, процедуралар, т.с. тізімдерін және олардың иелері туралы мағлұматтарды сақтап қояды. Осындай тізімдер жүйелік кестелер, ал оған сәйкес мәліметтер қорының бөлігі жүйелік каталог деп аталады. Барлық МҚБЖ жүйелік каталогтарды сүйемелдемейтінін айтып кеткен жөн. Қолданылатын мәліметтер құрылымдары, мәліметтердің логикалық ұйымдастыруы, пайдаланушылардың құқықтары және мәліметтердің физикалық орналасуы туралы мағлұматтар метамәліметтер қоры деп аталады. Осы қорды басқару үшін мәліметтер қорын әкімдеудің арнайы программалық қамтамасыздандыруы бар.

 

14.2.7 Триггерлер мен сақталынған процедуралар

Қазіргі кездегі серверлік МҚБЖ көбісінде триггерлер мен сақталынған процедуралары орындалатын кодты сақтап қоюға қолданылады.

Мәліметтер қорының серверімен орындалатын процедуралардың арнайы түрі сақталынған процедура  болып табылады. Сақталынған процедуралар белгілі МҚБЖ тәуелді процедуралық тілдерде жазылады. Олар бір бірін жұмысқа қосады, кестелерде мәліметтерді өзгертіп оқиды. Оларды мәліметтер қорымен жұмыс істейтін клиенттік қолданбалылардан шақыруға болады. Сақталынған процедуралар әдетте жиі кездесетін есептерді орындауға қолданылады.

Кестедегі мәліметтерді өзгерту, қосу, жою операциялары орындалғанда автоматты түрде жұмысқа қосылатын сақталынған процедуралардың арнайы класы триггер деп аталады. Мәліметтерді өзгерткенде триггер жұмысқа қосылып анықталған әректтерді орындайтын сақталынған процедураны жүктейді. Триггерлерде орындалатын код бар, бірақ оларды клиенттік қолданбалылардан немесе сақталынған процедурадан шақыруға болмайды. Триггер әр кезде белгілі кестемен байланысты және осы кестені редакциялаған кезде триггермен байланысты оқиға пайда болса, ол жұмысқа қосылады.

  

15 Дәріс. Мәліметтерді4 таратылған өңдеkуі

 

Дәріс мазмұны:

  - мәліметтерді4 таратылған өңдеkу3yің сұрақтары қарастырылады.

 

Дәріс мақсаты:

         -  мәліметтер қорлар технологиясындағы «клиент—сервер» моделімен танысу.

 

15.1 Жалпы мағлұматтар

Егер де мәліметтер қоры бір компьютерде орналасқан болса, бір мәліметтер қорына бірнеше пайдаланушылардың параллелді қол жеткізуі  орталықтанған мәліметтер қорына таратылған қол жеткізу болып табылады.  Осындай жүйелер мәліметтерді таратылған өңдеу жүйелері деп аталады. Егер де мәліметтер қоры желідегі бірнеше компьютерде орналасып және оған бірнеше пайдаданушы параллелді қол жеткізе алса, онда таратылған мәліметтер қорына параллелді қол жеткізуді аламыз. Осындай жүйелер таратылған мәліметтер қорларының жүйесі деп аталады.

Физикалық мәліметтер қорының желі бойынша таратылу сұлбасы мәліметтер қорының топологиясы немесе таратылған мәліметтер қорының құрылымы деп аталады.

Көп деген SQL-сұраныстардан тұратын транзакцияны бір алыстағы түйінде өңдеу алыстағы транзакцияны орындаудың мүмкіншілігі болып табылады.

Желінің бірнеше түйіндерінде (алыстағы немесе жергілікті) орындалатын SQL сұраныстарының бірнешесінен тұратын транзакцияны өңдеу таратылған транзакцияны сүйемелдеу болып табылады; бірақ әр сұраныс таратылған болмайды. Бір таратылған сұранысты өңдегенде әртүрлі жергілікті сұраныстар желінің әртүрлі түйіндерінде өңделінулері мүмкін.

Сұраныс өңделгенде желінің әртүрлі түйіндерінде орнатылған мәліметтер қорының мәліметтері қолданылса сұраныс таратылған болып табылады.

Мәліметтерді таратылып өңдеу жүйелері мәліметтер қорларының бірінші буынымен байланысты, олар мультипрограммалық операциялық жүйелерде құрастырылатын және орта ЕЭМ-ің сыртқы жады құрылғыларында мәліметтер қорын орталықтанған сақтауы мен бірге оған көп пайдаланушылардың терминалдардан қол жеткізу режимін қолданатын. Сонымен бірге пайдаланушылар терминалдары мәліметтерді сақтап, өңдеуге қолданатын өз ресурстары яғни процессорлары, жадылары болмайған.

 

15.2 Мәліметтер қорларының технолгиясындағы «клиент—сервер» модельдері

«Клиент—сервер» есептеу моделі 90-шы жылдары пайда болып тез өрістеген ашық жүйелер парадигмасымен байланысты.

«Клиент-сервер» термині басында программалық қамтамасыздандыру архитектурасына қолданылатын еді: бұл архитектура орындалу процесті біреуі модельде «клиент» деп, екіншісі «сервер» деп аталатын екі программалық процестің өзара байланысу принципі бойынша бейнелейтін. Клиенттік процесс кейбір қызметтерді сұрайды, серверлік процесс оларды орындауын қамтамасыздандырады. Сонымен бірге бір серверлік процесс көптеген клиентік процестерге қызмет жасай алады.

Бұрында қолданбалы (пайдаланушының программасы) бөлінбей кейбір монолитті блок болып орындалатын. Бірақ желі ресурстарын рационалды қолданудың идеясы пайда болды. Шынындада монолитті орындау кезде тек қана жалғыз компьютердің ресурстары қолданылады, желідегі басқа компьютерлер терминалдар ретінде қарастырылады.  Бірақ қазірде желідегі компьютерлердің барлығының өз ресурстары бар, осы ресурстарды максималды қолдану мақсатымен жүктемелерді тарату керек.

Мәліметтер қорының технологиясына «клиент—сервер» технологиясын қолданудың негізгі принципі стандартты интерактивті қолданбалының функцияларын әртүрлі табиғаты бар бес топқа бөлуде негізделген.:

          - мәліметтерді енгізу және көрсету функциялары (Presentation Logic);

         - қолданбалының есептерін шешудің негізгі алгоритмдерін анықтайтын қолданбалы функциялар (Business Logic);

         - қолданбалының өзінде мәліметтерді өңдеу функциялары (Database Logic),

         - ақпараттық ресурстарды басқару функциялары (Database Manager System);

         - алдындағы төрт топтың функцияларын байланыстыратын қызмет функциялары.

  Мәліметтер қорымен жұмыс жасайтын типтік қолданбалының құрылымы 15.1 суретте келтірілген.

15.1 Сурет - Мәліметтер қорымен жұмыс жасайтын интерактивті қолданбалының құрылымы

 Қолданбалы жұмыс істеген кезде пайдаланушы өз экранында көретінін презентациялық логика (Presentation Logic) анықтайды. Қолданбалымен жұмыс істегенде пайдаланушының көретін, толтыратын  интерфейстік экрандык формалардың барлығы және пайдаланушыңға көрісетілетін  кейбір аралық есептерді шешу нәтижелері немесе анықтама ақпарат осы бөлікті құрастырады. Сондықтан презентациялық логиканың негізгі есептері келесілер болады: экрандық бейнелерді жасау; экрандық бейнелерге жазу және олардан оқып алу; экранды басқару; мышь қозғалыстарын және пернетақта батырмаларын басуларын өңдеу.

  Бизнес-логиканы немесе қолданбалылардың өзінің логикасын  қолданбалының белгілі есептерін шешу алгоритмдерін анықтайтын қолданбалы кодының бөлігі құрастырады (Business processing Logic). Әдетте бұл код программалаудың С, C++, Cobol, SmallTalk, Visual-Basic сияқты әртүрлі тілдерін қолданумен жазылады.

  Мәліметтерді өңдеу логикасы (Data manipulation Logic) қолданбалының ішінде мәліметтерді өңдеуге негізделген қолданбалының кодының бөлігі. Мәліметтерді МҚБЖ (DBMS) басқарады. Мәліметтерге қол жеткізуді қамтамасыздандыру үшін сұраныстар тілі мен  SQL стандартты тілінің әрекеттесу құралдары қолданылады. Әдетте SQL тілінің операторлары қолданбалының кодын жазуға пайдаланатын 3-ші немесе 4-ші ұрпақтың тілдеріне ендіріледі.

Мәліметтерді басқару процессоры (Database Manager System Processing) мәліметтер қорын сақтап қою мен басқаруды қамтамасыздандырады. Идеалды жағдайда МҚБЖ функциялары қолданбалының бизнес-логикасына көрінбеуі керек, бірақ қолданбалының архитектурасын қарастыру үшін оларды қолданбалының бөлек бөлігіне орнатқан жөн.

 

15.3 Екі денгейлі модельдер

Екі платформада - клиентте және серверде, орындалатын процестер арасында аталған бес функцияларды таратудың нәтижесі екі денгейлі модель болып табылады. Таза түрде ешқандай модель болмайды, тек қана екі денгейлі модельдердің сипатты ерекшеліктерін қелтіреміз:

1) мәліметтерді алыстан басқару немесе файлдық сервер (File Server, FS) моделі. Бұл модельде МҚБЖ және барлық ақпараттық ресурстарды басқару функциялары клиентте орнатылады. Серверде мәліметтердің файлдары орнатылып, оларға қол жеткізу сүйемелденеді. Клиенттің сұранысы DML бұйрықтарымен іске асырылады. МҚБЖ осы сұранысты файлдық бұйрықтар тізбегіне түрлендіреді. Әр файлдық бұйрық ақпарат блогын клиентке тасымалдайды;

 2) мәліметтерге алыстан қол жеткізу моделінде (Remote Data Access, RDA) мәліметтер қоры серверде орнатылады. МҚБЖ өзегіде серверде болады. Клиентте қолданбалының презентациялық логикасы мен бизнес-логикасы орнатылады. Клиент серверге  SQL тіліндегі сұраныстарды жібереді.

3) мәліметтер қорының серверінің моделі. Бұл модельді қазіргі кездегі МҚБЖ көбісі сүйемелдейді. Модельдің негізі келесілер болады: SQL-серверді программалау механизмі ретінде сақталынған процедуралар механизмі; ақпараттық қойманың ағынды күйін бақылап отыратын механизм ретінде триггерлер механизмы; домендік құрылымды сүйемелдеу немесе пайдаланушылардың мәліметтер типтерін шектеу механизмі.

Бұл модельде бизнес-логика клиент пен сервер арасында бөлінген. Серверде бизнес-логика мәліметтер қорында сақталынып және МҚБЖ–ен басқарылатын арнайы программалық модульдер — сақталынған процедуралар түрінде іске асырылған. Клиенттік қолданбалы серверге сақталынатын процедураны қосу бұйрығымен қатысады, ал сервер осы процедураны орындап, процедурада орнатылған мәліметтер қорының өзгертулерін тіркейді. Сервер клиентке сұраныстарға сәйкес мәліметтерді қайтарады. Клиент пен сервер арасындағы ақпаратпен алмасу трафигі азайады.  

Мәліметтер қорының серверінің моделіндегі оратылқтанған бақылау триггерлер механизмін қолданумен орындалады. Триггерлерді қолдану механизмі бір триггер жұмысқа қосылуы басқа триггерлердің жұмысына себеп болатын оқиғалар  пайда болатынын болжайды. Триггерлердің жұмысқа қосылу шексіз циклі пайда болмау үшін бұл қуатты құралды келісіп қолдану керек. Осы модельде сервер активті болады себебі триггерлер механизмін қолданып клиентпен бірге сервердің өзі де мәліметтер қорының мәліметтерін өңдеудің инициаторы болып табылады. Сақталынған процедуралар мен триггерлер мәліметтер қорының сөздігінде сақталады, оларды бірнеше клиент қолдана алады, сондықтан әртүрлі клиенттік қолданбалыларда мәліметтерді өңдеудің алгоритмдері қайталанбайды. Сақталынған процедуралар мен триггерлерді жазу үшін ішкі SQL деп аталатын стандартты SQL тілінің кеңейтілуі қолданылады.

     Серверге өте көп  жүктеме түсетіні осы модельдің кемшілігі болып табылады. Шынында да, сервер көптеген клиенттерге қызмет жасап келесідей функцияларды орындайды: бейнелеген триггерлермен байланысты оқиғаларды бақылау; триггерлермен байланысты оқиғалар пайда болған кезде олардың автоматты түрде жұмысқа қосылуларын, әр триггердің ішкі программасының орындалуын қамтамасыздандырады; пайдаланушылар сұраныстары бойынша сақталынған процедураларды триггерлерден жұмысқа қосады; клиентке қажетті мәліметтерді береді; МҚБЖ барлық функцияларын орындайды: мәліметтерге қол жеткізу, мәліметтер қорындағы мәліметтердің бүтіндігін бақылап сүйемелдеу, қол жеткізуді бақылау, барлық пайдаланушылардың бір мәліметтер қорымен параллельді жұмыстарының дұрыстығын қамтамасыздандыру.

  Егер де қолданбалылардың бизнес-логикасының көп жұмысын серверге берсеңіз клиенттерге қойылатын талаптар азайады. Кей кезде осындай модельді «жіңішке клиенті» бар модель деп, ал алдынғы модельдерді «қалың клиентті» модельдер деп атайды.

Сервердің жүуктемесін азайту үшін үш денгейлі модель қолданылады.

Әдебиет тізімі

1. Хансен Г., Хансен Д. Базы данных: разработка и управление. –  М.: ЗАО «Издательство БИНОМ», 1999 г.                                                           

2. Тихомиров Ю. Microsoft SQL Server 7.0 – СПб. Издательство «Питер»,      1999 г.

3. Плю Р., Стефенс Р.,  Райан К. Освой самостоятельно SQL за 24 часа. – М.: Издательский дом «Вильямс», 2000 г.                                                  

4. Кандзюба С.П., Громов В.Н. Delphi 6/7. Базы данных и приложения. – СПб: ООО «ДиаСофтЮП», 2002 г.                                                                          

5. Бобровский С. Delphi 5: учебный курс. – СПб: Издательство «Питер», 2000 г. 

6 Базы данных, учебник для высших учебных заведений под редакцией Хомоненко А. СПб.: Издательство «Корона», 2000 г.

7 Карнова Т.Базы данных. - СПб.: Издательство «Питер», 2000 г.

8 Ю. А. Григорьев, Г. И. Ревунrов. Банки данных. - Изд. МГТУ им. Н. Э. Баумана, 2002 г.

9 С.В. Глушаков, Д. В. Ломотько. Базы данных. Учебный курс. М.: Издательский дом «Вильямс», 2000 г.

10 Джек Л. Харрингтон Проектирование реляционных баз данных просто и  доступно. – М.:Издательство «Лори», 2000 г.

11 Т.А. Гаврилова, В. Ф. Хорошевский Базы знаний интеллектуальных систем  - СПб,: Излательство «Питер», 2000 г.

12 В. В. Корнеев, А. Ф. Гареев и др. Базы данных интеллектуальная обработка информации - М: «Нолидж», 2000 г.

  


Мазмұны

 

 

б

1 дәріс. Мәліметтер қорлары технологиясының дамуы 

   1.1  Ақпараттық жұйелері

   1.2 Файлдар және файлдық жүйелері

 

2 дәріс. Мәліметтер қорларын қолданатын ақпараттық жүйелері

  2.1 Файлдық жүйелерінің кемшіліктері

  2.2 Мәліметтер қорларын қолданатын ақпараттық жүйелер

 

3 дәріс Мәліметтер қорларын басқару жүйелерінің даму тарихы

  3.1 Үлкен ЕЭМ-дегі мәліметтер қорлары

  3.2  Дербес компьютерлер кезеңі

  3.3 Таратылған мәліметтер қорлары

  3.4 Мәліметтер қорларын басқару жүйелерінің даму перспективалары

 

4 дәріс Тақырып аймақты жүйелік талқылау

  4.1 Ақпараттық жүйенің тақырып аймағы

  4.2 Тақырып аймақты бейнелеудің мысалы

 

5 дәріс. Мәліметтер қорларын жобалаудың принциптері

   5.1 Мәліметтер қорларының архитектурасы. Физикалық және логикалық тәуелсіздік

   5.2 Мәліметтердің концептуалды модельдері

 

6 дәріс. Мәліметтерді концептуалды модельдеу

   6.1 Мәліметтердің концептуалды модельдерінің негізгі анықтамалары

   6.2 Концептуалды модельді графикалық түрде көрсету

 

7 дәріс. Талқыланатын тақырып аймақтың ER-диаграммасын өңдеу

 

8 дәріс. Концептуалды модельдеудің мысалдары

 

9 дәріс. Мәліметтерді модельдеудің әдістері

    9.1 Мәліметтердің үш негізгі модельдері

        9.1.1 Мәліметтердің иерархиялық моделі

        9.1.2 Мәліметтердің желілік моделі

        9.1.3 Реляциялық модельге көшу

 

10 дәріс. Мәліметтердің реляциялық моделі

   10.1 Реляциялық кестелер мен кілттер

   10.2 Мәліметтердің бүтіндігін қамтамасыздандыратын шектеу шарттары

 

11 дәріс. Концептуалды модельді реляциялық модельге түрлендіру

   11.1 Объектілік жиынтықтар мен атрибуттарды түрлендіру

   11.2 Қатынастарды түрлендіру

 

12 дәріс. Мәліметтер қорларын нормалау

 

13 дәріс. Функционалды тәуелділітер мен олармен байланысты нормалы формалар

    13.1 Функционалды тәуелділіктер мен нормалы формалар

    13.2 Мәліметтердің концептуалды және реляциялық модельдерін салыстыру

 

14 дәріс. Өңделген реляциялық сұлбаны іске асыру

    14.1 Құрылымдасқан сұраныстардың SQL тілі

    14.2 Мәліметтер қорының объекттері

 

15 дәріс. Мәліметтерді4 таратылған өңделуі

     15.1 Жалпы мағлұматтар

     15.2 «Клиент—сервер» модельдерін мәліметтер қорларының технологиясында қолдану 

      15.3 Екі денгейлі модельдер