жүктеу мүмкіндігіне ие боласыз
Бұл материал сайт қолданушысы жариялаған. Материалдың ішінде жазылған барлық ақпаратқа жауапкершілікті жариялаған қолданушы жауап береді. Ұстаз тілегі тек ақпаратты таратуға қолдау көрсетеді. Егер материал сіздің авторлық құқығыңызды бұзған болса немесе басқа да себептермен сайттан өшіру керек деп ойласаңыз осында жазыңыз
1 жыл бойы шексіз жүктеңіз
Ахмет Байтұрсынов

Қазақстан Республикасы Білім және ғылым министрлігі
«Алматы энергетика және байланыс университеті»
коммерциялық емес акционерлік қоғамы
И.Т. Утепбергенов , Ш.Н. Сагындыкова
АҚПАРАТТЫҚ ЖҮЙЕЛЕРДЕГІ ДЕРЕКТЕР ҚОРЫ
Оқу құралы
Алматы
АЭжБУ
2016

2
ӘОЖ 004.6(075.8)
КБЖ
У82
Пікір берушілер:
техника ғылымдарының докторы, Қ.И. Сәтбаев атындағы ҚазҰТУ
ақпараттық қауіпсіздік кафедрасының профессоры
Д.З. Джурунтаев,
техника ғылымдарының докторы, Халықаралық IT Университеті
Р.К.Ускенбаева,
"Электроника" кафедрасының АЭжБУ доценті
Е.О. Елеукулов
Алматы энергетика және байланыс университетінің Ғылыми кеңесі
басуға ұсынды (__.___.2016 ж. № _ хаттама). АЭжБУ 2016 ж. ведомостік
әдебиеттер басылымдарын шығарудың тақырыптық жоспары
бойынша басылады, реті 45.
Утепбергенов И.Т., Сагындыкова Ш.Н.
У82 Ақпараттық жүйелердегі деректер қоры.
Ақпараттық жүйелердегі деректер қоры: Оқу құралы (жоғары оқу
орындарының «Ақпараттық жүйелер» мамандығы студенттеріне
арналған)/ И.Т.Утепбергенов, Ш.Н.Сагындыкова. – Алматы: АЭжБУ,
2016. – 157 б.: кесте – 1, ил. – 35, әдеб. көрсеткіші – 25 атау.
ISBN
Оқу құралында мәліметтер қорлары және информациялық жүйе,
мәліметтер қорларын басқару жүйелері, жеке және таралған мәліметтер
қорларының архитектурасы түсінігі қарастырылады. Реляционды мәліметтер
моделі және реляционды мәліметтер қорларын жобалау сипаттамасы беріледі.
Техникалық және экономикалық мамандықтарында оқитын және
мәліметтер қорларымен байланысты пәндері жоғары оқу орындарының
студенттеріне және тыңдармандарына арналған.
Оқу құралы «Ақпараттық жүйелер» мамандығы бойынша білім алатын
студенттерге арналған.
ӘОЖ 004.6(075.8)
КБЖ
ISBN © АЭжБУ, 2016
Утепбергенов И.Т.,
Сагындыкова Ш.Н.,2016

3
1.1. Развитие основных понятий представления данных
Любой вычислительный процесс представляет собой отображение (по
определенному алгоритму) некоторых входных данных в выходные.
Соотношение сложности представления обрабатываемых данных и
алгоритма вычислений определяет два класса задач:
1) вычислительные задачи – достаточно простое представление
данных и сложный, многооперационный процесс вычислений;
2) задачи обработки данных (невычислительные задачи) – простой
алгоритм обработки данных и сложное представление обрабатываемых данных.
На начальной стадии обучения программированию основное внимание
уделяется разработке алгоритма решения задачи. Однако часто оказывается,
что возможность (или невозможность) решения конкретной задачи зависит не
только от выбранного алгоритма, но и от того, какие понятия используются для
представления обрабатываемых данных.
1 Деректер қорына кіріспе. Негізгі түсініктердің жалпы сипаттамасы
Мақсаты: ЭЕМ-де шешілетін есептердің түрінің өзгеруіне байланысты
бағдарламалауда, соның ішінде деректер қоры секілді, деректерді ұсынудың
жаңа түрлерінің пайда болатынын көрсету.
1.1 Деректерді ұсынудың негізгі түсініктерінің дамуы
Кез келген есепетуіш үрдіс келген деректердің шығу деректеріне
бейнеленуін (белгілі бір алгоритм бойынша) білдіреді.
1.1 сурет – Алгоритм
Өңделетін деректер мен есептеу алгоритмдерін ұсыну күрделілігінің
қатынасы есептердің екі класын анықтайды:
3) Есептеуіш есептер – есептеу дерекетерін ұсынудың жеткілікті
қарапайым және күрделі көп операциялық үрдісі.
4) Деректерді өңдеудің есептері (есептеуіш емес есептер) – деректерді
өңдеудің қарапайым алгоритмі және өңделетін деректердің күрделі ұсынылуы.
Бағдарламалауды үйренудің бастапқы сатысында есептерді шешу
алгоритмін жасақтауға негізгі көңіл бөлінеді. Алайда, нақты есепті шешу
мүмкіндігі (немесе мүмкінсіздігі) таңдалған алгоритмге ғана байланысты емес,

4
сонымен қатар өңделетін деректерді ұсыну үшін қандай түсініктер
қолданылатынына да байланысты.
Келесі формула бойынша есептелетін қарапайым мысалды қарастырайық:
Y=X
2
+5X,
мұндағы X және Y – анықталған сандар, олар мұнда деректердің
қарапайым бірлігі (деректер элементтері) болып табылады.
Осы есепті шешу алгоритмін бағдарламалау кезінде (формуланы
бағдарламалау) деректердің қарапайым түрі – қарапайым айнымалылар (X және
Y бағдарламада қарапайым айнымалылар ретінде ұсынылады) қолданылады.
Бағдарламалау жүйесінде қарапайым айнымалы, бағдарламалау кезінде
таңдалуға тиісті, оның мәндерінің белгілі бір типімен сипатталады. Тіпті бұл
қарапайым жағдайда да айнымалының типін дұрыс таңдау қажет, себебі
қолданбалы есептің нақты шешімінің мүмкіндігі немесе мүмкінсіздігі осы
таңдауға байланысты (мысалы, нақты деректерді ұсыну үшін берілген
разрядтар жетпейді).
Басқа мысалды қарастырайық:
S=a1+a2+...+aN.
Бұл есептің шешімін, жалпы жағдайд а тек қана қарапайым
айнымалыларды қолдана отырып, алу мүмкін емес. Мұнда жай сан емес, ал
сандар тізбегі өңделеді. Бұл жағдайда бағдарламалау кезінде, жиын (массив)
секілді деректер түрі қолданылады. Жиын (массив) – элементтер жиынтығы,
элементтердің әрқайсысы, индекс деп аталатын, реттелген бүтін сандар
жиынымен байланысқан. Барлық элементтердің мәндерінің типі бірдей болуы
қажет, ол жиын типі де болады. Бұл жағдайда a1, a2,..., aN сандары бағдарламада
A(1), A(2),..., A(N) жиынымен беріледі.
Қарастырылған мысалдар есеп түрінің өзгеруі басқа деректер түрлерін
қолдану қажеттілігін міндеттейді.
Бағдарламалаудың бұрынғы тілдері (ФОРТРАН, АЛГОЛ-60) ғылыми-
техникалық есептеуіш есептерді шешу үшін арналған. Бұл тілдерде тек
жоғарыда көрсетілген деректер түрлері (қарапайым айнымалылар және
жиындар) қолданылған.
60-шы жылдардың соңынан бастап, әртүрлі түрдегі құжаттарды өңдеумен
байланысты, есептелмейтін деп аталатын есептерді шешуі үшін
компьютерлерді қарқынды қолдана бастайды. Деректердің жаңа түрлерінің
пайда болуын деректерді өңдеудің жеңілдетілген есептер мысалында
қарастырайық.
Тапсырма 1. Жалақыны есептеу.
Есепті екі жеңілдетілген болжаммен қарастырайық:
1) Қызметкерге жалақы оның айлығы (оклад) негізінде есептеледі.
2) Бірде-бір салықтар мен ұстап қалулар ескерілмейді.
Осы есепті шешуге арналған қызметкерлер бойынша мәліметтер келесі
«ЕСЕПТЕП ЖАЗУ» карточкасында берілген:
Тегі, аты-жөні, Айлық Бір айдағы жұмыс Есептелген

5
әкесінің аты жасаған күндер
саны
сомасы
FIO O Ko S
Әр қызметкер үшін белгілі-бір айға есептелген сома келесі формула
бойынша есептеледі:
S=KoO/Kr,
мұндағы Kr – берілген айдағы жұмыс күндерінің саны.
Әр қызметкер үшін сәйкес деректер нақты мәнге ие, мысалы:
Иванов Иван
Иванович
180000 24 180000
Бұл мәндердің мәні бір бірімен байланыс кезінде ғана бар. Жеке
таңдалған 180000 саны өзінің мағыналық мәнін жоғалтатындықтан, мұнда оны
қарапайым айнымалы деректер түрінде қолдануға болмайды. Сонымен бірге,
нақты қызметкерді сипаттайтын, сәйкес мәндер жиыны әртүрлі типте
(символдық және сандық) болады, яғни оларды ұсыну үшін жиын сияқты
деректер түрінде қолдануға болмайды. Осылайша, «қарапайым айнымалы»
және «жиын» түсініктері, сәйкес карточканы ұсыну үшін, жеткіліксіз.
Есептелмейтін есептердің пәндік аймақтарында осындай деректерді
ұсынуды бейнелеу үшін жаңа түсініктер реті енгізілді [1.1].
Деректер элементі (өріс) – атаулы деректердің ең кіші бірлігі.
Берілген мысал үшін деректер элементі FIO, O, Ko, S болып табылады.
Қызметкер карточкасын сипаттау үшін «Логикалық жазба» түсінігі
қолданылады.
Логикалық жазба – деректер элементтерінің (өрістер) атаулы жиынтығы.
Логикалық жазба данасы (экземпляр) – жазба элементтерінің ағымдағы
мәні.
Қызметкерлер карточкаларының барлық жиынын ұсыну үшін
«Логикалық файл» түсінігі қолданылады.
Логикалық файл – берілген типтегі барлық жазба даналарының атаулы
жиынтығы.
«ТӨЛЕМ» (НАЧИСЛЕНИЕ) логикалық файлының мысалы:
Иванов Иван
Иванович
180000 24 180000
Абаев Абай
Абаевич
220000 20 183000
------------------ --------------------- ------------------- ------------
Акпаева Лиза
Маратовна
250000 24 250000

6
Осылайша, енгізілген түсініктердің көмегімен сәйкес деректерді
бейнелеуге болады. Заманауи бағдарламалау тілдерінде, есептеуіш есептерге
және де деректерді өңдейтін есептерге арналған, осы түсініктерді бейнелеу
үшін жаңа деректер түрі енгізілді.
Паскаль алгоритмдік тілінде, жазба (RECORD) – әртүрлі типте бола
алатын, бірнеше компоненттері бар күрделі айнымалылар секілді, деректер
түрлері енгізіледі. Сонымен қатар, жазба (өріс) компоненттеріне рұқсат индекс
бойынша емес, ал атау бойынша жүзеге асады. Тапсырма 1 Паскаль
бағдарламалау тілінде бағдарламалау кезінде «ТӨЛЕМ» (НАЧИСЛЕНИЕ)
логикалық жазба (логикалық файл) «RECORD» деректер түрімен ұсынылады,
қызметкерлердің логикалық жазба даналарының жиыны, Паскаль тілінің
құралдарымен және операциялық жүйемен құрастырылатын, «физикалық»
файлмен ұсынылады.
Salary = RECORD
FIO: string;
O: real;
Ko: real;
S: real;
END;
Мұндай есептеуіш емес есептердің маңызды ерекшелігін атап өтейік.
Мұндай есептерге үлкен көлемді деректер (қызметкерлердің үлкен саны,
өндірілетін өнімнің үлкен саны т.с.с.) сипаты тән. Көрсетілген деректер,
ережеге сәйкес, есептерді шешу үшін бірнеше рет қолданылады (еңбек ақы
үнемі әр ай сайын есептеледі), сондықтан деректер ЭЕМ жадында жеткілікті
ұзақ сақталуы қажет. Ұзақ уақыт сақтау үшін үнемі сыртқы жады қолданылады.
Осыған байланысты тапсырма 1 екі сатыдан тұрады.
1. бастапқы деректерді енгізу және оларды сыртқы жадыға кіргізу.
type
Salary = RECORD
FIO: string;
O: real;
Ko: real;
S: real;
END;
FSalary = File of Salary;
var
F: FSalary;
...
{ Бастапқы деректерді енгізу }
repeat
write('Қызметкерлер санын енгізіңіз (көп емес',
MaxN,' ): ');
readln(N);
until (N>0) AND (N<=MaxN);
For I := 1 to N do

7
Begin
Write(I,'нөмірлі қызметкер тегін енгізіңіз: ');
ReadLn(Sotr[i].FIO);
Write(I,'нөмірлі қызметкердің еңбек ақысын енгізіңіз: ');
ReadLn(Sotr[i].O);
Write(I,'нөмірлі қызметкердің жұмыс жасаған күндер санын енгізіңіз:');
ReadLn(Sotr[i].Ko);
End;
{ Деректерді сыртқы жадыға кіргізу }
Assign(F, 'MyFile.fsf');
Rewrite(F);
For I := 1 to N do
Write(F, Sotr[i]);
Close(F);
...
2. Сыртқы жадыдан бастапқы деректерді оқу, есептелген соманың есебі
және оларды баспаға шығару.
...
{ Сыртқы жадыдан мәліметтерді оқу }
Assign(F, 'MyFile.fsf');
Reset(F);
For I := 1 to N do
Read(F, Sotr[i]);
Close(F);
{ есептелген сома есебі және баспаға шығару }
For I := 1 to N do
Begin
Sotr[i].S := Sotr[i].O * Sotr[i].Ko / Kr;
WriteLn(Sotr[i].FIO, ': ', Sotr[i].S);
End;
...
Ұсынылған бағдарламалар қойылған есепті жасалған болжамдар
бойынша шешеді. Бұған қажетті деректер, тек осы есепті шешу үшін арналған,
MyFile.fsf файлында сақталады. Атап өтейік, бұл жағдайда деректерді сипаттау
қолданбалы бағдарламаға қосылған. Жазба файлының форматын өзгерту
кезінде қолданбалы бағдарламаны да өзгерту қажет. Осылайша, қойылған
есепті шешетін, бағдарламалық жүйе өзінің өзіне меншікті деректерін
анықтайды және оларды басқарады. Мұндай бағдарламалық жүйелер файлдық
жүйелер деп аталады [1.2 [ 1.3 ].
Тапсырма 2. Кадр құрамын есепке алу.
Мұнда «ҚЫЗМЕТКЕР» (СОТРУДНИК) карточкасында ұсынылған,
қызметкерлер туралы мәліметтер өңделеді:

8
Тегі, аты-жөні,
әкесінің аты
Қызметі Туған жылы Еңбек
ақысы
Мекен
жайы
FIO D G O M
Есепті шешу келесі сатылардан тұрады:
Бастапқы деректерді енгізу және оларды сыртқы жадыға кіргізу.
Жазбаны жою, жөндеу немесе қосу мақсатымен сыртқы жадыдан
бастапқы деректерді оқу.
...
{ Сыртқы жадыдан деректерді оқу }
Assign(F, 'MyFile.fsf');
Reset(F);
IsFound := False;
For I := 1 to N do
Begin
Read(F, Sotr);
If Sotr.FIO = KeyFio Then
Begin
IsFound := True;
Sotr.D := Бөлім бастығы';
Seek(F, FilePos(F)-1);
Write(F, Sotr);
Break;
End;
If IsFound Then
WriteLn('Жөндеу сәтті жүргізілді')
Else WriteLn('Қызметкер ', KeyFio, 'табылған жоқ');
Close(F);
...
Қарастырылып отырған жағдайда тапсырма 2 тапсырма 1 тәуелсіз
шешіледі.
Тапсырма 3. Қызметкердің ауыруына байланысты еңбек ақы қорын
(ЕАҚФ) үнемдеу есебі.
«ЕАҚФ ҮНЕМДЕУ » (ЭКОНОМИЯ ФОТ ) жазбасымен ұсынылған,
деректер өңделеді:
Тегі, аты-жөні,
әкесінің аты
Еңбек ақы
Еңбекке
жарамсыз
парағындағы
күндер саны
Төленбеген
сома
FIO O Kдв SN
SN=KдвO/Kr.
Тапсырма 3 шешу бағдарламасы тапсырма 1 шешу бағдарламасына ұқсас.

9
Жоғарыда көрсетілген барлық үш бағдарламалық жүйе бір мекемеде
болатын, әдеттегі жағдайды қарастырайық. Келесі түбегейлі пайдалану
кемшіліктерін атап өтейік:
Ақпараттар қайталанады. Үш файлда да FIO, O өрістері бар, бұл елеулі
артық жұмсалуына алып келеді. Өзгертулер енгізу кезінде (мысалы, тектерін
өзгерту) бір мәнді бірнеше рет әртүрлі файлға енгізуге тура келеді, бұл
машиналық уақыт шығынының жоғарлауына алып келеді. Деректердің қарама-
қайшылығының әлеуетті мүмкіндігі бар (бір файлға өзгертулер енгізілген, ал
екіншісіне енгізілмеген).
Сәйкес жазбаларды біріктіру және жоғарыда аталған есептердің барлығы
үшін бір ақпараттық қор (база) құру арқылы аталған кемшіліктерді жоюға
болады. Бір қарағанда, қайталанатын өрістерді алып тастап, барлық жазбаларды
бір жазбаға біріктіру барынша табиғи. Біріктірудің мүмкін нұсқасын аламыз:
FIO D O G Ko M Kдв S SN
Ақпараттардың қайталануы толығымен алынып тасталды. Жады шығыны
аз. Кемшіліктер жойылды. Бұл жағдайда 1–3 тапсырмаларының қалай
өзгеретінін қарастырайық. Есепті шешу уақыты сыртқы жадыдағы деректерді
санау көлеміне тікелей тепе тең.
Әр есеп үшін жеке файлдарды қолдану кезінде i –ші есептің ( i = 1, 2, 3)
шешу уақытын, жазба ұзындығын, жазба санын сәйкесінше Ti, li, Ni белгілейік:
Ті ≈C ·Li ·Ni,,
мұндағы C – тепе-теңдіктің кейбір коэффициенті.
Біріккен жазбаларды, жазба ұзындығын, жазба санын қолдану кезіндегі
i –ші есептің ( i = 1, 2, 3) шешу уақытын сәйкесінше Ri, d, N белгілейік:
Rі ≈C ·d ·N,
N1 = N2 = N, N3 << N ескерейік.
Онда i –ші есепті ( i = 1, 2) шешу уақыты біріккен файлды қолдану
кезінде Rі/Ti ≈d/Li рет жоғарылайды. Біздің мысалымыз үшін таңдалған өріс
ұзындығына байланысты 2–3 есе өзгеруі мүмкін. Осылайша, қайталануды жою
есепті шешу уақытының өсуіне алып келеді. Ережеге сәйкес мұндай өсу
мүмкін.
Тапсырма 3 шешу уақыты R3/T3 ≈d·N/l3·N3 есе өседі. Себебі берілген
мысал үшін N3 << N, онда R3 >> T3. Тапсырма 3 шешу уақыты бірнеше
қатарға өсуі мүмкін, бұл тіптен мүмкін емес.
Бір ақпараттық қорды құрудың басқа нұсқасын қарастырайық. 1 және 2
тапсырмалардың жазбаларын біріктіріп, тапсырма 3 жеке қалдырайық. Екі
жазбаны аламыз:
FIO D O G Ko S M
FIO O Kдв SN

10
Бұл жағдайда қайталану қалады (FIO, O өрістері қайталанады). Бірақ
N3<<N болғандықтан, онда қайталанудың жалпы көлемі азғантай. 1 және 2
тапсырмаларды шешу уақыты жеке фай лдық жүйелер нұсқасымен
салыстырғанда аздап өседі, тапсырма 3 шешу уақыты жеке файлдың алдыңғы
нұсқасындағыдай қалады. Мұндай біріктіру кемшіліктердің ықпал етуін
біршама азайтады және сонысмен бірге барлық тапсырмалардың шешу
уақытын біршама жоғарылатады. Барлық үш тапсырмаларды, екі түрлі
жазбадан тұратын ортақ ақпараттық қорды қолдана отырып, шешуге болады.
Екі келтірілген жазба типтері бір-бірімен FIO өрісі бойынша байланысқан.
Интеграцияның келтірілген нұсқалары келтірілген тапсырмалар үшін
интеграцияның барлық мүмкін тәсілдерін тамамдамайды және ең жақсы
нұсқаны таңдау сұрағына келесі дәрістерде ораламыз.
Мұнда бұл жағдайда жоғарыда көрсетілген тапсырмаларды шешу үшін,
жазбаны интеграциялау негізінде құрылған, деректердің кейбір жаңа түрлері
қолданылады.
Бұл түрдегі деректерді сипаттау үшін «Деректер қоры» деген жаңа түсінік
енгізіледі [1.1].
Деректер қоры – әртүрлі типтегі жазба даналарының жиынтығы және
жазбалар мен элементтер арасындағы қатынастар.
Деректер қорын мнималды артықтығы бар болған кезде өзара
байланысқан бірге сақталатын деректер ретінде анықтауға болады. Бір немесе
бірнеше қосымшалар үшін оларды тиімді қолдануға мүмкіндік береді.
Осылайша, «Деректер қоры» түсінігінің пайда болуы есептеуіш емес
есептердің жаңа класының пайда болуымен шарттасқан. Оларды шешу кезінде
ортақ деректер қолданылады. Деректер қорын құрастырудың тиімді критериі
ретінде, ережеге сәйкес, қолданбалы бағдарлама қолданушылары сұраныстарын
жүзеге асырудың уақытша сипаттамалары қолданылады.
Қысқаша қорытынды. Деректерді ұсынудың негізгі түсініктерінің дамуы
қарастырылды. Деректермен (айнымалы, жиын) байланысты бағдарламалаудың
калассикалық нұсқасы және шешілетін есептердің кеңу нәтижесі мен олардың
бағдарламалау жүйесіндегі бейнесі секілді бағдарламалаудың жаңа
түсініктерінің пайда болуы сипатталды. Жалпы деректердің бірнеше есептерін
қолдану кезіндегі деректерді интегралдау есебі қойылды. Деректер қоры
түсінігі анықталды.
2 Деректер қорын басқару жүйесі
Мақсаты: қолданбалы бағдарламалар мен деректер қоры арасындағы
бағдарламалық интерфейсті құру қажеттілігін көрсетті, деректер қорын басқару
жүйесі түсінігін анықтау және деректер қоры мен көптеген қолданушылардың
өзара әрекеттесуінен шығатын, ДҚБЖ негізгі функцияларын құрастыру.
Есептерді шешу кезінде бір немесе бірнеше жеке файлдарды қолданатын,
қолданбалы бағдарламада деректердің сақталуына және нақтылығына, осы
есеппен жұмыс жасайтын бағдарламалаушы жауап береді. Деректер қорын

11
қолдану әртүрлі қолданушылардың есебін шешетін, бірнеше қолданбалы
бағдарламалардың онымен жұмысын талап етеді.
Демек, қолданбалы есептің біреуін шешетін, бағдарламалаушы
деректердің сақталуына және интегралданған деректердің нақтылығына енді
жауап бере алмайды. Сонымен қатар, деректер қорын қолданған шешілетін
есептер шеңберінің кеңеюі жазбалардың жаңа типінің және олардың
арасындағы қатынастың пайда болуына алып келуі мүмкін. Деректер қоры
құрылымының мұндай өзгерісі, деректер қорымен жұмыс жасайтын, бұрын
жасалған және сәтті жұмыс жасап тұрған қолданбалы бағдарламалар жүйесінің
өзгерісіне алып келмеуі қажет. Басқа жағынан қарағанда, кез келген
қолданбалы бағдарламалардың мүмкін өзгерістері, өз кезегінде деректер
құрылымының өзгерісіне алып келмеуі қажет. Жоғарыда айтылғандардың
барлығы деректерді қолданбалы бағдарламалардан бөлу қажет екенін көрсетеді.
Олардың тәуелсіздігін қамтамасыз ететін, қолданбалы бағдарламалар мен
деректер қорының арасындағы интерфейстің ролін бағдарламалық кешен -
деректер қорын басқару жүйесі (ДҚБЖ) ойнайды (2.1 сурет).
ДҚБЖ – көптеген қолданушылармен (қолданбалы бағдарламалармен)
дерекетр қорын құру, енгізу және қолдану үшін арналған, дерекетрдің
интегралданған жиынын қолдауының бағдарламалық кешені.
2.1 сурет – Қолданбалы бағдарламалар мен деректер қорының
тәуелсіздігін қамтамасыз ету
Тағы да бір ұғымды анықтайық.
Деректер банкі – дерекетрдің интегралданған жиынын қолдауының,
тілдік, алгоритмдік, бағдарламалық, техникалық және ұйымдастырушылық
құралдары, сонымен қатар деректер қоры ретінде ұсынылған, осы деректердің
өзі.
Деректер қорын басқару жүйесінің негізгі функцияларын атап өтейік:
1) Құрылатын деректер қорының құрылымының анықтамасы, оның
инициализациясы және бастапқы жүктемені жүргізу.
Ережеге сәйкес, деректер қорының құрылымын құру сұхбат режимінде
жүреді. ДҚБЖ қолданеушыдан қажетті деректерді жүйелі түрде сұрайды.
Көпшілік заманауи ДҚБЖ деректер қоры кестелердің жиынтығы түрінде
беріледі. Қарастырылатын функция жадыда кестенің құрылымын сипаттауға
және құруға, кестеде деректердің бастапқы жүктемесін жүргізуге мүмкіндік

12
береді. MS Access ДҚБЖ үшін мұндай әрекеттердің мысалы 2.2 сурете
келтірілген.
2.2 сурет – ДҚБЖ MS Access деректер қоры құрылымының құрылуы
2) Қолданушыларға дерекетрмен күрделі әрекеттер жасау мүмкіндігі
берілу (қажетті деректерді іріктеу, есептеуді орындау, енгізу\шығару
интерфейсін жасақтау, визуализациялау).
ДҚБЖ мұндай мүмкіндіктер, ДҚБЖ құрамына кіретін, арнайы
бағдарламалау тілін қолдану негізінде, немесе графикалық интерфейс
көмегімен беріледі.
MS Access-те берілген функцияны жүзеге асыру сұраныстарды құру және
графикалық интерфейстің көмегімен енгізу формасын құру арқылы жүзеге
асырылады (2.3 сурет).
2.3 сурет – ДҚБЖ Access-те іріктеу үшін сұраныстарды құру
Клиент-серверлік ДҚБЖ арналған, сұраныстарды орындауға мүмкіндік
беретін, құралдар және қолданушының интерфейсін құруға мүмкіндік беретін,
бағдарламалық құралдар бар.

13
3) Қолданбалы бағдарламалар және деректердің тәуелсіздігін қамтамасыз
ету (логикалық және физикалық тәуелсіздік).
ДҚБЖ маңызды қасиеті деректер қорына екі тәуелсіз көзқарасты –
деректерді логикалық ұсынуды іске асыратын, және қолданбалы
бағдарламалардағы оның бейнесі, «қолданушы көзқарасын»; және «жүйе
көзқарасын» - ЭЕМ жадысында деректерді физикалық ұсыну қолдау мүмкіндігі
болып табылады. Деректердің логикалық тәуелсіздігін қамтамасыз ету
деректерді сақтаудың логикалық құрылымын өзгертуді қажет етпей деректер
қорын логикалық ұсынуын өзгерту (белгілі шектерде) мүмкіндігін береді.
Осылайша, қолданбалы бағдарламада деректердің логикалық ұсынуын өзгерту
деректерді сақтау құрылымының өзгеруіне алып келмейді. Деректердің
физикалық тәуелсіздігін қамтамасыз ету деректердің «логикалық» ұсынуын
өзгерту қажеттілігін шақырмай-ақ ЭЕМ жадында деректер қорын ұйымдастыру
тәсілдерін өзгерту (белгілі шектерде) мүмкіндігін береді. Осылайша, деректер
қорының ұйымдастыру тәсілдерін өзгерту қолданбалы бағдарламалардың
өзгеруіне алып келмейді.
4) Деректер қорының логикалық толықтығын қорғау.
Осы функцияны жүзеге асырудың негізгі мақсаты деректер қорында
деректердің нақтылығын көтеру болып табылады. Деректердің нақтылығы
оларды ДҚ енгізу кезінде немесе теріс деректерді ДҚ алатын және енгізетін,
деректерді өңдеу үрдістерінің заңсыз әрекеттері кезінде бұзылуы мүмкін.
Жүйеде деректердің нақтылығын көтеру үшін, белгілі бір жағдайда дұрыс
немесе деректерді «аулап алатын», толықтық шектеулері жарияланады.
Осылай, барлық заманауи ДҚБЖ, құрылымды құру кезінде сипатталған,
енгізілетін деректердің олардың типіне сәйкестігі тексеріледі. Жүйе сандық
типтегі өріске символды, мүмкін емес күнді және т.с.с. енгізуге жол бермейді.
Дамыған жүйелерде толықтық шектеулерін бағдарламалаушы, есептің
мазмұндық мәніне қарай, сипаттайды және оларды тексеру деректерді әр өңдеу
кезінде жүзеге асырылады. Деректер қорының логикалық толықтығының түрлі
көріністері нақтырақ келесі бөлімдерде қарастырылатын болады.
5) Физикалық толықтықты қорғау.
ЭЕМ жұмысы кезінде жұмыста іркілулер (мысалы, электр қуатын
айырудың әсерінен), деректерді машиналық тасушылардың бұзылуы болуы
мүмкін. Сонымен бірге деректердің арасындағы байланыста бұзылуы мүмкін.
Бұл болашақтағы жұмыстың мүмкінсіздігіне алып келеді. Дамыған ДҚБЖ
деректер қорын қалпына келтіру құралдары бар. Қолданылатын маңызды ұғым
«транзакция» ұғымы болып табылады. Транзакция – бұл, деректер қорымен
өндірілетін, әрекеттер бірлігі. Транзакция құрамына деректер қорын өзгертетін
бірнеше операторлар кіруі мүмкін, бірақ осы операторлардың барлығы
орындалады, немесе бірде біреуі орындалмайды. ДҚБЖ, шынында деректер
қорын енгізуден басқа, сонымен қатар транзакция журналын да жүргізеді.
Деректер қорында транзакцияны қолдану қажеттілігін келесі қарапайым
мысалда көрсетейік. Деректер қоры кейбір банкте қолданылады және
клиенттердің бреуі басқа клиенттің шотына ақша аударғысы келеді деп
болжайық. Деректер қорында әр клиенттің ақшасының саны туралы ақпараттар

14
сақталған. Бізге деректер қорында екі өзгерту жүргізу керек – клиенттердің
біреуінің шотындағы ақша сомасын азайтуымыз қажет, ал басқа шоттағы ақша
сомасын көбейтуіміз қажет. Әрине, нақты өмірде банкте ақша аударымы,
көптеген кестелерді, ал тіпті, көптеген деректер қорын қозғайтын, өте күрделі
үрдіс болып табылады. Алайда, мәнісі бірдей – барлық әрекетті орындауымыз
қажет (бір клиенттің шотын өсіруіміз, ал екінші клиенттің шотын азайтуымыз
қажет), немесе осы әрекеттердің бірде біреуін орындамаймыз. Бір шоттағы
ақша сомасын азайтып, ал екінші шоттағы ақша сомасын өсірмеуге болмайды.
Сонымен бірге, бірінші әрекеттің біреуін орындағаннан кейін (бірінші
клиенттің шотындағы ақша сомасын азайту) іркілу болды деп болжайық.
Мысалы, клиенттік компьютер мен деректер қорының арасындағы байланыс
үзілуі мүмкін немесе операциялық жүйенің қайта жүктелуіне алып келетін,
клиенттік компьютерде жүйелік іркілу (сбой) болуы мүмкін. Бұл жағдайда
деректер қорымен не болады? Бірінші клиенттің шотындағы ақшаны азайту
бұйрығы орындалды, ал екінші бұйрық – басқа шоттағы ақшаны өсіру – жоқ,
деректер қорының қарама-қайшы, ескірген жағдайына не алып келуі мүмкін.
Транзакция механизмін қолдану осындай жағдайлардың шешімін табуға
мүмкіндік береді. Бірінші әрекетті орындаудың алдында транзакцияның басы
бұйрығы шығады. Транзакцияға бір шоттан ақшаны шешу және басқа шоттағы
ақшаны өсіру операциясы қосылады. Транзакцияның аяқталу операторы әдетте
COMMIT деп аталады. Бірінші әрекет орындалғаннан кейін транзакция
аяқталмағандықтан, өзгерістер деректер қорына кіргізілмейді. Өзгерістер тек
транзакция аяқталғаннан кейін ғана кіргізіледі (бекітіледі). Осы оператор
шықпайынша қорда деректердің сақталуы жүрмейді.
Біздің мысалымызда, транзакцияны бекіту операторы шықпағандықтан,
деректер қоры бастапқы күйіне «кері шегінеді» - басқаша сөзбен айтқанда,
клиенттердің шотындағы сома транзакция басынынң алдындағы күйіндей
қалады. Деректер қорының әкімшілігі транзакция жағдайын қадағалай алады
және қажет болған жағдайда транзакцияны қолмен «кері шегіндіреді».
Сонымен қатар, айқын жағдайда ДҚБЖ транзакцияның «кері шегінуі» туралы
шешімді өзбетімен қабылдайды.
Транзакцияның қысқа болуы міндетті емес. Бірнеше сағатқа немесе
бірнеше күнге созылатында транзакциялар болады. Бір транзакцияның шегінде
әрекеттер санының өсуі орын алатын жүйелік ресурстардың өсуін талап етеді.
Сондықтан мүмкіндігінше транзакцияны қысқа істеген дұрыс. Транзакция
журналында барлық транзакциялар – бекітілгенде, «кері шегінумен»
аяқталғанда транзакциялар енгізіледі. Сақтық қорда сақталған көшірмелерді
құрумен бірге жүргізілген транзакция журналы деректер қорының жоғарғы
сенімділігіне жетуге мүмкіндік береді.
ДҚБЖ сервері қондырылған, компьютерде аппараттық іркілудің
нәтижесінде деректер қоры зақымданды деп болжайық. Бұл жағдайда соңғы
жасалған деректер қорының сақтық қорға сақталған көшірменсін және
транзакция журналын қолдану қажет. Сонымен бірге деректер қорына, сақтық
қорған сақталған көшірмесі құрылғаннан кейін бекітілген, тарнзакцияларды
ғана қолдану қажет. Көптеген заманауи ДҚБЖ әкімшілікке, сақтық қорға

15
сақталған көшірмесін және транзакция журналын пайдалана отырып, деректер
қорын жаңадан жасауға мүмкіндік береді. Мұндай жүйелерде белгілі бір уақыт
мезетінде ДҚ сақтық қордағы жинақтауыштарда көшірмесі алынады. ДҚ
барлық жүгінулер өзгертулер журналына бағдарламалық түрде жазылып
отырады. Егер деректер қоры бұзылған болса, онда қалпына келтіру
процедурасы жүктеледі, ол үрдіс кезінде сақтық қордағы көшірмеге өзгертулер
журналынан барлық жүргізілген өзгертулер енгізіледі.
6) Деректер қорына рұқсатқа қолданушылардың өкілдеттігін басқару.
Әртүрлі қолданушылар деректермен жұмыс бойынша әртүрлі өкілеттікке
ие (кейбір деректер қолжетімсіз болуы мүмкін; белгілі-бір қолданушыларға
деректерді жаңартуға рұқсат берілмейді және т.с.с.). ДҚБЖ, құпия сөз
принциптеріне, немесе өкілеттіктердің сипаттамасына негізделген, рұқсат
өкілеттігін шектеу механизмі қарастырылады.
7) Бірнеше қолданушылар жұмысын синхронизациялау.
Бірнеше қолданушылар бір уақыт мезгілінде бірдей деректерді жаңарту
операциясын орындауы мүмкін жағдай жеткілікті жиі орын алады. Мұндай
қайшылықтар деректердің логикалық толықтығының бұзылуына алып келеді,
сондықтан жүйе осы деректермен қолданушы жұмысын толық аяқтағанша
басқа қолданушылардың осы деректі жаңартуына жол бермейтін, шараларды
қарастыруы қажет. Мұнда қолданылатын негізгі ұғым «оқшаулау» болып
табылады. Оқшаулау түрлі қолданушыларға деректер қорымен бір уақыт
мезгілінде жұмыс жасауға тыйым салу үшін қажет. Себебі ол көптеген
қателіктерге алып келеді.
Бұл тыйымды жүзеге асыру үшін ДҚБЖ, транзакция қолданатын,
нысандарға оқшаулау орнатады. Оқшаулаудың түрлі типтері бар – кестелік,
беттік, жолдық және де басқа, олар бір-бірінен оқшауланған жазбалар санымен
ажыратылады. Басқаларынан жиі беттік оқшаулау – бір жолға
транзакциясының жүгінуі кезінде тек осы жол оқшауланады, ал қалған жолдар
өзгертулерге қол жетімді болып қалады.
Осылайша, деректер қорына өзгерістерді енгізу үрдісі келесі әрекеттер
тізбегінен тұрады: транзакция басы операторы шығады, деректерді өзгерту
операторы шығады, ДҚБЖ операторды талдайды және оның орындалуына
қажетті, оқшаулауды орындауға тырысады, оқшаулау сәтті болған жағдайда
оператор орындалады, содан кейін үрдіс келесі транзакция операторы үшін
қайталанады. Транзакция ішіндегі барлық операторлар сәтті орындалғаннан
кейін транзакцияны бекіту операторы орындалады. ДҚБЖ транзакциямен
жасалған өзгерістерді бекітеді және оқшаулауды алады. Транзакцияның
қандайда бір операторлары сәтсіз аяқталған жағдайда «кері шегінеді», деректер
алдыңғы мәндеріне ие болады, оқшаулау алынып тасталады.
8) Сақтау ортасының ресурстарын басқару.
ДҚ ЭЕМ-нің сыртқы жадында орналасады. Жұмыс жасау кезінде ДҚ
жаңа деректер енгізіледі (жадыдан орын алынады) және деректер жойылады
(жады босайды). ДҚБЖ жаңа деректер үшін жады ресурстарын бөледі, босаған
жадыларды қайта бөледі, сыртқы жадыға сұраныс кезектерін енгізуді
ұйымдастырады және т.с.с.

16
9) Жүйелік қызметкерлердің қызметтерін қолдау.
Деректер қорын пайдалану кезінде ДҚБЖ параметрлерін өзгерту,
рұқсаттың жаңа әдісін таңдау, сақталған деректердің құрылымын өзгерту
(белгілі-бір шектерде), сонымен қатар ортақ жүйелік әрекеттер қатарын
орындау қажеттігі пайда болуы мүмкін. ДҚБЖ ДҚ қызметін қолдау үшін ДҚ
қызмет көрсететін жүйелік қызметкерлерге, ДҚ әкімшілігі деп аталатын, осы
және де басқа әрекеттерді орындау мүмкіндігін береді.
Қысқаша қорытынды. Деректер қорын басқару жүйесі ұғымы
қолданбалы бағдарламалар мен деректер қоры арасындағы интерфейс ретінде
қарастырылды. Көптеген қолданушылардың деректер қорымен өзара
әрекеттесуі есебінен шығатын, деректер қорының басқару жүйесінің негізгі
функцияларына сипаттама берілді:
1) Құрылатын деректер қорының құрылымының анықтамасы, оның
инициализациясы және бастапқы жүктемені жүргізу
2) Қолданушыларға деректермен күрделі әрекеттер жасау мүмкіндігі
берілу (қажетті деректерді іріктеу, есептеуді орындау, енгізу\шығару
интерфейсін жасақтау, визуализациялау).
3) Қолданбалы бағдарламалар және деректердің тәуелсіздігін қамтамасыз
ету (логикалық және физикалық тәуелсіздік).
4) Деректер қорының логикалық толықтығын қорғау.
5) Физикалық толықтықты қорғау.
6) Деректер қорына рұқсатқа қолданушылардың өкілдеттігін басқару.
7) Бірнеше қолданушылар жұмысын синхронизациялау.
8) Сақтау ортасының ресурстарын басқару.
9) Жүйелік қызметкерлердің қызметтерін қолдау.
3 Көпқолданушылық ДҚБЖ жүзеге асыру кезінде қолданылаты н,
әртүрлі архитектуралық шешімдер
Мақсаты: есептеуіш техникасының негізгі қасиеттерімен де, сонымен
қатар бағдарламалық қамтаманың дамуымен де байланысты, бір деректер
қорымен бірнеше қолданушылар жұмысының технологиясының негізгі
нұсқаларын көрсету.
Жоғарыда аталып өткендей, деректер қоры ұғымы әуел бастан бірнеше
қолданушылары бар көптеген есептерді шешу мүмкіндігі бар деп болжалды.
Осыған байланысты, заманауи ДҚБЖ маңызды сипаттамасы жұмыстың
көпқолданушылық технологиясының бар болуы. Осындай технологияларды
түрлі уақыт мезетінде әртүрлі жүзеге асыру есептеуіш техникасының негізгі
қасиеттерімен де, сонымен қатар бағдарламалық қамтаманың дамуымен де
байланысты. Осы технологияларға хронологиялық ретпен қысқаша сипаттама
берейік.
3.1 Орталықтандырылған архитектура
Осы технологияны қолдану кезінде деректер қоры, ДҚБЖ және
қолданбалы бағдарлама (қосымша) бір компьютерде (мэйнфреймде немесе

17
дербес компьютерде) орналасады (3.1 сурет). Ұйымдастырудың мұндай тәсілі
үшін желінің қолдауы қажет емесе және барлығы автономиялық жұмысқа
саяды. Жұмыс келесі түрде құрылған:
1) Файлдар жиыны түріндегі деректер қоры компьютердің қатты дискіде
орналасады.
2) Сол компьютерде ДҚБЖ және ДҚ жұмысқа арналған қосымшалар
орнатылған.
3) Қолданушы қосымшаны жуктейді. Қосымшамен ұсынылатын
қолданушы интерфейсін пайдалана отырып, ол ақпараттарды іріктеу\жаңарту
үшін ДҚ жүгінуді бастамшылық етеді.
4) ДҚ барлық жүгінулер ДҚБЖ арқылы жүреді, олар ДҚ физикалық
құрылымы туралы барлық мәліметтерді өз ішінде қапшықтандырады.
5) ДҚБЖ, қолданушылар сұраныстарын орындайды қамтамасыз ете
отырып (деректерге жасалатын қажетті операцияларды жүзеге асыра отырып),
деректерге жүгінуді бастамшылық етеді.
6) Нәтиже ДҚБЖ қосымшаға қайтарады.
7) Қолданушы интерфейсін қолдана отырып, қосымша сұраныстардың
орындалу нәтижесін бейнелейді.
3.1 сурет – Орталықтандырылған архитектура
Мұндай архитектура DB2, Oracle, Ingres ДҚБЖ бірінші нұсқаларында
қолданылды [3.1].
Жұмыстың көпқолданушылық технологиясы мультибағдарламалық
режиммен (бір уақыт мезетінде процессор және сыртқы құрылғылар жұмыс
жасай алады, мысалы, бір қолданушының қолданбалы бағдарламасында
сыртқы жадыдан деректерді оқу жүріп жатса, басқа қолданушының
бағдарламасы процессормен өңделіп жатады), немесе уақытты бөлу режимімен
(қолданушыларға кезекпен олардың бағдарламаларын орындау үшін уақыт
кванты бөлінеді) қамтамасыз етіледі. Мұндай технологиялар үлкен ЭЕМ-дің
(IBM-370, ЕС-1045, ЕС-1060) «үстемдігі» уақытында таралды. Бұл үлгінің
негізгі кемшілігі қолданушылар саны өскен кезде өнімділіктің күрт төмендеуі
болып табылады.

18
3.2 Желісі және файлдық сервері бар технология («файл-сервер»
архитектурасы)
Есептердің қиындығының жоғарлауы, дербес коспьютерлердің және
локальды есептеуіш желілердің пайда болуы жаңа файл-сервер
архитектурасының пайда болуының алғышарты болып табылды. Желілік
рұқсаты бар деректер қорының бұл архитектурасы, деректер қорының
файлдары сақталатын, бөлінген сервер ретінде компьютерлердің біреуінің
тағайындалады деп болжайды [3.2]. Қолданушылар сұранысына сәйкес файл-
серверден файлдар, деректерді өңдеудің негізгі бөлігі жүзеге асатын,
қолданушылардың жұмыс бекеттеріне беріледі. Орталық сервер, деректердің
өзін өңдеуге қатыспай, негізінен тек файлдарды сақтаушы қызметін атқарады.
(3.2 сурет).
3.2 сурет – «Файл-сервер» архитектурасы
Жұмыс келесі түрде тұрғызылған:
1) Деректер қоры файлдар жиыны түрінде арнайы бөлінген компьютердің
(файлдық сервер) қатты дискісінде орналасады.
2) Клиенттік компьютерлерден тұратын, локальдық желі болады, олардың
әр қайсысында ДҚБЖ және ДҚ жұмыс жасайтын қосымшалар орнатылған.
3) Клиенттік компьютерлердің әр қайсысына қолданушылардың
қосымшаларды жүктеу мүмкіндігі бар. Қосымшамен ұсынылған қолданушылық
интерфейстерді пайдалана отырып, ол ДҚ жүгінуді ақпаратты
сұрыптауға\жаңартуға бастамшылық етеді.
4) ДҚ барлық жүгінулер ДҚБЖ арқылы жүреді, ол өзінің ішінде, файлдық
серверде орналасқан, ДҚ физикалық құрылымы туралы барлық мәліметтерді
бумаға жинайды.
5) ДҚБЖ, файлдық серверде орналасқан, деректерге жүгіну ге
бастамшылық етеді, соның нәтижесінде ДҚ файлдарының бір бөлігінің
клиенттік компьютерде көшірмесі алынады және өңделеді, ол қолданушының

19
сұранысын қамтамасыз етеді (деректерге жасалатын қажетті операциялар
жүзеге асады).
6) Қажет болған кезде (деректердің өзгерген жағдайында) деректер ДҚ
жаңарту мақсатымен файлдық серверге кері қайтады.
7) Нәтижесін ДҚБЖ қосымшаға қайтарады.
8) Қолданушы интерфейсін қолдана отырып, қосымша сұраныстардың
орындалу нәтижесін бейнелейді.
«Файл-сервер» архитектурасының шеңберінде күнделікті қажетті ДҚБЖ
деп аталатын, мысалы, dBase және Microsoft Access секілді, атақты бірінші
нұсқаларын орындалды.
[3.2] әдебиеттерде бұл архитектураның келесі негізгі кемшіліктері
көрсетіледі:
1) Бір деректерге бірдей уақыт мезетінде көптеген қолданушылардың
жүгінуінен жұмыс өнімділігі кенет төмендейді, себебі деректермен жұмыс
жасап отырған қолданушы жұмысын аяқтағанға дейін күту қажет. Кері
жағдайда, бір қолданушылармен жасалған, басқа қолданушылармен
өзгертілген, өзгертулер өшірілуі мүмкін.
2) ДҚ рұқсат кезіндегі барлық ауыртпалық клиент қосымшасына түседі,
себебі кестедегі ақпаратты іріктеуге сұранысты беру кезінде ДҚ барлық
кестесінің көшірмесі клиенттік машинаға алынады және іріктеу клиентте
жүзеге асады. Осылайша, клиенттік компьютер және желі ресурстары тиімсіз
жұмсалады. Нәтижесінде желілік трафик өседі және қолданушы компьютерінің
аппараттық қуаттылығына талап жоғарылайды.
3) Ережеге сәйкес, жеке жазбалармен жұмысқа бағытталған,
навигациялық амал қолданылады.
4) Файл-сервердегі ДҚ, тікелей аспаптық құралдардан тұратын (мысалы,
Paradox және dBase файлдарына арналған Borland фирмасының Database
Desktop утелиттерінен), қосымшаларға тоқтамай, жеке кестелерге өзгерістер
енгізу әлдеқайда жеңілдеу; мұндай мүмкіншілік, іс жүзінде ДҚБЖ беректер
қоры физикалық ұғымға қарағанда логикалық ұғымға жақын, жағдайымен
жеңілденеді, себебі ДҚ деп, дисктегі жеке каталогта бірге жүретін, жеке
кестелер жиынын түсінеміз. Осының барлығы, қымқыру және зиян келтіру
тұрғысынанда және қате өзгерістер енгізу тұрғысынанда қауіпсіздік деңгейінің
өте төмендігі туралы айтуға мүмкіндік береді.
5) Транзакцияның жеткіліксіз дамыған аппараты бір жазбаға бір уақыт
мезетінде өзгерістер енгізу кезінде ақпараттың мағыналық және сілтемелік
тұтастығының бұзылуындағы ықтимал қате көзінің қызметін атқарады.
3.3 «Клиент – сервер» технологиясы
«Клиент – сервер» технологиясын қолдану бір желіге біріктірілген,
олардың біреуі ерекше басқарушы қызметін атқаратын (желі сервері болып
табылатын), біршама компьютерлер санын талап етеді.
Демек, «клиент – сервер» архитектурасы қосымша қызметтерін
қолданушы (клиент деп аталатын) және сервер қызметі деп бөледі. Клиент

20
қосымшасы, реляциялық ДҚ әлемінде өндірістік стандарт болып табылатын,
құрылымдық SQL (Structured Query Language) сұраныс тілінде, ДҚ орналасқан,
серверге сұраныстарды құрастырады. Алшақтатылған сервер сұранысты
қабылдайды және ДҚ оны жаңа мекен-жайға жібереді. SQL-сервер –
алшақтатылған деректер қорын басқаратын, арнайы бағдарлама. SQL-сервер
сұранысты түсіндіруін, деректер қорында оның орындалуын, сұранысты
орындауда нәтиженің құрастырылуын және оның клиент -қосымшасына
берілуін қамтамасыз етеді. Сонымен бірге клиенттік компьютер ресурстары
сұраныстардың физикалық орындалуына қатыспайды; клиенттік компьютер тек
сұранысты серверлік ДҚ жібереді және нәтижесін алады, содан кейін оны
қажетті түрде түсіндіріп, қолданушыға ұсынады. Клиенттік қосымшаға
сұраныстың орындалуының нәтижесі жіберілетіндіктен, желі бойынша тек
клиенттке қажетті деректер ғана жүреді. Нәтижесінде желіге түсетін ауырпалық
жеңілдейді. Сұраныстың орындалуы, деректер сақталатын жерде
жүретіндіктен, үлкен деректер пакетін тасымалдау қажеттілігі жоқ. Сонымен
қатар, SQL-сервер, егер ол мүмкін болса, азғантай уақыт мезетінде азғантай
шығынмен алынғын сұранысты оңтайландырады [3.2,3.3]. Жүйе архитектурасы
3.3 суретте келтірілген.
Осының барлығы жүйенің жылдамдығын көтереді және сұраныс
нәтижесін күту уақытын төмендетеді. Сервермен сұранысты орындау кезінде
деректер қауіпсіздігінің деңгейі де жоғарылайды, себебі деректердің
толықтығының ережесі сервердегі деректер қорында анықталады және осы ДҚ
қолданатын, барлық қосымшалар үшін бір болып табылады. Осылайша, бірдей
деректерді бір уақыт мезетінде әртүрлі қолданушылармен өзгерту мүмкіндігін
болдырмау жоққа шығарылады және апаттық жағдаймен аяқталған, ДҚ
өзгертулер енгізу кезінде бастапқы мәндерге кейін шегіну мүмкіндігі
ұсынылады [3.2, 3.3].
3.3 сурет – «Клиент – сервер» архитектурасы

21
Сонымен, нәтижесінде жұмыс келесі түрде тұрғызылды:
1) Файлдар жиыны түріндегі деректер қоры арнайы бөлінген
компьютердің (желі серверінің) қатты дискісінде болады.
2) ДҚБЖ де желі серверінде орналасады.
3) Клиенттік компьютерлерден тұратын, локальды желі болады, олардың
әрқайсысында ДҚ жұмыс жасауға арналған қосымшалар орнатылған.
4) Клиенттік компьютерлердің әрқайсысында қо лданушыларға
қосымшаларды жүктеу мүмкіндігі бар. Қосымшамен ұсынылған қолданушы
интерфейсін қолдана отырып, ақпараттарды іріктеу\жаңарту үшін, серверде
орналасқан, ДҚБЖ жүгінуді түсіндіреді, яғни клиенттен серверге желі бойынша
тек сұраныс мәтіндері ғана беріледі.
5) ДҚБЖ өз ішінде, серверде орналасқан, ДҚ физикалық құрылымы
туралы барлық мағұлматтарды оқшаулайды.
6) Серверде жатқан деректерге жүгінулерді бастамшылық етеді,
нәтижесінде серверде деректердің барлық өңдеуі жүзеге асады және тек
сұраныстың орындалу нәтижесінің клиенттік компьютерге көшірмесі алынады.
Осылайша, ДҚБЖ қосымшаға нәтижені қайтарады.
7) Қолданушы интерфейсін қолдана отырып, қосымша сұраныстарды
орындау нәтижесін бейнелейді.
8) Сервер мен клиенттер арасындағы функцияларды шектеу қалай
болатынын қарастырайық.
9) Клиент-қосымшасының функциялары:
- серверге сұраныстарды жіберу;
- серверден алынған, сұраныс нәтижелерін түсіндіру;
- нәтижелерді біршама формада (қолданушы интерфейсі)
қолданушыларға ұсыну.
10) Серверлік бөліктің функциялары:
- клиент-қосымшасынан сұраныстарды қабылдау.
- сұраныстарды түсіндіру.
- ДҚ сұраныстарды тиімдеу және орындау.
- нәтижелерді клиент-қосымшасына жіберу.
- қауіпсіздік жүйесін қамтамасыз ету және рұқсатты шектеу.
- ДҚ толықтығын басқару.
- жұмыстың көп қолданушылық режимінің тұрақтығын жүзеге асыру.
«Клиент–сервер» архитектурасында «өндірістік» деп аталатын ДҚБЖ
жұмыс жасайды. Олар өндірістік деп, тек осы кластың ДҚБЖ ғана орташа
көлемдегі және ірі көлемдегі мекемелердің, ұйымдардың, банктердің
ақпараттық жүйе жұмысын қамтамасыз ете алатын болғандықтан аталады.
Өндірістік ДҚБЖ қатарына MS SQL Server, Oracle, Gupta, Informix, Sybase,
DB2, InterBase және т.б. жатады [[3.2]].
Ережеге сәйкес, SQL-сервер жеке қызметкермен немесе қызметкерлер
тобымен (SQL-сервер әкімшіліктері) қызмет көрсетіледі. Олар деректер
қорының физикалық сипаттамаларын басқарады, тиімділікті, баптауларды және
ДҚ түрлі компоненттерінің қайта анықталуын жүргізеді, жаңа ДҚ құрады,
барларын өзгертеді және т.б., сонымен қатар түрлі қолданушыларға айрықша

22
құқықтар береді (нақты ДҚ, SQL-серверге белгілі-бір деңгейдегі рұқсатқа
рұқсат береді) [[3.2]].
Берілген архитекетураның "файл-сервер" архитектурасымен
салыстырғандағы негізгі жетістіктерін қарастырайық:
1) Желілік трафик барынша кішірейеді.
2) Клиенттік қосымшалардың күрделілігі азаяды (ауыртпалықтың үлкен
бөлігі серверлік бөлікке түседі), демек, клиенттік компьютерлердің аппараттық
қуаттығына талап төмендейді.
3) Арнайы бағдарламалық құралдың – SQL-сервердің – бар болуы
жобалық және бағдарламалаушылық есептің маңызды бөлігінің шешіліп
тұруына алып келеді.
4) Демек ДҚ толықтығы мен қауіпсіздігі де жоғарылайды.
Кемшіліктер қатарына аппаратық және бағдарламалық жасақтамаларға
жоғары финанстық шығындарды, сонымен қатар, әртүрлі орынд арда
орналасқан клиенттік компьютерлер снының көбі барлық клиенттік -
компьютерлерде клиенттік қосымшаларды уақытылы жаңартулардың белгілі-
бір қиындықтарын тудыруды жатқызуға болады. Дегенмен, «клиент – сервер»
архитектурасы өзін тәжірибеде жақсы ұсынды, қазіргі уақытта, осы
архитектураға сәйкес тұрғызылған, ДҚ көптеген саны бар және жұмыс істейді.
3.4 Үшбуынды (көпбуынды) «клиент – сервер» архитектурасы
Үшбуынды (көпбуынды) архитектура (N-tier немесе multi-tier). «клиент
– сервер» технологиясының болашақтағы жетілдіруін білдіреді. «Клиент –
сервер» архитектурасын қарастырып, оны 2-буынды: бірінші буын – клиенттік
қосымша, екінші буын – ДҚ сервері + ДҚ өзі, болып табылады деп
қортындылауға болады. Үшбуынды архитектурада, бұрын клиенттік
қосымшаға кіретін, барлық бизнес-логика (іскерлік логика), қосымша сервері
деп аталатын, жеке буынға бөлінеді. Сонымен бірге клиенттік қосымша болып
тек қолданушы интерфейсі ғана қалады. Осылай, жоғарыдағы мысалда
сипатталған клиенттік қосымша ретінде Web-браузер шығады.
Үшбуынды артхитектураны қолданған кезде не жақсарады? Енді бизнес-
логиканы өзгерткен кезде клиенттік қосымшаны өзгертудің және барлық
қолданушыларда оларды жаңартудың қажеттілігі жоқ. Сонымен қатар,
қолданушы аппаратурасына талап максималды түрде төмендейді.
Сонымен, нәтижесінде жұмыс келесі түрде тұрғызылады:
1) Файлдар жиыны түріндегі деректер қоры арнайы бөлінген
компьютердің (желі серверінің) қатты дискісінде болады.
2) ДҚБЖ де желі серверінде орналасады.
3) Арнайы бөлінген қосымша сервері болады, онда іскерлік талдаудың
(бизнес-логикның) бағдарламалық жасақтамасы (БЖ) орналасады [3.1].
4) Көптеген клиенттк компьютерлер болады, олардың әрқайсысында,
қолданушы интерфейсін жүзеге асыратын, «жіңішке клиент» деп аталатын
клиенттік қосымша орнатылған.

23
5) Клиенттік компьютерлердің әрқайсысын ан қолданушылардың
қосымшаны – жіңішке клиентті жүктеу мүмкіндігі бар. Қосымшамен
ұсынылатын қолданушы интерфейсін қолдана отырып, қосымша серверінде
орналасқан, ол іскерлік талдаудың БЖ жүгінуді түсіндіреді.
6) Қосымша сервері қолданушы талабын талдайды және ДҚ сұранысты
құрастырады. Сұхбат үшін арнайы сұраныс тілі SQL қолданылады, яғни желі
бойынша қосымша серверінен ДҚ серверіне тек сұраныс мәтіні ғана жіберіледі.
7) ДҚБЖ өз ішінде, серверде орналасқан, ДҚ физикалық құрылымы
туралы барлық мағұлматтарды оқшаулайды.
8) Серверде жатқан деректерге жүгінулерді бастамшылық етеді,
нәтижесінде сұраныстың орындалу нәтижесінің клиенттік компьютерге
көшірмесі алынады.
9) Қосымша сервері нәтижені клиенттік қосымшаға (қолданушыға)
қайтарады.
10) Қолданушы интерфейсін қолдана отырып, қосымша сұраныстарды
орындау нәтижесін бейнелейді.
3.5 ДҚБЖ қысқаша шолу
Көптеген авторлар ДҚБЖ екі үлкен категорияға жіктейді: «қажетті» және
«серверлік».
3.5.1 Қажетті ДҚБЖ.
Қажетті ДҚБЖ салыстырмалы кішігірім есептер (өңделетін деректердің
көлемі азғантай, қолданушылар саны аз) үшін қолданылады. Осыны есепке ала
отырып, берілген ДҚБЖ архитектурасы салыстырмалы түрде қарапайым, жеке
жағдайда файл-сервер режимінде жұмыс істейді, ДҚБЖ функцияларының
барлығын ұстана бермейді (мысалы, транзакция журналы жүргізілмейді,
бұзылулардан кейін деректер қорының автоматты түрде қалпына келу
мүмкіндігі жоқ және т.с.с.). Дегенмен, мұндай жүйелердің қолданылу аясы
жеткілікті кең. Ең алдымен, бұл мемлекеттік (муниципалды) мекемелер, білім
беру саласы, қызмет көрсету саласы, кіші және орташа бизнес. Онда пайда
болатын есептердің ерекшелігі мынада, деректер көлемі апатты үлкен болып
табылмайды, жаңарту жиіліктері ондай жоғары болмайды, ұйым аймақтық
әдетте бір кішігірім ғимаратта орналасады, қолданушылар саны 10–15 адам
арасында болады. Мұндай шарттарда қажетті ақпараттық жүйелерді басқару
үшін ДҚБЖ қолдану әбден орынды болып табылады, және олар табысты
қолданылуда.
Ең бірінші ДҚБЖ бірі, әртүрлі фирмалармен жасақталған, dBase-
үйлесімді бағдарламалық жүйе. Бірінші кең таралған мұндай түрдегі жүйе
dBase III – PLUS (фирма Achton-Tate). Дамыған бағдарламалау тілі, ыңғайлы
интерфейс, бұқаралық қолданушылар үшін қол жетімділігі жүйенің кең
көлемде таралуына себепші болды. Сонымен бірге жүйенің интерпретация
режимінде жұмыс жасауы орындалу сатысында төмен өнімділікке себепші
болды. Бұл, dBase III – PLUS жүйесіне жақын, жаңа жүйе-компиляторларының

24
пайда болуына алып келді: Clipper (фирма Nantucket Inc.), FoxPro (фирма Fox
Software), FoxBase+ (фирма Fox Software), Visual FoxPro (фирма Microsoft). Бір
уақытта PARADOX (фирма Borland International) ДҚБЖ жеткілікті кең
қолданылды.
Соңғы жылдары, Microsoft Office(фирма Microsoft) пакетінің толық
нұсқасына кіретін, Microsoft Access деректер қорын басқару жүйесі кең
таралымға ие болды.
3.5.2 Серверлік ДҚБЖ.
Ірі ұйымдар үшін жағдай қағида тұрғысынан өзгереді. Онда файл-
серверлік технологияны қолдану жоғарыда сипатталған себептер бойынша
қанағаттанарлықсыз болып табылады. Сондықтан автоматизация үшін күрестің
алдыңғы қатарына серверлік ДҚБЖ деп аталатындар шығады.
Деректерді өңдеу және сақтау сияқты жүйелерді негізгі өндірушілер
келесі 3 корпорация болып табылады: Oracle, Microsoft және IBM. Сәйкес
жүйелердің сату көлемінің қатынас диаграммасы (IDC Report, мамыр 2006)
келтірілген (3.4 сурет).
3.4 сурет – Әлемдегі деректерді сақтау жүйесінің БЖ сату
Мұнда айрықша кең таралған клиент-серверлік жүйелер сәйкесінше
Oracle (жасақтаушы компания Oracle), MS SQL Server (жасақтаушы компания
Microsoft), DB2, Informix Dynamic Server (жасақтаушы компания IBM) болып
табылады.
Осы жүйелерге қысқаша сипаттама берейік.
MS SQL Server
Қазіргі уақытта жүйенің бірнеше нұсқалары жасақталған: MS SQL Server-
2000, MS SQL Server -2005, MS SQL Server-2008. Жүйе туралы ақпарат
келтірейік MS SQL Server -2008 Microsoft серверінен
(http://www.microsoft.com/rus/SQL/2008/default.mspx).
Microsoft SQL Server ТМ2008 – бұл, электронды коммерцияның
масштабталған шешімдерін, бизнес-қосымшаларды және деректердің сақтау
орындарын тез құруға арналған, деректер қоры және теректерді талдау
аймағындағы аяқталған ұсыныс. Бұл бір уақытта, ең жоғары талаптарға жауап
беретін, масштабтауды қамтамасыз ете отырып, осы шешімдерді нарыққа шығу
уақытын барынша қысқартуға мүмкіндік береді. В SQL Server XML тілі және
HTTP хаттамалары, жүктемелерді бөлуге мүмкіндік беретін және үздіксіз
жұмысты қамтамасыз ететін, жылдамдықты және қолжетімділікті көтеру

25
құралдары, иеліктің біріккен құнын төмендететін, күйге келтірулер мен
басқаруды жақсартуға арналған функциялар қосылған.
Microsoft Office-пен тығыз біріктірілген, SQL Server 2008 бизнес-
талдауының платформасы MS Excel және MS Word таныс интерфейсі арқылы
қажетті бизнес-ақпаратқа рұқсатты аша отырып, сіздің компанияңыздың
барлық бизнес-бөлімшелерінің жұмыс үрдісіне бизнес-талдауының қуатты
мүмкіндіктерін ендіру үшін дамыған кеңейтілген инфрақұрылымды ұсынады.
MS SQL Server-2008, барлық жүйелер мен қосымшалардағы
ақпараттарды біріктіретін, сіздің компания бизнесінің бір кешенді суретін алуға
мүмкіндік беретін, деректердің бірлескен сақтау орнын құру және олармен
жұмысты қолдайды.
MS SQL Server-2008 жауапты және қатаң бизнес-қосымшалар үшін
ауқымды және жоғары өнімділікті "деректер процессорын" ұсынады, бұл,
серверлік инфрақұрылымды басқару бойынша кеңейтілген мүмкіндіктер
есебінен иеленудің біріккен құнын төмендете отырып, кімге сенімділік пен
қауіпсіздіктің аса маңызды деңгейі қажет соларға арналған.
MS SQL Server-2008 жасақтаушыларға, веб қызметтермен жұмыс
жасайтын құралдарды, деректерге қол жеткізудің иновациялық
технологияларын, яғни кез келген типтегі және форматтағы деректермен тиімді
жұмыс жасау үшін қажеттілердің барлығын қоса отырып, бағдарламалаудың
дамыған, ыңғайлы және қызметтік ортасын ұсынады.
MS SQL Server – 2008 жеке көріністері «Microsoft SQL Server 2008
мысалында заманауи ДҚБЖ құрылымы » және «Деректер қорының даму
бағыты» 14 дәрістерінде сипатталады.
Oracle.
Қазіргі уақытта жүйенің бірнеше нұсқалары жасақталған, олардың
әрқайсысы толық өнімдер тізбегінен тұрады, мысалы Oracle 8, Oracle 9i, Oracle
10g.
Өнімдердің сәйкес тізбектері дұрысын айтқанда ДҚБЖ (мысалы Oracle
Database 10g, Oracle Database 11g), және деректерді жасақтау мен талдаудың
құралдарынан да тұрады.
Oracle серверінен жүйе туралы ақпараттар келтірейік
http://www.oracle.com/global/ru/mid/oracle_products/database.html).
Oracle қолдануға кешенді, ашық, қолжетімді және ыңғайлы
технологиялық шешімдерді ұсынады. Дайын пакеттелген шешімдер автоматты
түрде өзінің құнына деректер қорын, қосымшалар серверін, интеграциялық
платформаны, аналитикалық құрылғыларды және құрылымсыз деректерді
басқаруды қосады. Ауқымданған бизнес-қосымша Oracle оңай мекеменің ИТ-
инфрақұрылымымен IT инвестицияға салынғандарды жоғалтпай біріктірілуі
мүмкін.
Oracle Database 11g ДҚБЖ автоматтандырылған әкімшілендіру
есептерінің есебінен жақсартылған сипаттамаларды және қауіпсіздік бойынша
мүмкіндіктер саласындағы жақсыларды қамтамасыз етуді және ақпараттарды
қорғау аймағында нормативті-құқықты акттерге сәйкестігін қамтамасыз етеді.
Автоматтандырудың, өздігінен диагноз қоюдың және басқарудың көптеген

26
функциялары пайда болды. Жүйе сипаттамалары арасынан бөлінген кестелер
мен компрессияларды қолданып үлкен көлемді деректерді басқаруды,
деректерді тиімді қорғауды, толық қайта қалпына келу мүмкіндігін, бизнес-
үрдісте медиа-контенттің геофизикалық деректерін интегралдау мүмкіндігін
атап өтуге болады.
IBM компаниясы деректер қорының серверлері.
Қазіргі уақытта, ДҚБЖ және деректерді жасақтау мен талдаудың
құралдарынан тұратын (DB2 Universal Database DB2 Personal Edition, DB2
Enterprise 9 және т.б., сонымен қатар Informix Dynamic Server, Informix Dynamic
Server Express, Informix Extended Parallel Server және т.б.), келесі өнімдердің
тізбектері жасақталған: DB2 және Informix.
Серверден осындай жүйелердің бөлігі туралы ақпараттарды келтірейік
(http://www-01.ibm.com/software/ru/data/?pgel=ibmhzn).
Деректер қорының әмбебап сервері Universal Database – бұл ауқымданған,
Intel процессорындағы дербес компьютерлер мен серверлерден Unix-ке дейінгі
жүйелерде, бірпроцессорлық жүйеден симметриялық көппроцессорлық жүйеге
дейін (SMP) және жаппай қатарлас жүйеге дейін (MPP), AS/400 хостында және
мейнфреймдерде жұмыс жасайтын, мультимедиялық және Web интегралданған
қолдауы бар деректер қорын басқарудың обьектті-реляциялық жүйе. DB2
Universal Database өзінде on-line режимінде транзакцияны өңдеу жүйесінің
жоғарғы өнімділігін, объектті-реляциялық кеңейтулерді, аса үлкен деректер
қорын қатар өңдеу және қолдау мүмкіндігі бар тиімділеудің жетілдірілген
құралдарын біріктіреді. DB2 Universal Database сонымен қатар басқа деректер
қорын басқару жүйесімен жасақталған, мысалы Oracle, Microsoft, Sybase және
Informix сияқты өзінің қосымшалар қорына ауыстыруды жеңілдетуге арналған
жаңа кірістірілген құралдары бар. Бұданда басқа, DB2 Universal Database өзіне
нақты уақытта аналитикалық өңдеуді қолдайтын қосымша құралдарды (OLAP)
және шешім қабылдауды қолдау жүйелерін, қолдануда көптеген қарапайым
кеңейтулерді (DB2 extenders) қосады. DB2 Universal Database көптеген негізгі
платформаларда қол жетімді, бұл тапсырыс берушілерге қажетті
ыңғайлылықты береді.
Жоғарыда аталып өткен шетелдік жүйелерден басқа отандық
жасақтамаларды да – НИКА ДҚБЖ атап өтейік, Советтер Одағындағы кең
тарлған ЕС ЭЕМ үшін ИНЕС ДҚБЖ мұрагері.
Қысқаша қорытынды. Дәрісте көпқолданушылық ДҚБЖ жүзеге асыруда
қолданылатын, әртүрлі архитектуралық шешімдер қарастырылды.
Орталықтандырылған архитектура. Желі және файлдық сервер технологиясы
(«файл-сервер» архитектурасы). «Клиент – сервер» архитектурасы (есептеудің
бөлінген үлгісі). Үшбуынды (көпбуынды) клиент – сервер архитектурасы.
Заманауи ДҚБЖ шолу жүргізілді (қажетті ДҚБЖ, серверлік ДҚБЖ).
4 Деректер қорында деректер туралы әртүрлі ұсыныстар. Деректер
қорын жобалаудың негізгі сатылары

27
Мақсаты: деректермен жұмыс жасайтын, әртүрлі тұлға топтарындағы
деректер туралы (түрлі үлгідегі) әртүрлі ұсыныстардың бар болуын көрсету.
Осы ұсыныстардың бейнесін деректер қорының үш деңгейлі архитектурасында
(сыртқы деңгей, концептуальды деңгей, ішкі деңгей) қарастыру, үш деңгейлі
архитектураның жетістіктерін құрастыру. Жоғарыда көрсетілген үлгілерді
тұрғызудың үрдісі ретінде деректер қорын жобалаудың негізгі сатыларын
айрықшалап көрсету.
4.1 Деректер қорында деректер туралы әртүрлі ұсыныстар
Деректер қорын құру, әртүрлі қолданушылардың бірнеше қолданбалы
есептерін шешу үшін арналған, деректердің интеграцияларын болжайды.
Демек, деректерді иентеграциялау кезінде, деректер туралы ұсынысына және
олардың арасындағы байланысқа негізделген, әр қолданушының деректерге
қойылатын талабы ескерілуі қажет. Әрі қарай бұл талаптар бір деректер қорын
тұрғызу үшін қызмет ететін, бір ұсынысқа біріктірілуі қажет. (4.1 сурет).
Деректер туралы барлық қолданушылардың ұсынысын жинақтау ДҚ
концептуальды үлгісі (сұлбасы) деп аталады. Концептуальды үлгі логикалық
байланыс есебінен пәндік аймақтың ақпараттық сипаттамасын білдіреді,
сондықтан оны кейде инфологиялық (информациялы-логикалық) үлгі деп те
атайды. Үлгіде ЭЕМ-мен, ЭЕМ жадымен, ЭЕМ жадында деректерді
орналастырумен байланысты қандай да бір ұғымдар болмайды және мәні
бойынша, бұл үлгі тек пәндік аймаққа арналған.
4. 1 сурет – Деректер туралы қолданушы ұсыныстарын жинақтау
Жоғарыда аталып өткендей, деректер қорын құру және онымен жұмыс
жасау үшін деректер қорын басқару жүйесі қолданылады. Әр нақты ДҚБЖ,
ДҚБЖ деректерінің үлгісі деп аталатын, нақты деректер түрін ұстанады
(жазбалар мен қатынастар форматы).
Деректер қорын жасақтаудың келесі сатысы нақты ДҚБЖ деректерінің
үлгісінің көмегімен үлгіні ұсынуды таңдау. Осындай жолмен алынған
концесптуальды үлгінің ұсынысы ДҚ логикалық үлгісі деп аталады. Немесе
басқаша сөзбен айтқанда, логикалық үлгі – бұл, нақты ДҚБЖ тілінде
айрықшаландырылған, концептуальды сұлба. Логикалық үлгі деректерді және

28
деректер элементтерін олардың мазмұнына және сақтау ортасына тәуелсіз
ұсынады. Әрі қарай жүйені жасақтаушы ДҚБЖ құралдарыменн ДҚ алынған
логикалық үлгісін ЭЕМ жадысында бейнелейді және рұқсат әдісін анықтайды.
ЭЕМ жадындағы алынған деректер ұсынысы ішкі ұсыныс немесе сақтау
құрылымы деп аталады. Қолданбалы бағдарламалар логикалық үлгілермен
жұмыс жасайды, әр қолданушыға, оның пәндік аймағы туралы ұсынысын
бейнелейтін, осы логикалық үлгінің ішкі жиындары (ішкісұлба) беріледі. Әр
қолданбалы бағдарлама өзіне қажетті деректерді ғана "көреді" және өңдейді.
Қолданбалы бағдарламалармен (қолданушылармен) деректердің сәйкес
«көрінуі» сыртқы ұсыныстарды білдіреді. Жоғарыда көрсетілген үлгілердің
арасындағы өзара байланыс бейнеленген (4.2 сурет).
4.2 сурет – ДҚ деректер туралы әртүрлі ұсыныстар
Берілген сұлбада деректерді сипаттаудың үш әртүрлі деңгейі (сыртқы,
концептуальды, ішкі) айрықшаланған. Бұл үш деңгей, 1975 жылы АҚШ
стандартизациясының Ұлттық институтымен (American National Standards
Institute – ANSI) Стандарттарды және SPARC (Standards Planning and
Requirements Committee) нормасын жоспарлау комитетімен ұсынылған,
ANSI/SPARC үшдеңгейлі архитектурасын құрайды. Бұл архитектураның негізгі
мақсаты деректер қорында қолданушылардың деректер туралы ұсынысын
олардың физикалық ұсынысынан ажыратудан тұрады. Деректер туралы мұндай
ұсыныстарды қолдану ДҚ қойылатын негізгі талаптарды – бағдарламалар мен
деректердің тәуелсіздігін орындауды қамтамасыз етуге мүмкіндік береді.
Қолданбалы бағдарламаларды өзгерту кезінде сәйкес сыртқы ұсыныстар
өзгеруі мүмкін, бірақ деректердің логикалық үлгісі өзгермейді және демек,
басқа қолданбалы бағдарламалар өзгермейді. Ішкі ұсынысты өзгерту кезінде

29
(сақтау құрылымы) логикалық үлгі өзгермейді, демек, қолданбалы
бағдарламаларда өзгермейді.
Сәйкес ұсыныстарды қолдану сонымен қатар, деректер қорымен жұмыс
жасайтын, әртүрлі тұлғалардың өкілеттілігін нақты шектеуге мүмкіндік береді.
Сәйкес ұсыныстар деректер қорының «көрінуін» олармен жұмыс
жасайтын түрлі тұлғалармен сипаттауға мүмкіндік береді:
- сыртқы ұсыныс – пәндік аймақ маманының (қолданушы) ұсынысы;
- ішкі ұсыныс және логикалық үлгі – қолданушы үшін нақты қосымша
жасақтайтын, қолданбалы бағдарламалаушының ұсынысы;
- логикалық үлгі және ішкі ұсыныс – деректер қорын әкімшілендіретін,
жүйелік бағдарламалаушы ұсынысы.
4.2 Деректер қорын жобалаудың негізгі сатылары
Деректерді (деректер қорын) жобалау зерттелетін на қты өмір
құбылыстарын ЭЕМ жадында деректер түрінде тізбектей бейнелеу үрдісін
білдіреді (4.3 сурет).
4.3 сурет – Жобалаудың ортақ сұлбасы
Жүргізілетін зерттеулер үшін мүдделерді ұсынатын, нақты өмірдің
нақты құбылыстарын пәндік аймақ деп атаймыз.
Деректер қорын жобалау (үлгілеу) көп сатылы үрдіс болып табылады.
Бұл үрдістің негізгі сатылары 4.4 суретте келтірілкен.

30
4.4 сурет – Деректер қорын жобалау сатылары
Берілген суретте бейнеленген, әрекеттерді нақтырақ келесі дәрістерде
қарастыратын боламыз. Мұнда сәйкес блоктарға қысқаша түсініктемелер
береміз.
1,2 блоктарда негізгі назарды «дерексіздендіру» (абстрагирование) сөзіне
бөлуіміз қажет. Деректер қорын жобалауды, қолданушымен өңделетін, нақты
құжат бойынша емес және осы құжатпен жүргізілетін қолданушының әрекетіне
емес, ал жалпыланған (абстракты) құжат үлгісімен және жалпыланған
(абстракты) қолданушы әрекетімен жүргізу қажет. Мысалы, нақты жолдар және
бағандар саны бар құжаттарды емес, ал n және m дерексіз сандары бар
құжаттарды; нақты өрістер бойынша (мысалы, тегі) талап етіп отырған
қолданушының іздеуінің орнына кез келген өріс бойынша іздеуді және т.б.
қарастыру қажет. Бұл өте маңызды, себебі нақты құжат формалары және
қолданушы әрекеттері олармен жұмыс кезінде жеткілікті жиі өзгеріп тұрады.
Бұл жағдайда нақты құжат формалары және қолданушы әрекеттері бойынша

Бұл курс Қазақстан Республикасы Оқу-ағарту министрлігімен келісілген