Қашықтан деректер базасын әзірлеу және пайдалану
Э.В. Фуфаев
Жазылымсыз режим: 20-беттен кейін жазылым беті ашылады, әрі қарай әр 10 бет сайын (ең көбі 5 рет).
Басқарудың әртүрлі міндеттеріне арналған ақпараттық жүйелерді құру кезінде қашықтан деректер базасын әзірлеу және пайдалану бойынша теориялық негіздер мен практикалық ұсынымдар берілген. Қашықтан деректер базасына қолжетімділіктің қазіргі заманғы технологиялары қарастырылған. Орта кәсіптік білім ...
КӘСІБИ БІЛІМ БЕРУ
Э. В. ФУФАЕВ, Д.Э. ФУФАЕВ
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН ӘЗІРЛЕУ ЖӘНЕ ПАЙДАЛАНУ
ОҚУЛЫҚ
230105 «Есептеу техникасын және автоматтандырылған жүйелерді бағдарламалық қамтамасыз ету» мамандығы бойынша орта кәсіптік білім беру студенттеріне арналған оқулық ретінде «Білім беруді дамыту федералдық институты» федералдық мемлекеттік мекемесі ұсынған
Рецензияны тіркеу №583 28 шілде 2009 жылғы. ФММ «БДФИ»
4-ші басылым, стереотипті
ACADEMA
Мәскеу
«Академия» баспа орталығы
2014
ƏОЖ 621.391(075.32)
КБЖ 32.81ші723 Ф964
Бұл кітап Қазақстан Республикасының Білім жəне ғылым министрлігі жəне «Кəсіпқор» холдингі» КЕАҚ арасында жасалған шартқа сəйкес ««ТжКБ жүйесі үшін шетел əдебиетін сатып алуды жəне аударуды ұйымдастыру жөніндегі қызметтер» мемлекеттік тапсырмасын орындау аясында қазақ тіліне аударылды. Аталған кітаптың орыс тіліндегі нұсқасы Ресей Федерациясының білім беру үдерісіне қойылатын талаптардың ескерілуімен жасалды. Қазақстан Республикасының техникалық жəне кəсіптік білім беру жүйесіндегі білім беру ұйымдарының осы жағдайды ескеруі жəне оқу үдерісінде мазмұнды бөлімді (технология, материалдар жəне қажетті ақпарат) қолдануы қажет. Аударманы «Delta Consultіng Group» ЖШС жүзеге асырды, заңды мекенжайы: Астана қ., Иманов көш., 19,
«Алма-Ата» БО, 809С , телефоны: 8 (7172) 78 79 29, эл. поштасы:
іnfo@dcg.kz
Ре ц ен з ен т те р :
Мәскеу мемлекеттік ақпараттық технологиялар колледжі оқытушысы
И.А. Кумскова
; Мәскеу мемлекеттік электроника және математика институтының «Информатика және телекоммуникациялар» факультеті деканының орынбасары, доцент,
техникалық ғылым кандидаты
Д.П. Николаев
Фуфаев Э.В.
Ф964 Қашықтан деректер базасын әзірлеу және пайдалану: орта кәсіптік білім беру мемекемелерінің студенттіріне арналған оқулық / Э.В. Фуфаев, Д.Э. Фуфаев. — 4-ші шығарылым, стер.
— М. : «Академия» баспа орталығы, 2014. — 256 б.
ІSBN 978-5-4468-0467-2
Басқарудың әртүрлі міндеттеріне арналған ақпараттық жүйелерді құру кезінде қашықтан деректер базасын әзірлеу және пайдалану бойынша теориялық негіздер мен практикалық ұсынымдар берілген. Қашықтан деректер базасына қолжетімділіктің қазіргі заманғы технологиялары қарастырылған. Орта кәсіптік білім беру мекемелерінің студенттеріне арналған. Өндірісті және бизнесті басқару саласында жұмыс істейтін мамандар үшін пайдалы болуы мүмкін.
ƏОЖ 621.391(075.32)
КБЖ 32.81ші723
© Фуфаев Э.В., Фуфаев Д.Э., 2008
© «Академия» білім беру-баспа орталығы, 2008
ІSBN 978-5-4468-0467-2
© Ресімдеу. «Академия» баспа орталығы, 2008
АЛҒЫ СӨЗ
Қазіргі уақытта кез келген фирманың экономикалық қызметінің мақсаты пайда табу болып табылады. Экономикалық қызметтің тиімділігі қалай және ненің есебінен пайда табатынына, яғни тауарлар мен қызметтерге тапсырыс берушілердің қажеттіліктерін қанағаттандыру тиімділігіне байланысты. Бұл міндетті шешу ІSO 1900:2000 халықаралық стандарттар талаптарын міндетті орындаумен байланысты екені сөзсіз. Қойылған мақсатқа жету — көп жоспарлы міндет, ол фирманың барлық қызметкерлерінің шығармашылық қабілеттеріне байланысты. Егер басшыдан бастап қатардағы қызметкерге дейін өндірістік процеске әрбір қатысушы өндірістің өз бөлігінде тиімді шешім қабылдай алса ғана бұл міндетті шешуге болады.
Алғашқы реттен тиімді шешім қабылдау, дұрыс емес шешім салдарын түзету емес
— кез келген маманның басты міндеті осы, оны тиімді шешу үшін деректер базасы (ДБ) негізінде әзірленетін компьютерлік ақпараттық жүйені пайдалануға болады.
Деректер базасы ақпарат теориясы бағыттарының бірі ретінде компьютерлік ақпараттық жүйені әзірлеу әдісі және құралы болып табылады, пайдаланушыға тиімді шешімдерді қабылдау үшін қажетті деректерді алу және талдаудың тиімді әдістерін ұсынатын ерекше тәсілмен құрылымдалған файлар оның негізін құрайды. Деректер базасын әзірлеу теориясы — ғылымның салыстырмалы жас саласы, алайда бүгінгі таңда деректер базасы жасанды интеллект жүйесі, сарапшылар жүйесі, автоматтандырылған құрылымдық және технологиялық жобалау жүйесі сияқты ақпаратты өңдеудің автоматтандырылған жүйесін әзірлеудегі мұндай бағыттардың негізі болып табылады.
Оқулық алты бөлімнен тұрады. қашықтан деректер базасын SQL тілін, SQL Server2000 және СУБД Oracle жүйелерін қолданумен әзірлеу және басқару әдістері баяндалған;
ODBC, СОМ, ADO.NET, .NET FrameWork, CORBA, MІDAS
қашықтан деректер базасына қолжетімділік технологиясы.
деректер базасын тұжырымдамалық, логикалық және физикалық жобалау;
SQL тілі әмірімен кестелерді жобалау және түрлендіру технологиясы;
Mіcrosoft Access форматындағы деректер базасы жобасын SQL
Server форматына түрлендіру;
рәсімдер мен триггерлерді сақтайтын пайдаланушылар көрінісін әзірлеу баяндалған.
MS Access визуалды құралдарымен деректермен жұмысты автоматтандыру; SQL енгізілген операторларды қолдана отырып, қашықтан деректер базасын басқару бағдарламаларын әзірлеу;
қашықтан деректер базасын әзірлеуде Web-технологияларды қолдану. Осы оқулық ақпараттық технологиялардың осы саласындағы авторлардың көпжылдық жұмыс тәжірибесін, оның ішінде К.Э. Циолковский атындағы Мәскеу авиациялық технологиялық институтында – Ресей мемлекеттік технологиялық университетінде сабақ берудің 10 жылдық тәжірибесін бейнелейді.
КІРІСПЕ
Біз Mіcrosoft Access жүйесінің бірінші нұсқаларын қолдана отырып ақпараттық жүйелер құра бастаған кезде бұл деректер базасын басқару жүйесі (ДББЖ) мақсатының үстелдік ретінде ауысуы бізді таң қалдырды: миллион жазбаларды сақтау мүмкіндігі бар үстел! 1990 жылдардың соңындағы біздің алғашқы коммерциялық әзірлемелердің бірі Mіcrosoft Access 2.0 ортасында Ресейдің аяқ-киім фабрикаларына толымдайтын бұйымдарын жеткізумен айналысатын жеке фирмаға ақпараттық жүйені құруға бағытталған болатын. Бұл ретте әзірленген жүйе әртүрлі мамандардың бірлесіп пайдалануына арналған, ол үшін ODBC (Open DataBase Connectіvіty — деректерге ашық қолжетімділік) стандартының негізінде импорт, экспорт және деректерді қосу рәсімі қолданылған. Біз осы жүйенің жеке құрамдас бөліктерін қашықтан деректер базасын ұйымдастырып жергілікті желімен өзара біріккен мамандардың «жұмыс үстелдеріне» қайталадық. Қашықтан дегеніміз ақпаратқа және басқаруға қолжетімділік байланыс желісінің көмегімен жүзеге асырылатын деректер базасы.
Біз әзірлеген жүйеде байланыс желісінің көмегімен тек
ақпаратқа қолжетімділік
жүзеге асырылған, сондықтан біз оларды
қашықтан деректер базасы
деп атадық .
Бүгінгі таңда деректер базасының мынадай түсініктері бар: күнделікті, көп пайдаланушысы бар, қашықтан және үлестірілген, оларды екі топқа бөлуге болады:
бір пайдаланушысы бар
(күнделікті) және
көп пайдаланушысы бар
(қашықтан).
Осылайша, біздің
үстелдік
термині бойынша таңғалуымыз уақытынан бұрын болды. Осы жүйені жергілікті деп атауға болатын сияқты болған, алайда сол уақытта пайдаланушылардың жеке компьютерлерін бірыңғай физикалық кеңістікке біріктіретін ЖЕТ – жергілікті есептеу техникасы деген түсінік болған, ал Mіcrosoft Access бірінші нұсқалары көп пайдаланушысы бар деректер базасын ұйымдастыруға тікелей арналмаған.
Барлық баяндалғандарнан мынадай қорытынды жасауға болады.
Түсіндірме сөздіктің көмегімен осы түсініктердің анықтамаларын келтірейік:
Осылайша, қашықтан деректер базасын көп пайдаланушысы бар жүйе ретінде жобалау және пайдалану пайдаланушылар деректер базасына жүгінген кезде ақпаратты үлестірілген өңдеу қажеттілігін тұспалдайды. Пайдаланушылардың көзқарасы бойынша қашықтан деректер базасы күнделікті деректер базасы түрінде болады, оның құрамдас бөліктері кәсіпорынның жергілікті желісінің әртүрлі компьютерлерінде (тораптарында) бола алады. Бұл ретте DDB желілік құрылым ретінде қарауға болады, оның тораптары жергілікті деректер базасы түрінде болады. Сонымен, қашықтан деректер базасын құру мәселесін ақпараттық жүйе құру ретінде қарап: Қазіргі уақытта ақпараттық технологияларды жетілдіру бағыттарының бірі тек бірыңғай физикалық (компьютерлік) кеңістікті – жергілікті және глобальді есептеу жүйесін құру емес, өндірісті басқару процестерін оңтайландыруға арналған
бірыңғай ақпараттық кеңістікті
құру болып табылады. (
Өндіріс
термині дегеніміз әртүрлі мақсаттағы тауарлар мен қызметтерді құрумен (өндірумен) байланысты жеке және заңды тұлғалардың кез келген қызметі.) Басқару процестерін оңтайландырудың негізгі өлшемшарты өнімнің өз құны – тауарлар мен қызметтерді өндірумен байланысты шығындар болып табылады. Осылайша қашықтан деректер базасын әзірлеудің және пайдаланудың негізгі мақсаты өндірісті және бизнесті басқару процестерінде шығындарды төмендету үшін жағдай жасау болып табылады.
Автоматтандырылған ақпарат жүйелерін (ААЖ) әзірлеу идеологиясы оларды көп пайдаланушысы бар деп ұйымдастыру қажеттілігін болжаған. Алайда алғашқы құрылған ААЖ оған артылған үмітті ақтамады. Туындаған проблемалар аппараттық және бағдарламалық құралдардың мүмкіндіктеріне, маманның дайындық деңгейіне және серіктестердің тауарлар мен қызметтер нарығында өзара іс-қимыл жасасу сипатына негізделген. Қашықтан деректер базасын құру негізінде бірыңғай ақпараттық кеңістікті құру қажеттілігін көрсететін шынайы өмірдегі оқиғадан екі мысал келтірейік. Кәсіпорындардың бірінде әртүрлі бөлім мамандары басшылық тарапынан қандай бір үйлестірусіз өздері үшін деректер базасын құрған. Осы кәсіпорында сатып алынған технологиялық процестерді автоматтандырылған жобалау жүйесінің (АЖЖ) жұмыс істеуін қамтамасыз ету үшін бір бөлім қызметкерлері бір жыл ішінде кесетін құрал бойынша деректер базасын құрған. Алайда сол уақытта сол бөлімде мамандардың біреуі осыған ұқсас деректер базасын құрған, ол бірнеше жыл әзірленген және кәсіпорында қолданылатын кесетін құралдың барлық типін қамтыған. АЖЖ кәсіпорны сатып алған деректер базасының құрылымы кәсіпорында бар құрал бойынша база құрылымын ескерген болса, онда оларды деректерді біріктіру операциясын пайдалана отырып, оларды біріктіру бір жыл емес бірнеше минут алар еді. Қазіргі уақытта қашықтан деректер базасы бизнес-процестерді, күрделі ғылымды қажет ететін бұйымдарды жобалау, дайындау, пайдалану процестерін жетілдірудің жаңа бағытының: өнімнің бүкіл өмірлік циклін (ӨЦ) сүйемелдейтін бірыңғай ақпараттық кеңістікті құру негізін құрайды. Бұл бағыт CALS-технологиялар деп аталады.
CALS-технология мәні өнімнің бүкіл өмірлік кезеңі ішінде, оны жобалаудан бастап пайдалану мерзімі біткеннен кейін оны жоюға дейін тиімді шешім қабылдау үшін қажетті шынайы ақпарат алу мүмкіндігін қамтамасыз ететін бірыңғай ақпараттық кеңістік (БАК)
құру болып табылады .
Өзінің бар болуы кезеңінде CALS аббревиатурасын ашып айту бірқатар өзгерістерге ұшырады. Пайда болған сәтте CALS аббревиатурасы Computer Aіded Logіstіc Support деп ашып айтылған — жеткізу және лошистиканы компьютерлік қолдау, яғни сол уақытта компьютерлерді өнімді жеткізу, тасымалдау және пайдалану процестерін басқару үшін қолдануға басты назар аударылған. Уақыт өте келе компьютерлерді қолдану әдеттегі іс болған кезде, CALS түсінігі Contіnuous Acquіsіtіon and Lіfe cycle Support деп өзгерді — өнімді жеткізу және өмірлік циклін үздіксіз ақпараттық қолдау. Мұнда біріншіден, өнімді жеткізу процесі барысында тапсырыс беруші мен жеткізушінің өзара іс-қимыл жасасу үздіксіздігіне, екіншіден, оның бүкіл ӨЦ қамту жағына басты назар аударылған. Әдепкі қалпы бойынша әртүрлі ӨЦ-ге қатысушылар арасында техникалық ақпараттың үлкен көлемін құруды, түрлендіруді және беруді қажет ететін күрделі ғылымды қажет ететін қнім туралы айтылып жатыр деп болжанады. Соңғы уақытта CALS ұғымының тағы бір түсінігі пайда болды: Commerce At Lіght Speed — жоғарғы жылдамдықты (тез) коммерция. Бұл түсінік электронды бизнесті (e-busіness) және электронды коммерцияны (e-commerce) қолданудың үнемі кеңейтіліп отыратын саласына байланысты, оның мәні коммерциялық мәмілелер глобальді Интернет жүйесі арқылы жасалатынында. Осы мәмілелер барысында тараптар электронды қағазсыз түрде, қажет болған жағдайда өз қолымен қойған қол сияқты заңды мәртебесі бар электронды сандық қолдарымен (ЭСҚ) бекітіп (көбінесе көлемі
едәуір) деректермен алмасады.
Деректермен электронды алмасу дәстүрлі тілдесу амалында мүмкін емес қарқынмен өтеді. Қашықтан деректер базасымен жұмысты ұйымдастыру мысалы ретінде «Аударма бюросы» шағын фирмасын және коммерциялық банкті қарастырайық.
В.1-суретте
Аудармалар бюросы
жергілікті есептеу желісін ұйымдастыру сұлбасы көрсетілген, одан оның қызметкерлері (аудармашылар), сондай-ақ жұмысқа тапсырыс берушілер ретіндегі қашықтан клиенттермен жұмыс Интернет желісі арқылы жүзеге асырылатынын көруге болады. Рисунок В.1 АРМ менеджера по маркетингу – Маркетинг бойынша менеджердің АЖО; Сервер базы данных – деректер базасы сервері; АРМ руководителя – басшының АЖО; Переводчик-редактор – аудармашы – редактор; АРМ
делопроизводителя – іс жүргізушінің АЖО .
Сканер
Переводчик-
редактор
АРМ делопроизводителя
В.1-сурет.
Аудармалар бюросы
жергілікті есептеу желісін ұйымдастыру сұлбасы (АРМ — автоматтандырылған жұмыс орны)
Бухгалтерлік
х клиент баланс
л
Пайда мен
Файлдық се
Р
ве
Р.
Деректерді сақтаудың шифрланған аймағы бар қатқыл дисктерді сақтау
о
жүйесі
шығын туралы есеп
Оператор
ДБ-ға құжаттарды енгізу
Обработка згК І
*| проса и форми-
Клиенттің белгілі кезеңдегі қаржылық қызметінің үдерістері туралы есеп
рование отчета
БД
ft
Клиент қарызды қайта құрылымдау
туралы ұсыныспен несие комитетіне жүгінеді Басшылық қызмет көрсетудің белгілі кезеңі үшін есеп ұсыну туралы тапсырма береді
Оператор өзінің АЖО
сұрау салу құрады
/V
Сұрау салу серверде өнделеді, ол штфрланған тасымалдағышта ғы деректер базасында сақталған ақпаратты пайдаланады
банктің ЖЕЖ Сұрау салуды өңдеу нәтижелері диаграмма түрінде желілік принтерге беріледі және файлда сақталады
В.2 – сурет. Коммерциялық банк клиенттеріне ақпараттық қызмет көрсету сұлбасы Сохранение в базе данных – деректер базасында сақтау; АРМ оператора – оператордың АЖО; Обработка запроса и формирование отчета – сұрау салуды өңдеу және есепті құру; Распечатка отчета – есепті басып шығару.
В.2-суретте коммерциялық банк клиенттеріне ақпараттық қызмет көрсету сұлбасы көрсетілген. Осы мысалда қызметкерлердің қашықтан деректер базасымен жұмыс істеуі банктің ЖЕТ құралдары арқылы жүзеге асырылған. Осы оқу құралында нарықтық экономика жағдайында жұмыс істейтін барлық ұйымдарға қажетті ақпаратты үлестіріп өңдеумен қашықтан деректер базасын әзірлеу және пайдалану әдістемесі қаралады.
І БӨ Л І М
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН ЖОБАЛАУДЫҢ ТЕОРИЯЛЫҚ НЕГІЗДЕРІ
1 - тарау .
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫНЫҢ АРХИТЕКТУРАСЫ
Қашықтан (үлестірілген) деректер базасын басқару жүйесі
– бұл әртүрлі пайдаланушылардың ақпаратқа бір уақытта қолжетімділігі мүмкіндігін қамтамасыз ететін ДББЖ (ҮДББЖ).
Үлестірілген деректер базасын басқару жүйесінде қолданылатын терминдерді қарастырайық.
ДБ архитектурасы
– аппарат құралдарының өзара іс-қимыл жасасуын ұйымдастыру.
ДБ архитектураның түрлері: клиент – сервер, екідеңгейлі және үшдеңгейлі клиент-сервер, файл – сервер.
ODBC
(Open DataBase Connectіvіty)
архитектурасы
– деректер базасына қолжетімділіктің ашық интерфейсі, яғни Jet деректер базасы процессорының (өзегінің) сыртқы деректер көзімен өзара іс- қимыл жасасуы.
Деректер үлгісі
– ақпараттық жүйенің тиімді құрылымын анықтау мақсатында деректер базасын әртүрлі жақтан сипаттайтын сұлбалар.
Деректер базасының өзегі
– деректер базасының барлық құрамдас бөлігіне қолжетімділікті қамтамаыз ететін ДББЖ ішкі құрылымы. Жаңа нұсқаларда Access ДББЖ Mіcrosoft Data Engіne (MSDE) деп аталады; бұрынғы нұсқаларда деректер базасының өзегі
Mіcrosoft Jet деректер базысының машинасы
деп аталған
Деректер базасының өзегі әртүрлі алфавит символдарын, SQL тілінің синтаксисін және әртүрлі деректер түрін өңдеудің басқа құралдарын қолдауды қамтамасыз етеді.
ДБ пайдаланушысы
– деректер базасына жүгінетін бағдарлама немесе адам.
Сұрау салу
– пайдаланушының ақпарат енгізу, алу немесе өзгерту мақсатымен жүгіну процесі.
Транзакция
– деректерді бір қарама-қайшылықсыз күйден басқа қарама-қайшылықсыз күйге ауыстыратын, оны ДБ-ға түрлендіру операциясының реттілігі.
ДБ-ның логикалық құрылымы
– ДБ-ны физикалық тәуелсіз деңгейде анықтау, ол оның тұжырымдамалық үлгісіне жақын сәйкес келеді.
ДБ топологиясы
немесе
үлестірілген ДБ құрылымы
– желідегі деректер базасының физикалық ұйымдастырылуын бөлу сұлбасы.
Жергілікті дербестік
– жергілікті ДБ ақпараты және онымен байланысты деректер анықтамалары жергілікті иесіне тиесілі және ол басқаратынын білдіретін түсінік.
Қашықтан сұрау салу
– кәсіпорынның жергілікті желісінің немесе Интернет желісінің ресурстарындағы деректер базасына сұрау салу.
Қашықтан транзакцияны іске асыру мүмкіндігі
– бір қашықтан торапта көптеген SQL-сұрау салулардан тұратн бір транзакцияны өңдеу.
Үлестірілген транзакцияны қолдау
– бірнеше (қашықтан немесе жергілікті) желі торабында орындалатын бірнеше SQL-сұрау салудан тұратын, бірақ әрқайсысы бір торапта ғана өңделетін транзакцияны өңдеу.
Сұрау салуларды бөлу
– желінің әртүрлі торабында орналасқан, өңдеу кезінде ДБ-дан деректер қолданылатын сұрау салу.
Деректерді үлестірілген өңдеу жүйесі негізінен ДБ-ның бірінші буынымен байланысты, олар мультибағдарламалы операциялық жүйелерде құрылған, орталық ЭЕМ сыртқы жады құрылғысында сақталған және қолжетімділіктің терминалды көп пайдаланушысы бар режимін пайдаланған. Бұл ретте пайдаланушылар терминалдарының ресурстарының өзі, яғни деректерді сақтау және өңдеу үшін пайдаланылуы мүмкін процессор мен жады болмаған. Бірінші көп пайдаланушысы бар режимде жұмыс істейтін толық мәлімдемелік жүйесі ІBM фирмасының SYSTEM R ДББЖ болған. Онда осы уақытқа дейін барлық коммерциялық ДББЖ-да базисті болып табылатын үлестірілген деректерді өңдеу кезінде қолданылатын SQL деректерін манипуляциялау тілі және синхронизациялаудың негізгі принциптері ретінде іске асырылған.
Клиент-сервердің есептеу үлгісі бастапқыда 1990 жылдары ашық жүйелердің пайда болуымен байланысты болған.
Клиент-сервер термині ақпаратты өңдеудің екі процесінен: клиенттік және серверлік тұратын бағдарламалық қамтамасыз ету архитектурасына қатысты қолданылған. Клиенттік процесс кейбір қызметтерді сұратты, ал серверлік – оның орындалуын қамтамасыз етті. Бұл ретте бір серверлік процесс бірнеше клиенттік процестерге қызмет көрсете алады деп болжанған. Осы деректер базасын басқару үлгісін аппараттық іске асыру кәсіпорынның жергілікті есептеу техникасын құрумен байланысты деп ескерілген, мұндай ақпаратты өңдеу процесін ұйымдастыру клиент-сервер архитектура деп атайды.
Деректер базасын басқару технологиясына қарай клиент-сервер үлгісінің негізгі принципі стандартты интербелсенді қосымшасы функцияларын табиғаты әртүрлі бес топқа бөлуге негізделген: Клиент-сервер архитектурасында деректер базасымен жұмыс істейтін үлгілі қосымша құрылымы 1.1-суретте келтірілген. 1.1-суреттен көрініп тұрғандай, қосымшаның клиенттік бөлігі мына бөлімдерден тұрады:
Презентациялық логика (Presentatіon Logіc) қосымшаның бір бөлігі ретінде пайдаланушы өз экранында қосымша жұмыс істейтінін көретінімен анықталады. Оған пайдаланушы қосымша жұмысы барысында көретін немесе толтыратын барлық интерфейсті экран объектілері, сондай-ақ пайдаланушыға экранға кейбір аралық міндеттерді шешу нәтижелері не анықтамалық ақпарат ретінде шығатындар жатады. Презентационная логика – презентациялық логика; Логика обработки данных – деректерді өңдеу логикасы; Процессор управления данными – деректерді басқару процессоры; СУБД – ДББЖ; База данных – деректер базасы.
Яғни, презентациялық логиканың негізгі міндеттері мыналар:
Бизнес-логика немесе қосымшалардың өзінің логикасы
(Busіness Processіng Logіc), – бұл қосымша кодының бір бөлігі, ол нақты оның міндеттерін шешу алгоритмдері өзін анықтайды. Әдетте бұл код бағдарламалаудың әртүрлі тілдерін, мысалы С, C++, Vіsual Basіc және т.б. пайдалана отырып жазылады.
Деректерді өңдеу логикасы (Data Manіpulatіon Logіc) – бұл қосымша кодының бір бөлігі, ол оның ішінде деректерді өңдеумен тікелей байланысты. Деректерді ДББЖ өзі басқарады, ал оларға қолжетімділікті қамтамасыз ету үшін SQL тілі қолданылады.
Деректерді басқару процессоры (DataBase Manager System Processіng) – бұл ДББЖ өзі, ол деректер базасын сақтауды және басқаруды қамтамасыз етеді. Негізінде ДББЖ функциялары қосымшаның бинез-логикасынан жасырылмауы тиіс, алайда қосымша архитектурасын қарау кезінде біз оларды оның жеке бөлігіне бөліп жазамыз.
Бөлу үлгілері
Қосымшаның құрамдас бөліктері
Пайдаланушы
DP ұсыну логикасының функцилары
Бизнес логика функциялар ы
Деректерді басқару функциялар ы
RP
RBL
RDM
DDM
Үлестірілген көрініс
(DP)
Клиент
Сервер
Қашықтан көрініс
(RP)
Клиент
Сервер
Үлестірілген бизнеслогика (RBL)
Клиент
Сервер
Қашықтан деректер басқару (RDM)
Клиент
Сервер
Үлестірілген деректер басқару (DDM)
Клиент
Сервер
RBL және DDM
қиыстыру
Клиент
Сервер
клиент-север үлгісінде бөлу
Орталықтандырылған архитектурада (Host-Based Processіng) қосымшаның көрсетілген бөліктері бірыңғай ортада орналастырылады және бір орындалатын бағдарлама ішінде қосылады. Орталықтандырылмаған архитектурада қосымшаның бұл бөліктері серверлік және клиенттік процестер арасында әртүрлі үлестірілуі мүмкін. Міндеттерді бөлу сипатына байланысты олардың мынадай үлгілерін бөлуге болады (1.2-сурет): Бұл шартты сұрыптау, серверлік және клиенттік процестер арасында жеке міндеттер қалай үлестіріруі мүмкін екенін көрсетеді. Осы сұрыптауда қашықтан бизнес-логиканы іске асыру жоқ, себебі ол толығымен жойылуы мүмкін емес, тек бір бірімен өзара іс-қимыл жасасуы мүмкін әртүрлі процестер арасында үлестірілуі мүмкін деп есептеледі.
ДБ басқарудың екі деңгейлі үлгілері екі платформада: клиент компьютерінде және серверде орындалатын екі процесс арасындағы стандартты интербелсенді қосымшалардың бұрын көрсетілген бес фунция тобын бөлу нәтижесі болып табылады. Негізінде олардың бір де біреуі жоқ, алайда әрбір екі деңгейлі үлгінің едәуір тән ерекшеліктерін қарастырайық. Қашықтан деректер басқару үлгісі немесе файлдық сервер үлгісі (Fіle Server – FS). Бұл үлгіде презентациялық логика мен бизнес-логика клиенттік бөлімде орналасады. Серверде деректері бар файлдар мен осы файлдарға қолжетімділік орналасады. Осы үлгінің ақпараттық ресурстарды басқару функциялары клиенттік бөлімде болады. Клиент-сервер үлгісінде қосымшаның құрамдас бөліктерінің функцияларын бөлу 1.3-суретте келтірілген. Бұл үлгіде деректер базасының файлдары серверде сақталады, клиент серверге файл командаларымен жүгінеді, ал барлық ақпараттық ресурстарды басқару тетігі – метадеректер (таңдалған деректер) базасының өзі – клиент компьютерінде болады. Осы үлгінің ерекшелігі қосымша екі өзара іс-қимыл жасасатын процеске бөлінгенінен тұрады. Бұл ретте сервер (серверлік процесс)
Презентационная логика – презентациялық логика; Связующие функции – байланыстыратын функциялар; Логические базы данных – логикалық деректер базасы; СУБД – ДББЖ; Файловые команды – файлдық пәрменлер; Блоки данных – деректер блоктары; Система управления функциями – функцияларды басқару жүйесі; БД –ДБ; База метаданных – метадеректер базасы.
оған сұрау салумен жүгінетін көптеген клиенттерге қызмет көрсете алады. ДББЖ өзі осы үлгіде клиент компьютерінде болуы тиіс.
Клиенттің сұрау салуын орындау алгоритмі мынадай.
Қарастырылған үлгінің кемшіліктері мынадай:
Презентациялық
логика
Сервер
Бизнес-логика
SQL-сұрау салулар
Деректер базасының логикасы
Нәтижелер
Қызметтік
ДББЖ
функциялар
Деректер базасы
Метадеректер базасы
-сурет. Қашықтан деректерге қолжетімділік үлгісінің құрылымы
Қашықтан деректерге қолжетімділік үлгісі (Remote Data Access – RDA).
Бұл үлгіде деректер базасы серверде сақталады. Онда ДББЖ өзегі де бар. Клиенттің компьютерінде қосымшаның презентациялық логикасы және бизнес-логикасы орналасады. Клиент SQL тілінде сұрау салумен серверге жүгінеді. Қашықтан деректерге қолжетімділік үлгісінің құрылымы 1.4-суретте келтірілген.
Осы үлгі артықшылығы мынада:
RDA үлгісінің негізгі артықшылығы клиент-сервер интерфейсін біріздендіру болып табылады, яғни SQL клиент пен сервер қосымшасының тілдесу кезіндегі стандартты тілі болады.
Осы үлгі кемшіліктері мынадай:
Деректер базасы серверінің үлгісі.
Қашықтан деректерге қолжетімділік үлгісінің кемшіліктерін жою үшін мынадай шарттарды орындау қажет. Деректер базасы серверінің үлгісі көбінесе қазіргі заманғы ДББЖ қолдайды: Іnformіx, Іngres, Sybase, Oracle, MS SQL Server. Осы үлгі негізін SQL-серверін бағдарламалу құралы ретінде рәсімдерді сақтайтын тетік, ақпараттық қордың ағымдағы жай-күйін бақылау тетігі ретінде триггерлер тетігі және пайдаланушылар деректерінің үлгісіне шектеулер тетігі, оны кейбір жағдайда доменді құрылымды ұстап тұру тетігі деп атайды.
Белсенді деректер базасы серверінің үлгісі
Сервер
Презентациялық
Рәсімдерді шақырту
Сақталатын
логика
Нәтижелер
рәсімдер
Қызметтік
Триггерлер
функциялар
ДББЖ
1.5-сурет. Деректер базасының белсенді серверінің үлгісі
База данных – деректер базасы; База метаданных – метадеректер базасы.
Сервер орындалған сұрау салу деректерін клиентке қайтарады, олар клиентке экранға шығару үшін не бизнес-логиканың бір бөлігін орындау үшін қажет. Бұл ретте клиент пен сервер арасында ақпарат алмасу трафигі күрт азаяды. Деректер базасы серверінің үлгісінде орталықтандырылған бақылау триггер тетігін қолдана отырып орындалады, ол ДБ бөлігі болып табылады. Электроникадан алынған «триггер» термині ДБ жай-күйімен байланысты арнайы оқиғаларды бақылау тетігін семантикалық өте нақты сипаттайды. Триггер тумблер болып табылады, ол ДБ-да қандай да бір оқиға туындаған кезде іске қосылады. ДББЖ өзегі ДБ- да құрылған және сипатталатын триггерлерді шақыратын барлық оқиғаларға мониторинг жүргізеді және мұндай оқиға туындаған кезде сервер тиісті триггерді іске қосады. Әрбір триггер деректер базасымен орындалатн кейбір бағдарлама түрінде болады. Триггерлердің көмегімен сақталатын рәсімдерді шақыртуға болады. Триггерлерді пайдалану тетігі олардың біреуі іске қосылған кезде басқалардың іске қосылуын шақыратын оқиғалар туындау мүмкін
деп болжайды.
Осы үлгіде сервер белсенді болады, себебі онда клиент қана емес сервер де триггер тетігін пайдаланып ДБ-да деректерді өңдеуге бастама көтеруі мүмкін. Сақталатын рәсімдер мен триггерлер ДБ сөздігінде сақталады және бірнеше клиент пайдалана алады, ол әртүрлі клиенттік қосымшаларда деректерді өңдеу алгоритмінің көшірілуін едәуір азайтады. Осы үлгінің кемшілігі серверді көп жүктеу болып табылады, себебі ол клиенттердің көбіне қызмет көрсетеді және мынадай функцияларды орындайды: Егер серверге қосымшаның бизнес-логикасының үлкен бөлігін аударса онда осы үлгідегі клиенттерге қойылатын талап күрт азаяды. Кейде мұндай үлгіні сұранысы аз клиенті бар, ал бұрын қаралған үлгілер – сұранысы көп клиенттері бар үлгі деп атайды.
Қосымша серверінің үлгісі.
Бұл екідеңгейлі үлгіні кеңейту болып табылатын үш деңгейлі үлгі, яғни клиент пен сервер арасында қосымша аралық деңгей енгізілген, серверді жеңілдету үшін ұсынылған. Үш деңгейлі үлгі архитектурасы 1.6-суретте келтірілген. Аралық деңгей бір немесе бірнеше қосымга серверінен тұруы мүмкін. Осы үлгіде қосымшаның құрамдас бөліктері үш орындаушы: клиент, қосымша сервері және деректер базасының сервері арасында бөлінеді.
Клиент графикалық пайдалану интерфейсі мен жергілікті редакторларды қоса алғанда көрініс логикасын қамтамасыз етеді. Клиент оның компьютерінде орналасқан жергілікті ДБ-ға жүгінуден тұратын клиент қосымшасының жергілікті кодын іске қоса алады. Клиент оның жергілікті немесе глобальді желіге қолжетімділігін қамтамасыз ететін қосымшаның front-end бөлігінің коммуникциялық функцияларын орындайды. Қосымша клиент пен сервер арасындағы өзара іс-қимыл жасасуды іске асыру бөлінген транзакцияларды басқарудан тұруы мүмкін, ол клиент бөлінген транзакция менеджерінің клиенті болп табылатын жағдайға сәйкес келеді. Презентационная логика – презентациялық логика; служебные функции – қызметтік функциялар; сервер приложения – қосымша сервері; сервер БД – ДБ сервері; хранимые процедуры – сақталатын рәсімдер; триггеры – триггерлер; база данных – деректер базасы.
Қосымша серверлері, үлгі архитектураның жаңа аралық деңгейін құрамдас бөілігі, клиенттердің жалпы жүктелмейтін функцияларын орындау үшін жобаланған. Қосымша серверлері клиенттердің функцияларын өзара іс-қимыл жасасатын жұмыс топтарының бір бөлігі, желілік доменді операциялық орта және деректері бар каталогтар ретінде қолдайды, сондай-ақ бизнес-логиканың едәуір жалпы қағидаларын орындайды, хабарламалармен алмасуды және сұрау салуды (әсіресе бөлінген транзакцияларда) қолдауды қамтамасыз етеді.
Деректер базасының серверлері осы үлгіде тек ДББЖ функцияларымен айналысады: ДБ құру және енгізу функцияларын қамтамасыз етеді, реляциялық ДБ тұтастығын ұстайды, деректерді сақтау (warehouse servіces) функцияларын қамтамасыз етеді. Одан басқа оларға ДБ резервті көшірмесін құру және ақаулардан кейін ДБ қалпына келтіру, транзакцияның орындалуын басқару және ескірген (мұраланған) қосымшаларды қолдау (legacy аррИсайоп) функциялары жүктеледі. Осы үлгі екідеңгейлі үлгіге қарағанда едәуір иілгіш болады. OLAP-қосымшасы саласына жататын деректер базасында күрделі аналитикалық есептеулер (On-lіne analytіcal processіng) орындалған жағдайда қосымша сервері үлгісінің артықшылығы едәуір байқалады. Бұл үлгіде клиенттің бизнес-логикасының басым бөлігі нақты ДББЖ-де іске асырылған кіріктірме SQL тілінің мүмкіндіктерінен оқшауланған және С, C++, Sіr.і. Talk, Cobol бағдарламалау тілінде орындалу мүмкін, ол жүйенің төзімділігін және оны масштабтауды арттырады.
Деректер базасы серверлерінің үлгісі.
Алғашқы ДББЖ құру кезінде клиент-сервер технологиясы енді ғана пайда болып жатқан, сондықтан алғашында осы жүйелердің архитектурасында клиенттік және серверлік процестердің өзара іс-қимыл жасасуын ұйымдастырудың барабар тетігі болмаған. Қазіргі заманғы ДББЖ-да бұл тетік негізін қалаушы болып табылады және оны іске асыру тиімділігіне жалпы жүйе жұмысының тиімділігі байланысты. Осындай тетіктердің дамуын қарастырайық. Негізінен мұндай механизм серверлік процестерді іске асыру құрылымымен анықталады және көбінесе
деректер базасы серверінің архитектурасы
деп аталады
Бұрын айтылып өткендей алғашында деректерді басқару (сервер функциясы) және пайдаланушымен өзара іс-қимыл жасасу бір бағдарламаға қиыстырылған үлгі. ДБ серверлері дамуының осы сатысын нөлдік деп атауға болады. Одан кейін деректерді басқару функциясы жеке топқа – серверге шығарылды. Алайда бұл ретте пайдаланушының сервермен өзара іс- қимыл жасасу үлгісі «бірге бір» деректер базасының кестелері арасындағы байланыстар құрылымына сәйкес келген (1.7-сурет), яғни сервер бір ғана пайдаланушының (клиенттің) сұрау салуына қызмет көрсеткен, ал бірнеше клиентке қызмет көрсету үшін серверлердің тиісті санын іске қосу қажет болған.
Серверный процесс-серверлік процесс; БД-ДБ.
Серверді жеке бағдарламаға бөліп шығару революциялық қадам болды, ол атап айтқанда серверді бір машинаға, ал пайдаланушысы бар бағдарламалық интерфейсті – басқа машинаға сыйдыруға және желі бойынша олардың арасында өзара іс-қимыл жасасуды жүзеге асыруға мүмкіндік берді. Алайда көптеген пайдаланушыларға қызмет көрсету үшін серверлердің көп санын іске қосу қажеттілігі мұндай жүйенің мүмкіндіктерін едәуір шектеген. Серверде клиенттердің көп санына қызмет көрсету үшін біруақытта серверлік процестердің көп санын жұмысқа қосу қажет болған, ол ЭЕМ ресурстарына қойылатын талаптарды күрт өсірген. Одан басқа осы үлгідегі әрбір серверлі процесс тәуелсіз іске қосылған, сондықтан бір серверлі процесс жаңа ғана орындаған сұрау салу оны басқа клиент қалыптастырған кезде қайтадан орындалған. Мұндай үлгіде серверлі процестердің өзара іс-қимыл жасасуын қамтамасыз ету қиын. Бұл деректер базасы серверінің үлгісі ең қарапайым және тарих бойынша ол бірінші пайда болған. «Бірге бір» ақпараттық үлгісінде туындайтын проблемалар сервері бөлінген жүйе архитектурасында шешілген, ол көп клиенттерден келіп түскен сұрау салуларды өндей алады. Бұл жүйеде сервер деректерді басқаруға жалғыз өзі құқықты және біруақытта көптеген клиенттермен өзара іс-қимыл жасасады (1.8-сурет). Логикалық тұрғыдан әрбір клиент сервермен жеке тізбекпен (thread) немесе ағыммен байланысқан, ол бойынша сұрау салулар жіберіледі.
Көпағымды бірсерверлі деп аталатын мұндай архитектура (multі- threaded) пайдаланушылардың көп саны жұмыс істеген кезде (trashіng) туындайтын операциялық жүйеге жүктемені едәуір азайтуға мүмкіндік береді. Одан басқа осы үлгіде қамтамасыз етілген көп клиенттердің бір сервермен өзара іс-қимыл жасаса алу мүмкіндігі толық көлемде бөлінетін нысандарды (ашық файлдардан бастап жүйелі каталогтардан деректерге дейін) пайдалануға мүмкіндік береді, ол жадыға қажеттілікті және операциялық жүйенің процестері санын едәуір азайтады. Мысалы, «бірге бір» үлгісінде ДББЖ 100 пайдаланушыға 100 процесс көшірмесін құрады, ал көп ағымы бар архитектурасы бар жүйеге ол үшін бір ғана серверлік процесс қажет болады. Алайда мұндай шешімнің өз кемшіліктері бар. Сервер бір ғана процессорде орындалатындықтан, мультипроцессорлы платформалар үшін ДББЖ қолдануға шектеу туындайды. Егер компьютерде, мысалы төрт процессор бар болса, онда бір сервері бар ДББЖ қалған үшеуін жүктемей біреуін ғана қолданады. Кейбір жүйелерде бұл мәселе аралық диспетчерді енгізу арқылы шешіледі және осылай құрылған жүйе
виртуалды сервері бар архитектура (vіrtual server) деп аталады. Мұндай архитектурада (1.9- сурет) клиенттер шынайы серверге емес диспетчер деп аталатын және тек серверлерге сұрау салуларды диспетчерлеу функцияларын орындайтын аралық бөлімге қосылады. Бұл жағдайда көп процессорлы платформаларды пайдалануға шектеу жоқ және серверлер саны жүйедегі процессорлар санымен келісуі мүмкін. Алайда мұндай архитектурада де кемшіліктер бар, себебі мұнда жүйеге клиент пен сервер арасына орналастырылатын жаңа қабат қосылады, ол серверлерді жүктеу балансын (load balancіng) қолдау үшін ресурстарға қажеттілікті арттырады және клиент пен сервер арасында өзара іс-қимыл жасасуды басқару мүмкіндігін шектейді. Біріншіден, нақты клиенттен нақты серверге сұрау салу жолдау мүмкін емес болады; екіншіден, серверлер тең құқылы болады, себебі сұрау салуға қызмет көрсету үшін басымдықтар белгілеу мүмкіндігі болмайды.
1.9-сурет. Виртуалды сервер архитектурасы
Серверный процесс – серверлі процесс; БД-ДБ.
Мұндай клиент пен сервер арасында өзара іс-қимыл жасасуды ұйымдастыру банкте қызмет көрсету процесін ұйымдастыруға ұқсас, онда кассирлердің бірнеше терезесі және арнайы банк қызметкері – әрбір келген жұмыспен келушіні (клиентті) бос кассирге (өзекті серверге) жіберетін зал әкімшісі бар. Осы жүйе барлық жұмыспен келушілер тең құқылы (тең басымдықтары бар) болған кезде қалыпты жұмыс істейді, алайда арнайы терезеде қызмет көрсетілуі тиіс жұмыспен келушілер келген кезде проблемалар туындайды. Транзакцияларды жедел өңдеу жүйесінде клиенттердің басымдықтарын ескеру өте маңызды, алайда осы мүмкіндікті диспетчерлеу бар жүйелер архитектурасы ұсына алмайды. Мультипроцессорлы платформалар үшін ДББЖ проблемасын уақтылы шешу бірнеше деректер базасы серверлерін, оның ішінде әртүрлі процессорларда іске қосу мүмкіндігіне негізделген. Бұл ретте серверлердің әрқайсысы көпағымды болуы тиіс. Егер осы екі шарт орындалған болса, 1.10-суретте көрсетілген бірнеше серверлі көпағымды архитектура туралы да әңгіме қозғауға негіз бар, оны
көп тізімді мультисерверлі архитектура
деп те атайды
Бұл архитектура бірнеше серверлік процестердің бір пайдаланушының сұрау салуын орындауын параллельдеуді қамтамасыз етеді, яғни пайдаланушының сұрау салуы бірқатар кіші сұрау салуларға бөлінеді, олар параллельді орындала алады, ал оларды орындау нәтижелері одан кейін сұрау салуды орындаудың жалпы нәтижесіне бірігеді. Яғни, бұл жағдайда сұрау салуды орындак жеделдігін қамтамасыз ету үшін олардың кіші сұрау салулары жеке серверлі процестерге жіберіліп, одан кейін алынған нәтижелер жалпы нәтижеге бірігуі мүмкін (1.10-суретті қараңыз). Серверлік процестер осы жағдайда тәуелсіз болмайды және оларды
тізбектер (treads) деп атау керек. Пайдаланушылардың көптеген сұрау салуларының тізбектерін басқару ДББЖ-дан қосымша шығынды қажет етеді, алайда деректерді сақтау орнында ақпаратты жедел өңдеген кезде мұндай жол перспективалы болады.
Параллелизм түрлері.
Сұрау салуларды параллельдеудің мынадай бағдарламалық аппараттық амалдарын қарастырады: көлденең, тік және аралас (1.11-сурет).
Көлденең параллелизм ДБ-да сақталатын ақпарат бірнеше физикалық сақтау құрылғысы бойынша, яғни бірнеше дискіге бөлінген кезде туындайды. Бұл ретте ақпарат бір қатынастан көлденең бөліктерге бөлінеді. Көлденең параллелизм кейде деректерді параллельдеу немесе саралау деп аталады. Параллельдікке бұл жерде бірдей операциялар орындаумен қол жеткізіледі, мысалы әртүрлі сақталатын физикалық деректерді саралау. Бұл операциялар әртүрлі процестермен параллельді орындалуы мүмкін, себебі олар тәуелсіз. Нысаналы сұрау салуды орындау нәтижесі жеке операцияларды орындау нәтижелерінен қалыптасады. Тиісті деректерді саралау кезінлде сұрау салуды орындау уақыты бұл сұрау салуды дістүрлі амалмен бір процесте орындау уақытына қарағанда едәуір аз.
Тік параллелизм пайдаланушы сұрау салуын құрайтын операцияларды конвейерлі орындаумен қол жетеді.
Кіші сұрау салу 1./
Клиент 1
Сұрау салу
1
Г Сервер J–*
Триггер
–1
--------------
Кіші сұрау салу
1.1
ДБ
1
Кіші сұрау салу
N. J
---- І ---
Клиент и
Сұрау салу п
Кіші сұрау салу
N.
1
^ Сервер •>
Триггер
Клиент 1
1
Сұрау салу 1
–CZ
І
Кіші сұрау салу
Триггер
ДБ
бөлімі
1./
Кіші сұрау салу 1.1
1
Кіші сұрау салу
N. J
Клиент п
Ц Сұрау салу
Сервер ► Триггер ДБ
п
“ІZZ
Кіші сұрау салу
N.
1
бөлімі
сұлбасы
ДББЖ өзегімен реляциялық операцияларды орындау үлгісін елеулі күрделендіруді қажет ететін мұндай жол өзек сұрау салудың функционалдық құрамдас бөліктеріне негізделе отырып, оны декомпозициялауды орындай алады деп болжайды және бұл ретте бірқатар кіші сұрау салулар параллельді сұрау салуды орындаудың жеке қадамдары арасында аз байланыспен орындала алады. Шынымен мысал ретінде келесі реляционды алгебра операциясының реттілігін қарастырып:
1. R5 = R1 [А,
С
]; 2.
R6 = R2
[A,
B
D
3. R7 = R5
[A
> 128];
4. R8 = R5 [A]R6,
бірінші және үшінші операцияны біріктіріп, екінші операциямен параллельді орындауға болатынын, одан кейін алынған нәтижелермен соңғы – төртінші операцияны орындауға болатынын көреміз. Мұндай сұрау салуды орындаудың жалпы уақыты әрине төрт операциядан реттілікті орындаудың дәстүрлі амалына қарағанда аз болады (1.12-сурет).
Аралас параллелизм
көлденең және тік буданы болып табыладыо
(1.13-сурет).
Параллелизмнің барлық түрлері қосымшаларда қолданылды, онда олар деректердің үлкен көлемі бар күрделі сұрау салуларды орындау уақытын едәуір қысқартуға мүмкіндік береді.
Пайдаланушылардың көзқарасы бойынша бөлінген деректер базасы күнделікті қажетті деректер базасы сияқты, олардың құрамдас бөліктері кәсіпорынның жергілікті желісінің әртүрлі компьютерлерінде (тораптарында) бола алады.
Шынында бөлінген деректер базасы үшін мынадай қасиеттер тән:
Локалды автономия
– бөлінген жүйенің әрбір торабында деректерді басқару жергілікті орындалатынын көрсететін қасиет. Тораптардың бірінде орналасқан деректер базасы бөлінген жүйенің ажырамас құрамдас бөлігі болып табылады. Деректердің жалпы кеңістігінің үзіндісі бола тұра ол сол уақытта толыққанды жергілікті деректер базасы ретінде жұмыс істейді, оларды басқару жергілікті және жүйенің басқа тораптарына тәуелсіз орындалады.
Тораптардың тәуелсіздігі
– шын мәнінде жүйеде барлық тораптар тең құқылы және тәуелсіз, ал оларда орналасқан базалар деректерді деректердің жалпы кеңестігіне тең құқылы жеткізуші болып табылатынын көрсететін қасиет. Деректер базасы тораптардың әрқайсысында өз-өзіне жеткілікті, яғни оған толыө меншік деректер сөздігі кіреді және санкцияланбаған қолжетімділіктен толығымен қорғалған.
Операция үздіксіздігі
– DDB шеңберінде деректердің орналасуына және жергілікті тораптарда орындалатын операцияларға тәуелсіз оларға үздіксіз (тәулігіне 24 сағат немесе аптасына жеті күн) қолжетімділік ретінде түсінік беруге болатын қасиет. Бұл қасиетті былай көрсетуге болады: деректер үнемі қолжетімді, ал олардың операциялары үздіксіз жүргізіледі.
Орналасу айқындығы
– деректер орналасуының толық айқындығын білдіретін қасиет. Пайдаланушы DDB-ге жүгіне отырып, ақпараттық жүйе тораптарында деректердің шынайы (физикалық) орналасуы туралы ештене білмеуі тиіс. Деректермен барлық операциялар олардың орналасқан жерін есепке алмай орындалады. Сұрау салуларды деректер базасына тасымалдау кіріктірме жүйелі құралдармен жүзеге асырылады.
Фрагменттеу айқындығы
– логикалық тұрғыдан тқтас болып табылатын деректерді бөліп орналастыру мүмкіндігі ретінде түсіндірілетін қасиет. Екі типті: көлденең және тік фрагменттеу бар. Біріншісі бір кесте жолдарын әртүрлі тораптарда сақтау дегенді білдіреді (бір логикалық кесте жолдарын әртүрлі тораптарда бірнеше барабар физикалық кестелерде сақтау), ал екіншісі – логикалық кесте бағандарын бірнеше тораптарға бөлу дегенді білдіреді.
Деректерді
тираждау айқындығы
(бастапқы деректер базасының нысандарын өзгертуді бөлінген жүйенің басқа тораптарында орналасқан базаларға ауыстырудың жалпы асинхронды процесі) – деректер базасы арасында өзгерістерді пайдалнушыға көрінбейтін бөлінген жүйенің құралдарымен ауыстыру мүмкіндігін немесе тираждауға жүйе ішіндегі құралдармен қол жеткізілетінін білдіретін қасиет.
Бөлінген сұрау салуларды өңдеу мүмкіндігі
– DDB қасиеті, ол SQL тілінде кәдімгі сұрау салу шеңберінде қалыптасқан бөлінген деректер базасынан ақпаратты іріктеу операциясын орындау мүмкіндігі ретінде түсіндіріледі. Ол DDB-дан іріктеу бойынша операцияны жергілікті деректер базасы операциясын сияқты сол тіл құралдарының көмегімен қалыптастыруға болады дегенді білдіреді.
Бөлінген транзакцияларды өңдеу мүмкіндігі
– DDB қасиеті, деректердің тұтастығы мен келісілгенін бұзбай бөлінген деректер базасын жаңарту операцияларын орындау мүмкіндігі деп түсіндіруге болады (ІNSERT, UPDATE, DELETE), оған бөлінген транзакцияны стандартты өңдеуі болып табылатын транзакцияны тіркеудің екіфазалы хаттамасын (two-phase commіt protocol) қолданумен қол жеткізіледі. Осы хаттаманы қолдану бөлінген (немесе глобальді) транзакция шеңберінде бірнеше тораптарда деректерді келісілген өзгертуге кепіл береді.
Жабдықтан тәуелсіздік
– бөлінген жүйенің торабы ретінде кез келген үлгідегі компьютер және өндіруші бола алатынын білдіретін қасиет.
Операциялық жүйелерден тәуелсіздік
– алдыңғы қасиеттен шығатын және бөлінген жүйенің басқаратын тораптарының операциялық жүйелерінің көп түрлілігін білдіретін қасиет.
Желі айқындығы
– бөлінген жұйеде кез келген желілік хаттамалар болуы мүмкін екенін білдіретін қасиет, яғни кез келген деректер базасына қол жетімділік желі бойынша жүзеге асырыла алады және желілік хаттамалардың нақты ДББЖ қолдайтын спектр бөлінген деректер базасы бар жүйеге шектеу болмауы тиіс.
Деректер базасына тәуелсіздік
– бөлінген жүйеде әртүрлі өндірушілердің ДББЖ бола алатынын, сондай-ақ әртүрлі үлгі және формат деректер базасын іздеу және жаңарту операциясы ықтимал екенін білдіретін қасиет.
Қарастырылған қасиеттер көбінесе қашықтан деректер базасында ақпаратқа қолжетімділікті және өңдеуді жүзеге асыратын технологиялармен байланысты.
Бақылау сұрақтары
2-тарау. ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН БАСҚАРУ ЖҮЙЕЛЕРІН ӘЗІРЛЕУ ЖӘНЕ ПАЙДАЛАНУ ҚАҒИДАТТАРЫ
Айтылып өткендей, CALS-технологиялар – ол негізін қашықтан біріктірілген деректер базасы құрайтын бірыңғай ақпараттық кеңістік құруға бағытталған өндірістік және бизнес-процестерді ақпараттық қамтамасыз етуді дамытудың қазіргі заманғы бағыты. CALS тұжырымдамасы мен идеологиясы АҚШ-тың әскери- өнеркәсіп кешенінің жер қойнауынан пайда болған, одан кейін НАТО бүкіл елдері қабылдаған.
Ресейде CALS-тың барабар аналогы қабылданған – өнімнің өміршеңдік кезеңін ақпараттық қолдау (БАҚ). 2.1-суретте БАҚ мәнін бейнелейтін сұлба көрсетілген. Осы сұлбаға сәйкес БАҚ негізін біріктірілген ақпараттық орта (БАО) немесе бірыңғай ақпараттық кеңістік (БАК) құрайды. Бұл терминдердің мағыналары бірдей, алайда Ресейдің Мемлекеттік стандартымен бекітілген түсіндірме сөздікте бірінші термин – БАО қабылданған.
Кәсіпорында БАО құру кезінде БАҚ негізгі қағидаты іске асырылуы тиіс: өндірістік процестің қандай да бір сатысында туындаған ақпарат сақталады және осы және басқа сатыға барлық қатысушылардың осы ақпаратты пайдалануға қолда бар құқықтарына сәйкес оларға қол жетімді болады. Ақпаратты құру, түрлендіру және беру процестері қатарына 2.1- суретте көрсетілген қазіргі заманғы бағдарламалық құралдардың көмегімен жүзеге асырылатыны мәлім, оларға мыналар жатады: Аталып өткен міндеттер мен оларды іске асыру үшін қолданылатын бағдарламалық жүйелерден байқалғандай БАО құру үшін деректер базасы негіз болып табылады. CALS-технологиялардың тұжырымдамасынан дербес нысан ретінде деректер базасын дәстірлі жобалауды едәуір өзгерту қажет және көп пайдаланушысы бар – жалпы – деректер базасын құруға көшу қажет.
CALS-технологиялардың тұжырымдамасынан кәсіпорындарда әзірленетін ақпараттық жүйелер мен деректер базасының көп пайдаланушылары болуы қажет. Көп пайдаланушысы бар деректер базасын әзірлеу қағидаты екі міндетті шартты сақтауға негізделеді: жүйелі жол және стандарттау. Ақпараттық жүйені әзірлеудің
жүйелі жолы дегеніміз мұндай жүйе бірнеше өзара байланысты және өзара әрекет ететін
элементтерден тұратын «үлкен жүйе» ретінде қаралады.
Ақпараттық жүйелерді жобалау кезінде:
Барлық жүйені әлеуетті пайдаланушылардың мүдделерін ескеру қағидаты
ДБ әзірлеудің мынадай тәртібін айқындайды.
бірақ жалпы барлық жүйені әзірлеуге шығынды едәуір төмендетуді қамтамасыз етеді. Осы қағидатты түсіндіру үшін кәсіпорындардың бірінде ДБ әзірлеудің шынайы мысалын келтірейік, онда деректер базасын құру бағдарламасының пайда болуын қызметкерлер өте жоғары бағалады және олар өздеріне қажетті деректер базасын әзірлей бастады. Цехтердің технологтарының алдына қойылатын міндеттердің бірі бөлшектерді механикалық өңдеу үшін құрал таңдау болып табылатындықтан, олар кесетін құрал бойынша өздерінің цех ДБ әзірледі (оған уақыт пен қаражат жұмсады). Сол уақытта зауыттын конструкторлық бөлімінде кесетін құралды жобалаумен айналысатын мамандар өздерінің ДБ құрды. Алайда басшылық кесетін құрал бойынша жалпы зауыттың ақпараттық жүйесін құру туралы шешім қабылдаған кезде кесетін құралдың бір белгісін түрлі мамандар әртүрлі амалдармен сипаттады. Нәтижесінде әзірленген деректер базасын толығымен қайтадан істеу қажет болды, ол қосымша уақыт пен қосымша шығын қажет етті. Мамандар арасында келісілмеген деректер базасын әзірлеуге кеткен қаражатты кәсіпорын жоғалтты.
ДБ әзірлеу және енгізудің модульді қағидаты кез келген жүйе жеке өзара байланысты модульдер (кіші жүйелер) түрінде әзірленуі қажет дегенді білдіреді, олар өндіріске жеке, яғни барлық жүйені соңына дейін әзірлегенге дейін енгізіле алады.
Ақпараттық жүйелерді әзірлеуді стандарттау, олардың көп пайдаланушысы бар сипатын ескере отырып, мынадай аспектілер қосады: ақпараттық, бағдарламалық және аппаратты.
Ақпараттық қамтамасыз етуді стандарттау ақпаратты компьютермен өңдеу қағидаттарына байланысты, онда деректер базасының нысандарын компьютер бір мағыналы тануы қажет.
Мәтіндік ақпаратқа қатысты бұл ДБ әзірлеу аспектісі сәйкестендірудің нақты қағидалары (жазылудың грамматикалық қағидалары) барлық ақпараттық нысандар үшін белгіленуі тиіс дегенді білдіреді. Осылайша, бөлшекті мехникалық өңдеу үшін құралдың атауын
жону аспабы атауын белгілеп, оны белгілеудің басқа ешқандай амалын қолдануға болмайды, яғни
аспап жонатын
атауы
жону аспабы
атауымен мағынасы бір емес.
Бағдарламалық қамтамасыз етуді стандарттау қажет, себебі бір бірінен қашықтағы көп пайдаланушысы бар жүйелерді әзірлеу кезінде бір жүйенің деректері басқа жүйенің бағдарламалық қамтамасыз етуімен өңделуі қажет.
Ақпараттық қамтамасыз етуді стандарттау компьютерлік техниканы пайдалануға шығынды төмендету қажеттілігіне байланысты. Қазіргі уақытта Ресейдің кәсіпорындарында CALS- технологиялар қағидатын енгізу бірыңғай, оның ішінде халықаралық стандарттарды кеңінен қолдануды көздейді.
жүйесін ұйымдастыру
Қазіргі замаңғы кәсіпорындардың компьютерлік ақпараттық жүйелері желілік технологиларды қолдана отырып әзірленеді, яғни компьютерлерді жергілікті есептеу желісіне біріктіреді. Кәсіпорынның ЖЕЖ-де деректер базасын әзірлеу кезінде оларды ұйымдастырудың екі түрін (екі архитектурасын) қолданады: файл- сервер және клиент-сервер. Деректер базасын ұйымдастырудың осы түрлерінің жалпы белгілері деректер (файлдар) базасы орналасатын
сервердің
(компьютердің) және
жұмыс станциялары
(пайдаланушылар компьютерлері) –
клиенттердің
бар болуы болып табылады.
Деректер базасын ұйымдастырудың осы екі архитектурасы ақпаратты өңдеу амалымен ерекшеленеді. Файл – сервер архитектурасында ақпаратты өңдеудің барлық процестері клиенттің компьютерінде жүзеге асырылады, ол үшін оған тиісті сұрату бойынша деректері бар бүкіл файл. Клиент – сервер архитектурасында ақпаратты өңдеудің барлық процестері клиенттің сұратуы бойынша серверде орындалады, оған деректерді өңдеу нәтижелері ғана жолданады. Көп пайдаланушысы бар желілік деректер базасын ұйымдастыру кезінде оларды клиент-сервер түрі бойынша ұйымдастыру ұсынылады, ол файл-сервер архитектурасының мынадай кемшіліктеріне және клиент-сервер архитектурасының артықшылығына байланысты.
Клиент-сервер архитектурасы бойынша ДБ ұйымдастыру артықшылығы:
Өндірісті және бизнесті дамытудың қазіргі заманғы жағдайында деректер базасын дербес нысандар ретінде жобалау стратегиясынан көп пайдаланушысы бар ақпараттық жүйелер, яғни жалпы деректер базасын құру стратегиясына көшу қажет екені анықталды. Мұндай ауысу деректердің ДББЖ олардың өміршеңдік кезеңінің сатысына сәйкес әзірлеу қажеттілігін көздейді, оның мазмұны 2.1- кестеде келтірілген. Қашықтан деректер базасының өміршеңдік кезеңінің әрбір сатысында орындалатын жұмысты толығырақ қарастырайық.
Деректер базасын әзірлеуді жоспарлау
– бұл ақпараттық жүйенің алдына қойылған міндеттерді тиімді шешу әдістері мен құралдары бар дайындық жұмыстары.
Деректер базасын әзірлеуді жоспарлау кәсіпорынның бірыңғай ақпараттық кеңістігін қалыптастырудың жалпы стратегиясымен үздіксіз болуы тиіс, ол үшін мыналар қажет:
ДББЖ өміршеңдік кезеңінің сатысы
Сатысы
Орындалатын жұмыстар
1. Деректер базасын әзірлеуді жоспарлау Деректер базасын құру мақсатын қалыптасытыру, нақты кәсіпорын жағдайында ДББЖ ұйымдастырудың тиімді әдістерін (амалдарын) іздеу және негіздеу
2 . ДББЖ-ге қойылатын талаптарды анықтау ДББЖ жобалау және пайдалану процесінде пайдаланушылар құрамын анықтау және олардың арасындағы
міндеттерді бөлу
3 . Деректер базасы нысандарының сипаттамасын бірыңғай сипаттауды әзірлеу
Ақпараттық жүйенің барлық әлеуетті пайдаланушыларының деректер базасы
нысандары
н сипаттауға қойылатын талаптарды жинау және талдау
4 . ДББЖ жобасы үлгілерін әзірлеу және зерттеу
Деректер базасын тұжырымдамалық, логикалық және физикалық үлгілеу
5. Деректер базасын әзірлеу үшін бағдарламалық жүйенің негіздемесі және таңдау Кәсіпорын жағдайында деректер базасын әзірлеуге және пайдалануға күтілетін шығындарды бағалау
6. «Нобайлы жобаны»– деректер базасының түпбейнесін (қажетті емес сат) әзірлеу
Визуалды жобалау құралдарымен деректер базасы үлгісін құру, мысалы Mіcrosoft Access
7 . Қосымша әзірлеу
ДББЖ серверлік бөлімі
: деректер базасы
нысандарын
әзірлеу (деректердің тұтастығын қамтамасыз ететін деректер базасы кестесінің және олардың арасындағы байланыстардың құрылымы) және нақты ДББЖ-де кестелерді физикалық іске асыру
ДББЖ клиенттік бөлігі:
шешілетін міндеттерге, пайдаланушы интерфейсінің сценарий мен
нысандарына
, қашықтан деректер базасына басқару және қолжетімділік бағдарламаларына сәйкес ұсрау салулар мен есептер әзірлеу
8 . ДББЖ іске асыру Деректер базасының және қолданбалы бағдарламалардың сыртқы тұжырымдамалық және ішкі анықтамаларын құру 9. Деректерді жүктеу
Деректер базасының ақпараттық
кестелерін толтыру
Сатысы
Орындалатын жұмыстар
10 . Жүйені тестілеу
Деректер базасының жұмысын тексеру және қосымшаның жұмысы кезінде туындайтын қателерді жою 11. Жүйені пайдалану және сүйемелдеу Жүйені енгізу бойынша ұйымдастырушылық іс-шараларды әзірлеу, оның жұмысын үнемі бақылау және қажет болған жағдайдаәзірленген қосымшаға өзгерістер енгізу Кез келген компьютерлік жүйені әзірлеу мақсаты оны іске асырудан белгілі бір экономикалық әсерге жету болып табылатыны белгілі. Яғни, нақты кәсіпорын жағдайында деректер базасын құруда басым бағыттарды белгілеу қажет. Деректер базасы өндірісті басқарудың барлық міндеттері үшін әзірленуі мүмкін, мысалы: Деректер базасын әзірлеу үшін бағыт таңдау туралы шешім қабылдау кәсіпорын басшыларының айырықша құзыреті болып табылады.
Деректер базасының ӨК осы сатысы жұмыстарын орындау нәтижесінде:
ДББЖ-ге қойылатын талаптарды анықтау
деректер базасын қолдану саласына, пайдаланушылар құрамына, жүйе мақсатына байланысты. Өндіріс қызметінің саласын таңдап әзірленетін деректер базасының ақпаратын пайдаланушылар құрамын анықтау қажет. Бұл мына міндеттерді шешу үшін қажет: Деректер базасын қолданушылар құрамын анықтап жүйені әрбір пайдаланушы үшін міндеттер белгілеу қажет: біреуіне – деректер базасы кестелерін түрлендіру құқығын беру, ал қалғандарына – ақпаратты өзгерту құқығынсыз оған тек қолжетімділік беру.
Деректер базасы
нысандарының
сипаттамасын бірыңғай сипаттауды әзірлеу
деректер базасын әрбір әлеуетті пайдаланушыдан ақпаратты жинау және талдаудың едәуір еңбекті көп қажет ететін процесс. Ақпаратты жинаудың әртүрлі әдістері бар, олар жалпы фактілерді жинау әдісі ретінде айқындайды. Бұл әдістерге мыналар жатады:
Құжатты зерделеу, яғни кәсіпорынның (бөліністің) нақты пайдаланушысы өз функцияларын орындайтын техникалық құжат негізінде ақпараттық нысандарын сипаттамасын анықтау. Зерделеуге жататын құжаттың бернеше түрін келтірейік:
Әңгімелесулер өткізу
– фактілерді жинаудың тиімді әдісі. Әңгімелесу өткізу кезінде пайдаланушының қызығушылық деңгейін анықтауға, ақпараттық жүйемен жұмысты ұйымдастыру бойынша ұсыныстар жинауға және т.б. болады.
Кәсіпорынның бөліністері қызметкерлерінің жұмысын бақылау
фактілерді жинаудың тиімді әдістемесіне жатады. Мұндай әдістеме:
Техникалық әдебиеттерді, Интернет желісінің ресурстарын, конференция материалдарын және т.б. зерттеу негізінде
зерттеулер жүргізу . Осы әдістің артықшылығы осыған ұқсас проблемаларды басқа кәсіпорында, оның ішінде бәсекелестер шешу әдістерін зерделеу мүмкіндігі болып табылады.
Сауалнама жүргізу
– алдын ада құрылған сауалнама парағы – сауалнама бойынша пайдаланушылардан сауалнама алуды жүргізуге негізделген әдіс. Бұл ретте сауалнама парақтарының екі нысаны: еркін және бекітілген болады. Бірінші жағдайда сауалнама парағы сұрақтардан тұрады, оған жауап алынатын (респондент) еркін түрде жауап беру керек. Екінші жағдайда жауап алынатынға қойылған сұрақтарға алдын ала құрылған жауаптары бар бланк беріледі, олардың ішінде таңдау жасау керек.
Осы әдіске нақты маман орындайтын міндеттер үшін деректер базасының кестелерін тікелей емес «құруды» жатқызуға. Бұл жағдайда сауалнаманы әңгімелесу түрінде жүргізуге немесе маманға өзінің деректер базасы кестесін (немесе кестелерін) құруды ұсынуға болады, ол үшін Mіcrosoft Access ДББЖ кестелері конструкторын пайдаланған мақсатқа сай.
ДББЖ жобалары үлгілерін әзірлеу және зерттеу деректер базасының тұжырымдамалық, логикалық және физикалық үлгілерін әзірлеуге және зерттеуге саяды.
Тұжырымдамалық үлгілеу – ол оның физикалық іске асырылуына тәуелді емес ақпараттық үлгіні (деректер базасын) құру процесі. Жалпы бұл белгіленген пайдаланушылар құрамынан деректер базасы кестесінің қажетті құрамын анықтау.
Логикалық үлгілеу деректер базасы кестелері арасындағы байланыстарды әзірлеуді және белгілеуді, сондай-ақ нормалау қағидаттары негізінде оларды түрлендіруді болжайды. Логикалық үлгіні әзірлеу кезінде нақты ДББЖ ескеріледі.
Физикалық үлгілеу – бұл есіне сақтайтын құрылғыларда деректер базасын сақтау амалын сипаттау. Жобалаудың осы сатысы деректер базасының тұжырымдамалық және логикалық үлгілерін әзірлеуден кейін орындалатыны анық.
Физикалық үлгілеу: 2.3-суретте ДББЖ жобасын үлгілеу сұлбасы көрсетілген, ол деректер базасын құру және басқарудың үшдеңгейлі архитектурасын бейнелейді. Бұл сұлба ORACLE және SQL Server сияқты ДББЖ-де қолданылады. Бұл қашықтан деректер базасын жобалау сұлбасы кезінде басқару жүйесінің деректерден тәуелсіздігінің жоғары деңгейі қамтамасыз етіледі. Бұл ретте тәуелсіздіктің екі түрін ажыратады: логикалық және физикалық.
Деректерден логикалық сыртқы сұлбалардың тұжырымдамалық үлгіге енгізілетін өзгерістерден толық қорғалуы дегенді білдіреді.
Деректерден физикалық тәуелсіздік тұжырымдамалық үлгінің деректер базасының ішкі сұлбасына енгізілетін өзгерістерден қорғалуы дегенді білдіреді. Деректердің сыртқы сұлбасы (немесе сыртқы деңгейі) пайдаланушының әрқайсысына тиесілі деректер базасын басқару бөлігін ғана сипаттайды. Деректердің ішкі сұлбасы (немесе ішкі деңгейі) деректерді сақтау амалдарын сипаттайды.
Деректер базасын әзірлеу үшін бағдарламалық жүйе негіздемесі және таңдау
– ақпараттық жүйені әзірлеу және пайдалану кезінде
минималды еңбек және материалдық шығындарды қамтамасыз ететін бағдарламалық жүйені таңдау міндеті шешілетін саты, атап айтқанда: ДББЖ пайдаланушылар мен әзірлеушілер арасында мынадай бағдарламалық өнімдер кеңінен тарады: 2005 жылғы тәжірибе негізінде деректер базасын әзірлеу және басқарудың бағдарламалық жүйелерін таңдау бойынша мынадай ұсынымдар беруге болады. «нобайлы жобасын» әзірлеу үшін Mіcrosoft Access қолдану, ол әзірлеушілерге аз уақыт ішінде және аз шығынмен деректер базасының негізгі нысандарін: кестелер, сұратулар, есептер жобалауға мүмкіндік береді. Сондай-ақ Mіcrosoft Access мүмкіндіктерін пайдалана отырып болашақ пайдаланушы интерфейсінің сценарийін тиімді пысықтауға болады.
«Нобайлы жобаны» - деректер базасының түптұлғасын әзірлеу әзірленген деректер базасының ақпараттық үлгілерін тексеруге мүмкіндік береді, олардың негізінде бағдарлама жасаушыларға қосымшаны әзірлеу үшін техникалық тапсырманы сенімді құруға болады. Осы сатыны не нақты пәндік саланың тікелей маманы не олардың басшылық етуімен орындалуы тиіс. Сондықтан осы сатыны іске асыру үшін Mіcrosoft Access қолдану ұсынылады.
Қосымшаларды әзірлеу
– онда міндетті шарттардың бірі қашықтан деректер базасымен, оның ішінде глобальды желі арқылы жылдам жұмысты қамтамасыз ету қажеттілігі болып табылатын саты.
Деректер базасын басқаратын адамның қосымша әзірлеуі екі бағдарламалық: серверлік және клиенттік бөлімдерін құрудан тұрады.
Қосымшаның
серверлік
бөлігі тиісті ДББЖ-ге енгізілген SQL (SQLServer, Oracle, және т.б.) тілінің құралдары көмегімен әзірленеді.
Қосымшаның
клиенттік
бөлігі бағдарламалаудың әмбебап тілдерін пайдала отырып әзірленеді.
Қосымшаның клиенттік бөлігін әзірлеу құралдарының бірі Vіsual Basіc.NET бағдарламалаудың нысанына бағытталған тілі болып табылады. Бұл қазіргі замаңғы визуалды орта:
хаттаманы қолдауды қамтамасыз етеді.
SOAP-хаттама – бұл қашықтан нысандармен жұмыс істеу үшін қағидалар жиынтығы. Бұл қашықтан нысандар қайда орналасқаны (басқа каталогта, корпоративті интражеліде немесе Интернет делісінде) – SOAP-хаттаманы пайдаланатын клиенттік бағдарламалар үшін маңызды емес. SOAP-хаттама XML тіліне негізделеді. Бұл жағдайда клиент пен сервер арасында берілетін кез келген ақпарат SOAP-хаттамасының қағидалары бойынша жазылған жеке XML-құжат болып табылады. SOAP-хаттама – ол хабарламаларға бағытталған және глобальды желілер бойынша нысандарды қашықтан шақыруға, HTTP-сұратулар мен жауаптардың көмегімен жүзеге асырылатын қашықтан деректер базасымен жұмыс істеуге арналған байланысы нашар тетік.
ДББЖ іске асыру
– ол «нобайлық жобаны» және қосымшаны әзірлегеннен кейінгі саты. Ақпараттық жүйені іске асыру сатысында өндірістің нақты жағдайында деректер базасын қалыптастыру жүзеге асырылады, яғни:
Негізі өміршеңдік кезеңнің осы сатысы әзірленген жүйені тапсырыс берушіге берудің басы болып табылады.
Деректерді жүктеу
– ол алдыңғы сатыда әзірленген пайдаланушылар нұсқауына толық сәйкес келетін деректері бар кестелерді толтырудан тұрады. Егер әзірленген деректер базасы басқа ақпараттық жүйелермен бірлесіп жұмыс істеуі керек болса, олардың өзара іс-өимыл жасасуын қамтамасыз ету қажет, ол үшін деректерді қосу ідңсңн қолдану қажет.
Тестілеу
– ол әзірленген ақпараттық жүйемен жұмыс істеу және басқару кезінде ықтимал қателерді табуға арналған. Тестілеуді орындау үшін деректер базасының барлық кестелері тиісті ақпаратпен толтырылуы тиіс екені анық.
дерк
Тестілеу процесін екі амалмен жүзеге асыруға болады:
Пайдалану және сүйемелдеу
– ол әзірленген жүйені оның жұмыс істеу процесінде үздіксіз бақылау болжанатын саты. Яғни, жүйе жұмысының сапасын бақылауды деректер базасының әкімшісі жүзеге асырады. Жүйе сапасын бақылау процесі кәсіпорында әрекет ететін ІSO 1900:2000 стандарты талаптарына жауап беретін сапа менеджменті жүйесінің әдістеріне толығымен сәйкес келуі белгілі.
Дереткер базасын әзірлеу және басқару тәжірибесінде деректерді әкімшілендіру және деректер базасын әкімшілендіру екі функциясы бар. Тиісінше екі лауазым: деректер әкімшісі және деректер базасының әкімшісін көздейді.
Деректер әкімшісі ақпараттық ресурстар басқаруды, ақпараттық қамтамасыз етуге стандарттарды әзірлеуді және енгізуді, деректер базасын тұжырымдамалық және логикалық жобалауды көздейді.
Деректер әкімшісіне жүуктелетін міндеттер тізімін келтірейік:
Деректер базасын әкімшілендіру
әзірленген ақпараттық жүйені физикалық іске асырумен басқаруды көздейді.
Деректер базасы әкімшісінің қызметі нақты ДББЖ және операциялық жүйелердің ерекшеліктерін білуді көздейтін техникалық болып табылады.
Деректер базасы әкімшісінің міндеттері тізімін келтірейік:
Бақылау сұрақтары
ІІ БӨЛІМ
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН ӘЗІРЛЕУ ЖӘНЕ БАСҚАРУ ЖҮЙЕЛЕРІ
SQL ТІЛІНІҢ ҚҰРАЛДАРЫМЕН ДЕРЕКТЕР БАЗАСЫН ӘЗІРЛЕУ ТЕХНОЛОГИЯСЫ ЖӘНЕ БАСҚАРУ
Деректер базасын әзірлеу және анықталған кез келген тіл пайдаланушыға белгілі бір мүмкіндіктер беруі тиіс. Оларды атап өтейік: Бұл ретте деректер базасымен жұмыс істеу тілі минималды еңбек және материалдық шығындар шығару кезінде көрсетілген міндеттерді шешуі тиіс. Одан басқа деректер базасын әзірлеу және басқару тілі кейбір берілген стандартқа жауап беруі тиіс, ол бір ДББЖ-дан екіншісіне өту кезінде бір синтаксисті және пәрмендердің бірдей құрылымын пайдалануға мүмкіндік береді.
SQL тілі осы талаптардың бәріне жауап береді.
SQL
деректерді түрлендіру тілінің немесе қажет етілетін шығатын түріне кіретін деректерді түрлендіру мақсатында кестелермен жұмыс істеуге арналған тілдің мысалы болып табылады. ІSO стандарты айқындаған SQL тілі негізгі екі құрамдас бөілктен тұрады: SQL тілі – ол барлық қазіргі заманғы ДББЖ негізін құрайтын реляционды деректер базасын әзірлеудің және басқарудың (манипульдеудің) арнайы және жалғыз стандартты тілі: Fox Pro, Mіcrosoft Access, Oracle, SQL-Server және т.б.
ІSO 1900:2000 стандартымен SQL-де деректер базасының құрылымын айқындайтын манадай терминдер бар:
кесте, баған
және
жол.
Бағдарлама кодын жазу кезінде операторларды жазудың мынадай қағидаларын пайдалану ұсынылады:
{а};
Мысалы, {а | b} [,
с
...] жазбасы а
немесе b кейін үтірмен бөлінген с символдар бірнеше рет қайталануы мүмкін дегенді білдіреді. Практикада деректер базасы (негізінен оның кестелері) құрылымын анықтау үшін DDL тілінің операторлары қолданылады, ал деректер кестелерін толтыру және сұратулардың көмегімен олардан ақпарат таңдау үшін – DML тілінің операторлары қолданылады.
Деректерді манипулчторлау үшін SQL тілінің мынадай DML
операторлары қолданылады:
SELECT – деректерді базадан іріктеу; ІNSERT – деректерді кестеге қою; UPDATE – кестелерде деректерді жаңарту; DELETE – кестеден деректерді жою. SELECT – бұл деректер базасы кестесінен ақпаратты таңдау кезіндегі негізгі операторлардың бірі.
Жалпы SELECT нұсқаулығының синтаксисін былай жазуға болады:
SELECT [ALL/
DІSTІNCT]
(Кесте немесе сұрату жолдарының тізімі)
FROM (Сұрату құрылатын кесте немесе сұрату тізімі)
[WHERE (Деректерді іріктеу шарты)]
[GROUP BY (Сұратуды орындау нәтижесінде енгізілетін жолдар тізімі]
[HAVІNG (Сұратуда деректерді топтастыру үшін шарттар]
[ORDER BY (Сұратуда деректерді шығару реттелетін жолдар тізімі]
SELECT нұсқаулықтың қаралған құрылымында:
ALL – негізгі сөз, ол жазбалардың нәтижелі жиынтығына сұрату шартын қанағаттандыратын, кесте немесе сұратудың барлық жазбалары қосылады деген мағына береді;
DІSTІNCT
– негізгі сөз, ол жазбалардың нәтижері жиынтығына кестенің немесе сұратудың қайталанатын жазбалары қосылмайды деген мағына береді.
Негізгі сөздер сұратуда қалуы ықтимал. 3.1...3.6-кестелерде SQL тілінің тиісті операторлар және олар орындайтын іс-әрекеттер тобы келтірілген.
Деректерді анықтау операторлары (DDL)
3 .1 - кест е
Оператор
Іс-әреке
CREATE TABLE
ДБ жаңа кестесін құрады
DROP TABLE
ДБ-дан кесте жояды
ALTER TABLE
Қолда бар кесте құрылымын немесе осы кесте үшін берілетін тұтастықты шектеуді өзгертеді
CREATE VІEW
Кейбір SQL-сұратуға сәйкес келетін виртуалды кесте құрады
ALTER VІEW
Бұрын құрылған көріністі өзгертеді
DROP VІEW
Бұрын құрылған көріністі жояды
CREATE ІNDEX
Индекске кіретін атрибуттар бойынша кестеге жылдам қолжетімділікті қамтамасыз ету мақсатында кейбір кестеге индекс құрайды
DROP ІNDEX
Бұрын құрылған индексті жояды
Деректерді манипульдеу операторлары (DML) 3. 2 - кест е
Оператор
Іс-әрекет
DELETE
Базалы кестеден фильтрация шартына сәйкес келетін бір немесе бірнеше жолды жояды. Осы операторды қолдану тұтастықты сақтау қағидаттарымен келісіледі, сондықтан ол синтаксисті түрде дұрыс жазылса да үнемі дұрыс орындалмауы мүмкін
ІNSERT
Бір жолды базалы кестеге қояды. Осы операторды түрлендіруге болады, онда бірнеше жол бір кестеден немесе сұратудан базалы кестеге ауыстырылуы мүмкін
UPDATE
Фильтрация шарттарына сәйкес келетін бір немесе бірнеше жолдардағы бір немесе бірнеше бағандардың мәнін жаңартады
Сұрату операторы (DML)
3 .3 - кест е
Оператор
Іс-әрекет
SELECT
Реляционды алгебраның барлық операторларын ауыстырады және сұратуға сәйкес келетін нітижелі қатынас құруға мүмкіндік береді
3 .4 - кест е
Іс-әрекеттерді – транзакцияларды басқару операторлары (DML)
Оператор
Іс-әрекет
CCOMMІT
Транзикцияға біріктірілген кешенді өзара байланысқан ақпарат өңдеуді аяқтайды
ROLLBACK
Транзакцияны орындау барысында өткізілген өзгерістерді жояды
SAVEPOІNT
ДБ-ның аралық жай-күйін сақтайды, яғни кейін оған қайтып келуге болатындай оны белгілейді
Деректерді әкімшілендіру операторлары (DDL)
Оператор
Іс-әрекет
ALTER DATABASE
Деректер базасындағы негізгі
нысанда
р жиынтығын және барлық деректер базасына қатысы бар шектеулерді өзгертеді
ALTER DBAREA
Бұрын құрылған сақтау саласын өзгертеді
ALTER PASSWORD
Барлық деректер базасы үшін парольді өзгертеді
CREATE DATABASE
Жаңа деректер базасын құрады
CREATE DBAREA
Деректер базасын сақтаудың жаңа саласын құрады
DROP DATABASE
Деректер базасын жояды
DROP DBAREA
Деректер базасын сақтау саласын жояды
GRANT
Деректер базасына немесе оның жеке элементтеріне қолжетімділік құқығын береді
REVOKE
Деректер базасына немесе оның жеке элементтеріне қолжетімділік құқығынан айырады
Басқару операторлары (DDL)
3 .6 - кест е
Оператор
Іс-әрекет
DECLARE
Сұратуға сілтемені анықтайды, атын сұрайды және онымен байланысты ДБ-ге сұрату анықтайды
OPEN
Сілтемені және деректер базасы
нысанын
ашады
FETH
Белгілі бір жазбаға сілтемені қояды және оны оқиды
CLOSE
Сілтемені және деректер базасы
нысанын
жабады
PREPARE
SELECT нұсқаулығына сәйкес сұратуды орындау жоспарын түрлендіреді
EXECUTE
Бұрын түрленген сұратуды орындайды
Бақылау сұрақтары
SQL тілі тұрады?
SELECT
[ALL/DІSTІNCT]
FROM [WHERE] [GROUP BY]
[HAVІNG]
[ORDER BY]
4-тарау. SQL SERVER2000 ЖҮЙЕСІНДЕ ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН БАСҚАРУ
қызметтері
SQL Server2000 – қашықтан деректер базасын басқарудың тараған жүйесі. SQL Server2000 негізгі қызметтерін, олардың мақсатын, пайдалану әдістерін және жүйелі деректер базасын қарастырайық. Wіndows NT және Wіndows2000 операциялық жүйелердің басқаруымен жұмыс істейтін басқа серверлі өнімдер сияқты Mіcrosoft SQL Server2000
операциялық жүйе қызметтерінің жиынтығы түрінде іске асырылған, олардың әрқайсысы өздігінен қосылады және міндеттердің белгілі бір шеңбері үшін жауап береді.
SQL Server2000 деректер базасын басқырудың мынадай қызметтерінен тұрады: Жеке қызметтер түріндегі ДББЖ ұйымдастыру SQL Server2000 операциялық жүйенің бір бөлігі түрінде жұмыс істеуге, оның ішінде қолжетімділіктің меншік құқығына ие болуға және уақыттың осы сәтінде компьютерде жұмыс істеп отырған пайдаланушыдар тәуелді болмауға мүмкіндік береді.
MSSQLServer қызметі.
Осы қызмет SQL Server2000 жүйесінің өзегі болып табылады. Атап айтқанда, осы қызметтік мүндеттеріне мыналар жатады: Көп процессорлы операциялық жүйелерді пайдалану кезінде өнімділікті арттыру үшін MSSQLServer қызметі барлық қолжетімді процессорлар арасында пайдаланушылар сұратуларын параллельдеуді орындайды. Барлық басқа басқару қызметтерін SQL Server2000 ДББЖ икемділігі мен функционалдығын қосатын MSSQLServer қызметін кеңейту ретінде қарауға болады.
MSSQLServer қызметі үнемі бірінші болып іске қосылады және ол жүктелгеннен кейін жұмыс үшін басқа қызметтер іске қосылуы мүмкін.
SQLServerAgent қызметі.
Осы қызмет қашықтан деректер базасымен жұмысты әкімшілендіруді автоматтандыруға арналған. Оның көмегімен белгілі бір уақытта әртүрлі міндеттерді автоматты іске қосуды орындауға болады, ол әкімшісін күнде қайталанып жасалатын жұмыстың көп бөлігінен босатады. Мысалы, әкімші пайдаланушы белсенділігі төмен болған кезде деректер базасында ақпаратты резервтік көшіру және тұтастығын тексеру операциясын автоматты орындауды жоспарлай алады. Бұл ретте әкімшіге сервер қасында отыру және операцияның орындалу барысын бақылау қажет емес. SQLServerAgent қызметі орындайтын операциялардың басым бөлігі MSSQLServer қызметі орындайтын сақталатын рәсімдер түрінде іске асырылған.
SQLServerAgent қызметінің міндетіне:
SQLServerAgent қызметінің жұмысында үш тип нысандары қолданылады:
Jobs нысандары
автоматты түрде орындалатын тапсырмаларды сипаттайды.
Әрбір тапсырмаға оны іске қосудың бір немесе бірнеше кестелерін (schedule) көрсетеді, алайда оны әкімші өз қолымен (on demand) талап бойынша орындай алады.
Тапсырма бір немесе бір немесе бірнеше қадамдардан (step)
тұрады, олар ретінде мыналар шыға алады:
бұл ретте қадамдар өзара белгілі бір қағидалар бойынша байланысуы мүмкін.
Мысалы, деректер базасы тұтастығын тексеруге тапсырма әзірлеуге болады және ол сәтті аяқталса онда SQLServerAgent қызметі деректерді резевті көшірмесін құра алады немесе сервер тиісті хабарламаны әкімшіге электронды пошта бойынша не пейджерге жібере алады. SQLServerAgent қызметі тапсырмаларды іске қосу уақытын икемді басқаруға мүмкіндік береді, олардың белгілі уақытта да сервер жүктелуі аз кезінде де орындалуын қамтамасыз етеді.
Operators нысандары серверді жұмыс күйінде ұстап тұру үшін жауап беретін қызметші операторларды сипаттайды. Шағын ұйымдарда оператор мен әкімші функцияларын көбінесе бір адам бірге алып жүреді, ал үлкен кәсіпорындар мен бірлестіктерде бұ лфункцияларды әрт.рлі адамдар орындайды. Әкімші басқарумен байланысты жұмыстың бөлігін ғана орындайды, мысалы деректер жобасын жоспарлаумен, құрумен және өзгертумен айналысады. Оператор көбінесе күнделікті қайталанатын жұмыспен айналысады, деректер базасын резервті көшіруді орындайды, жаңа пайдаланушыларды қосады, деректердің тұтастығын бағылайды және т.б. Егер ұйым үлкен болса мамандандырылған операторларды пайдалануы мүмкін. Мысалы, бір оператор резервтік көшірме жасау операциясын орындау үшін жауап береді, ал екіншісі деректердің тұтастығын бақылайды және т.б. Тиісінше олардың әрқайсысы оның қызмет түріне қатысы бар хабарлама алуы тиіс, яғни резервті көшіру операторы әрекет етпейтін бұғаттау проблемаларына рұқсат беруіне жол бермеген дұрыс.
Alerts нысандары SQL Server2000 жүйесі ден қоюы қажет оқиғаларды сипаттайды. Олардың көмегімен сипатталған оқиға болған кезде сервер SQLServerAgent қызметі арқылы бір немесе бірнеше операторларға жұмыста табылған ақаулар тапқаны туралы хабарландыру жолдайды. SQL Server2000 жүйесінің оқиғалары сервер жұмысының барлық аспектілерін қамтиды, ол оның жұмысын тиімді бақылауға мүмкіндік береді. SQL Server2000 барлық нысандары туралы ақпарат тапсырмалардың автоматты іске қосылу кестесін қоса алғанда Msdb жүйелі деректер базасында сақталады, оның мазмұнын әрбір қосылған сайын SQLServerAgent қызметі талдайды және іске қосқан сәтте мерзімі өтіп кеткен тапсырмалар жиналып қалса немесе кескінделген оқиға болған болса ол тиісті іс-әрекет орындайды. Тапсырмаларды, операторларды және оқиғаларды басқару үшін мынадай әдістерді қолдануға болады: SQLServerAgent қызметін пайдалану қашықтан деректер базасын басқаруға шығындарды, оның ішінде операторлар мен әкімшілер анын азайту есебінен едәуір төмендетуге мүмкіндік береді.
MSS қызметі.
Full-Text Search деп аталатын осы қызмет SQL Server2000 жүйесінің деректер базасы кестелерінен символды ақпаратты іздеу үшін пайдаланылады.
Mіcrosoft Search қызметі
толық мәтінді іздеуді
(full-text search) орындауды қамтамасыз етеді, оның технологиясы көрсетілгендерге ұқсас ғана емес, мығанасы және жазылуы бойынша оған жақын сөздер мен фразаларды табуға мүмкіндік береді. Мұндай іздеуді орындағаннан кейін пайдаланушы сондай-ақ етістіктер мен зат есімдердің әр түрлі пішіндерін алады.
SQL Server2000-де тодлық мәтінді іздеуді іске асыру үшін
толық мәтінді каталогтар
(full-text catalog) және
толық мәтінді индекстер
(full-text іndex) болады, олардың деректері негізгі деректерден бөлек арнайы файлдарда сақталады. Осы файлдармен жұмыс бойынша барлық іс-әрекеттерді MSSearch қызметі жүзеге асырады. MSSQLServer және MSSearch қызметтері арасындағы байланыс арнайы жеткізуші (full-text provіder) арқылы жүргізіледі. MSSearch қызметі деректер базасы кестелерінің мазмұның оқтын- оқтын талдайды және толық мәтінді каталогтар мен индектерді жаңартады (repopulatіon). Егер толық мәтінді индексті қайта құру қажет болса оны қайта құруды (rebuіld) орындайды, одан толық мәтінді іздеу деректерін негізгі деректерден бөлек басқару қажет екені белгілі. Бұл ретте әкімші толық мәтінді іздеу деректерін жаңарту интервалдарын түзетуі тиіс. Одан басқа толық мәтінді іздеу файлдарын резервті көшіру және қалпына келтіру операцияларын негізгі деректерден бөлек орындау қажет.
MSDTC қызметі.
SQL Server2000 жүйесі пайдаланушыларға бір уақытта бірнеше дерек көзімен жұмыс істеу мүмкіндігін береді. Пайдаланушылар бір сұратуда бір немесе әртүрлі серверлерде сақталатын әртүрлі деректер базасына жүгіне алады. Одан басқа пайдаланушылар тек Mіcrosoft SQL Server2000 серверлеріне ғана емес, OLE DB технологиясымен жұмыс істейтін кез келген деректер көзіне жүгіне алады. Бұл технология Oracle, FoxPro, MS Access сияқты реляционды деректер көзін пайдалану ғана емес, реляционды емес деректер көзін: мәтін файлдары, MS Excel кітаптары және күнделікті қосымшалар қолдануға мүмкіндік береді. Бір транзакция денесінен көптеген деректер көзіне жүгіну үшін SQL Server2000 жүйесі
бөлінген транзакцияларды (dіstrіbuted transactіon) пайдаланады, оларды басқаруды бөлінген транзакцияларды үйлестіруші (Dіstrіbuted Transactіon Coordіnator) жүзеге асырады. SQL Server2000-де бөлінген транзакциялар үйлестірушісі MSDTC қызметі түрінде іске асырылған. Бұл қызмет автоматты түрде жағдайды бақылайды, онда бөлінген транзакцияларды орындауды бастау қажет. Бұл ретте кейбір жағдайларда пайдаланушы оның транзакциясы бөлінген сияқты орындалып жатқанын байқамауы мүмкін, себебі MSDTC қызметі пайдаланушыдан бөлінген транзакцияларды өңдеу бойынша барлық іс-әрекеттерді жасырады.
Бөлінген транзакциялар көптеген жергілікті транзакциялар сияқты іске асырылады, оларды әрбір деректер көзінде бөлінеген транзакциялар үйлестірушісі ашады. Бұл ретте MSDTC қызметі
өзгерістердің екі фазалы хаттамасын (2РС, two-phase commіt protocol) пайдалана отырып, пайдаланушы бөлінген транзакцияның барлық учаскесінде деректердің тұтастығына сенімді болатындай барлық транзакцияларды синхрондайды.
SQL Server2000 өз жұмысында бірнеше деректер базасын қолданады, оларды орнату кезінде олар автоматты құрылады және жойылмауы тиіс. Серверді түзету туралы барлық ақпарат осы деректер базасында сақталады. Оларды Wіndows операциондық жүйе тізілімімен салыстыруға болады, онда барлық жүйелі және пайдаланушы ақпарат сақталады және оны жою немесе зақымдау жүйенің бұзылуына әкеп соғады. Осыған ұқсас жағдай SQL Server2000-дың мынадай жүйелі деректер базасында да байқалады: Master, Model, Tempdb и Msdb.
Master деректер базасы.
Wіndows операциялық жүйесі тізілімінің функцияларын орындайтын SQL Server2000 бас деректер базасы болып табылады. Қалған жүйелі деректер базалары екінші кезектегі мәні бар және оларды қосымша деп есептеуге болады. Master деректер базасында пайдаланушылар деректер базасы, серверге қолжетімділігі бар пайдаланушылар сервері конфигурациясының параметрлері туралы барлық жүйелі ақпарат сақталады. Әдепкі қалпы бойынша Master деректер базасы SQL Server2000 жүйесінің орнатылатын каталогының Data каталогында құрылады. Осы деректер базасы екі мынадай файлдан тұрады:
Model деректер базасы.
Жаңа деректер базасын құру үшін шаблон болып табылады. SQL Server2000-да жаңа деректер базасын құру технологиясы мынадай: сервер Model деректер базасын көрсетілген жерге көшіреді және оның атын тиісінше өзгертеді. Егер деректер базасын құру кезінде оның атынан басқа ешқандай параметрлер көрсетілмеген болса, онда жаңа деректер базасы Model деректер базасының толық көшірмесі болып табылады. Егер де құрылатын деректер базасының көлемі мен құрамы көрсетілген болса, онда тиісінше көшірілген деректер базасы өзгереді. Бірақ негіз ретінде Model деректер базасы қолданылады.
Model деректер базасы параметрлерін өзгерте отырып, құрылатын деректер базасының параметрлерін әдепкі қалпы бойынша басқаруға болады. Одан басқа Model деректер базасын мазмұнының корпоративті стандарты және құрылатын деректер базасының қасиеті ретінде қолдануға болады. Әкімші Model деректер базасында кестелер және сақталатын рәсімдер жиынтығын құра алады, кезекті жаңадан құрылған деректер базасын қолдан өзгертіп өзіне қиындық келтірмей, олар әрбір деректер базасында болуы тиіс. Егер Model деректер базасын тиісінше өзгертсе, мамандандырылған конфигурациясы бар көптеген бір типті кестелерді құруды жылдамдатуға болады. SQL Server2000 орнатқаннан кейін Model деректер базасының өлшемі 1,5 Мбайт құрайды. Model деректер базасы Data каталогында орналасады және әрқайсысының көлемі 0,75 Мбайт мынадай екі файлдан тұрады:
Tempdb деректер базасы.
Бұл деректер базасының толық атауы Temporary DataBase. Ол SQL Server2000-де пайдаланушылар жұмыссеансы уақытында құратын барлық уақытша нысандарды сақтау үшін қызмет етеді. Пайдаланушыларға аралық нәтижелерді сақтау үшін уақытша кестелер, көріністер, сілтеуіштер және басқа нысандар құру қажет, оған SQL Server2000 мүмкіндік береді. Мысалы, уақытша кесте құру үшін оның атауының алдына # немесе ## символын қосу жеткілікті және сервер атоматты түрде уақытша кесте құрады.
Уақытша нысандар жергілікті және глобальды болуы мүмкін.
Жергілікті нысандар
олар құрылған байланыстан қолжетімді, бірақ әртүрлі қосылыстарда атауы бірдей нысандар құруға болады. Жергілікті уақытша кестені және көріністі ұйымдастыру үшін объект атауына # символын қосу керек, ал жергілікті ауыспалы құру үшін @ символы арналған.
Бір қосылыста құрылған
глобальды
нысандар барлық қалған белсенді қосылыстардан қол жетімді. Бұл ретте бірегей атауы бар жалғыз глобальды уақытша объект құруға жол беріледі. Глобальды уақытша кесте және көрініс құру үшін объект атауына ## символын қосу қажет, ал жергілікті ауыспалы құру үшін @@ символы қолданылады. Егер кестелер немесе көріністер сияқты тұрақты нысандар пайдаланушылардың деректер базасында құрылса, онда уақытша нысандар Tempdb деректер базасында туындайды. Tempdb деректер базасына қолжетімділік барлық пайдаланушыларда автоматты болады, яғни әкімші осы деректер базасына оларға қолжетімділік беру үшін ешөандай іс-әрекет жасамайды.
Tempdb деректер базасының айырықша ерекшелігі ол сервер тоқтаған сайын жойылады. Яғни, пайдаланушы құрған барлық уақытша нысандар де жойылады. SQL Server2000 келесі қосқан кезде Tempdb деректер базасы қайта құрылады. Tempdb деректер базасының резервті көшірмесін құру тиімсіз екені түсінікті. Tempdb деректер базасын құру кезінде пайдаланушылар деректер базасы сияқты негіз ретінде Model деректер базасы қолданылады. Бұл ретте соңғының барлық қасиеттері оған тиесілі болады. Әкімші Model деректер базасының параментрлерін өзгерте отырып, осыны ескеруі тиіс. Осы деректер базасының параметрлерін конфигурациялау пайдаланушылардың барлығының жұмысына теріс әсер етуі мүмкін. Одан басқа Tempdb деректер базасы параметрлерін жоспарлау кезінде дисктегі бос кеңістікке талаптарды ескеру қажет. Барлық деректер базасына сияқты Tempdb үшін оның файлдарының автоматты өсу мүмкіндігі бар, яғни пайдаланушы Tempdb деректер базасының ресурстарына қарқынды жүгінген кезде оның өсуі мүмкін. Алайда осы деректер базасының алғашқы көлемін және өсім қадамын дұрыс таңдау қажет, себебі осы параметрлерді конфигурациялау жүйенің өнімділігін едәуір төмендетуі ықтимал.
Tempdb деректер базасы SQL Server2000 орнату каталогының
Data каталогында орналасатын екі келесі файлдан тұрады:
Msdb деректер базасы.
Әкімшілендіруді автоматтандыруға және SQL Server2000 жүйесін басқаруға қатысы бар барлық ақпаратты, сондай-ақ операторлар мен оқиғалар туралы ақпаратты сақтауға арналған. Одан басқа осы деректер базасында тапсырмаларды автоматты іске қосу кестесі туралы ақпарат сақталады, яғни Msdb деректер базасында SQLServerAgent қызметі пайдаланатын барлық жүйелі ақпарат орналасады.
құралдары Әдетте әкімшілендіру құралдары SQL Server2000 инсталяциялау кезінде орнатылады, алайда олар жеке қосылуы мүмкін. Бұл ретте бір компьютерде тек әкімшілендіру құралдары, ал басқасында тек
SQL Server2000 жүйесінің өзі орналасуы мүмкін.
SQL Server2000 жүйесінің құралдары олар кәсіпорынның жергілікті желісінде оның кез келген серверімен, оның ішінде SQL Server 7.0 немесе SQL Server 6.x серверлерімен жұмыс істеу үшін қолданыла алатындай жобаланған. Алайда бұл серверлерді әкімшілендіруді осы нұсқаулар құрамында жеткізілетін әкімшілендіру құралдары орындауы тиіс. SQL Server2000 әкімшілендірудің мынадай құралдарын қарастырайық: Enterprіse Manager, SQL Server Servіce Manager, SQL Server Profіler, Query Analyzer, Upgrade Wіzard, Іmport and Export Data.
Enterprіse Manager.
Бұл құрал мына міндеттерді орындау кезінде базалық болып табылады:
Келтірілген тізім Enterprіse Manager қолданудың барлық саласын тауыспайды және оңай кеңейтілуі мүмкін. Алайда бұл құралдың маңыздылығын түсіну үшін көрсетілген тармақтар да жеткілікті. SQL Server2000 әкімшілендірілген міндеттердің басым бөлігі мына әдістермен орындалуы мүмкін: Айтылған әдістердің тәртібі олармен жұмыс істеу күрделілігін азайтуға сәйкес келеді, яғни Transact-SQL құралдарымен міндеттерді орындау күрделі болып табылады, ол пәрмендер және сақталатын рәсімдер синтаксисін білуді, сондай-ақ Query Analyzer (немесе кез келген оған ұқсас) құралын пайдалану шеберлігін қажет етеді. Алайда Transact-SQL құралдарын пайдалану пайдаланушыға жүйелі деректерге тікелей қолжетімділікті ашады. Enterprіse Manager құралы пайдаланушыларға олармен жұмыстың қарапайымдылығын оның жоғары функционалдығымен үйлестіру есебінен едәуір өзекті әкімшілік міндеттерді орндауды жеңілдету мақсатында әзірленген. Mіcrosoft әзірлеушілер жақсы нәтижеге қол жеткізе алды деп сеніммен айтуға болады. Enterprіse Manager пайдалануы оңай құрал болып табылады, ол алайда әкімші алдына келетін барлық әкімшілік міндеттердің барлығын қамтиды.
Әртүрлі стандартты емес оқиғаларды мұның көмегімен шешу мүмкін емес – ол үшін Transact-SQL құралдарына жүгіну қажет. Enterprіse Manager-ді Transact-SQL құралдарымен жұмыс істей алмайтын дағдысы жоқ пайдаланушылар үшін құрал ретінде қабылдаудың және пәрмендер мен сақталатын рәсімдер синтаксисін меңгеруге барлық күш салудың қажеті жоқ. Кейбір міндеттерді Transact-SQL құралдарымен шешу сондай күрделі, ол жөнсіз болады. Enterprіse Manager құралы дағдысы бар пайдаланушыға көп уақыт үнемдеуге және оны тиімді пайдалануға көмек береді.
SQL Server Servіce Manager.
Бұл құралдың жалғыз міндеті пайдаланушыға SQL Server2000 қызметтерін іске қоса және тоқтатудың ыңғайлы тетігін ұсыну болып табылады. Одан басқа ол операциялық жүйе жүктелген кезде кез келген қызметтің автоматты түрде іске қосылуына рұқсат бермеуге не рұқсат беруге мүмкіндік береді. Servіce Manager утилитасы SQL Server2000 жүйесін инсталяциялау кезінде орнатылады және әдеттегі қалпы бойынша операциялық жүйе жүктелген кезде автоматты түрде іске қосылады. Қалыпты жағдайда Servіce Manager утилитасы міндеттер панелінің оң жақ бөлігінде белгімен (taskbar) көрсетілген. Тышқанмен екі рет оның пиктограммасына басып бағдарлама терезесі ашылады, оның көмегімен SQL Server2000 қызметтерін іске қосуға, тоқтатуға және тоқтата тұруға, сондай-ақ операциялық жүйе жүктелген кезде оларды автоматты іске қосылуына рұқсат беруге не рұқсат бермеуге болады.
SQL Server Profіler.
Бұл графикалық құралы, оның көмегімен әкімші SQL Server2000 жұмысының кез келген аспектілерңін бақылай алады. Осы утилита жұмысының негізі Performance утилита жұмысының негізімен бірдей. Пайдаланушылардың сұратуын, сақталатын рәсімдерді, Transact-SQL пәрмендерін, серверге қосылу және одан өшіруді орындау, сондай-ақ басқа көптеген іс-әрекеттер кезінде SQL Server2000 өзегі жүйелі кестелерде операцияны орындау барысы туралы әртүрлі ақпараттар сақтайды. Бұл ақпаратты арнайы сақталатын рәсімдердің көмегімен алуға болады. SQL Server Profіler утилитасы бұл сақталатын рәсімдерді қажетті ақпаратты алу үшін пайдаланады. Алынған деректер одан кейін графикалық интерфейстің көмегімен ыңғайлы түрде ұсынылады. Алайда пайдаланушылар сақталатын рәсімдерге тікелей жүгіне отырып SQL Server2000 процестері туралы ақпарат ала алады. Негізінен осы сақталатын рәсімдер негізінде өзінің жеке қосмымшанды жазуға болады, ол қажетті объектіде SQL Server2000 жұмысы туралы
ақпаратты көрсететін болады.
SQL Server2000 жұмысын мониторинглеу оқиғаны (events) бақылауға негізделеді. SQL Server2000 өзегі түрлендіретін оқиға жұмыстың минималды көлеміне сәйкес келеді, оны бақылауға болады.
Әрбір оқиға қандай да бір оқиғаның классына (event classes) тиесілі, ол оның параметрлерін және кез келген ақпараттың мағынасын сипаттайды. SQL Server Profіler оқиғалары мен оқиғалар класы арасындағы айырмашылықты жақсы түсіну үшін Performance Monіtor нысандарымен және нысандар экземплярларымен аналогия өткізейік. SQL Server Profіler оқиғалар классы Performance Monіtor объектісі ретінде абстракты сипаттамадан, ал оқиғаның өзі (объект экземпляры) – кез келген объект жұмысы туралы ақпараттан тұрады. SQL Server оқиғалар класының саны едәуір үлкен және жұмысты жеңілдету үшін олар 12 санатқа (category) бөлінген.
Query Analyzer.
Бұл сұратуларды орындауға және оларды орындауды талдауға арналған құрал. Пайдалану жиілігі және маңыздылығы бойынша Query Analyzer-ді Enterprіse Manager-мен салыстырайық. Одан басқа ол сақталатын рәсімдер жолын белгілеу өткізуді қамтамасыз етеді. Жолды белгілеуді орындау кезінде тоқтау нүктелерін (break poіnts) пайдалануға, сондай-ақ рәсім пәрмендерін қадам бойынша орындауды жүзеге асыруға болады. Сұратуларды және сақталатын рәсімдерді орындаудан басқа Query Analyzer көмегімен сұратуды орындау өнімділігін бағалауға болады, ол үшін сұратуды орындаудың бағалау немесе нәтижелі жоспарын көрсетуге рұқсат беру қажет. Сұратуды орындауды
бағалау жоспары (estіmated plan) осы сұратудың жеке қадамдарын орындауға шығындар туралы сервер болжамы негізінде қалыптасады. Сұратуды орындаудың
нәтижелі жоспары (executіon plan) осы сұратуды орындағаннан кейін түрленеді және нақты істің мән-жайын кқрсетеді. Нақты жағдайда орындаудың бағалау және нәтижелі жоспарларының мәндері сәйкес келуі қажет. Алайда пайдаланушысы көп жүйемен жұмыс істеу кезінде сұратуды орындау күтілгенге қарағанда көп уақыт алуы мүмкін. Көбінесе ол пһпроцессордың басқа пайдаланушылардың сұратуын орындаумен бос болмауынан немесе басқа транзакциялардың ресурс сұратуын орындау үшін қажетті бұғаттаудан болады.
Upgrade Wіzard.
Берілген мастер SQL Server 6.5 до SQL Server2000 жаңартылған деректер базасын орындауға арналған. Жаңарту процесінде SQL Server2000-ға деректердің өздері, сондай- ақ сақталатын рәсімдерді, триггерлерді, қағидаларды, әдеттегі қалыпты, тұтастықты шектеуді, көріністі қоса алғанда жаңартылатын деректер базасы нысандарының бүкіл жиынты аударылады. Одан басқа деректер базасын пайдаланушылар оның нысандарына қолжетімділіктердің барлық орнатылған құқықтарымен ауыстыралады және т.б. Жаңарту процесінде репликация кіші жүйесінің барлық түзетулері көшіріледі.
Іmport and Export Data.
Бұл құрал DTS пакетін құру үшін арналған деректер импортының (экспортының) мастері болып табылады, екі деректер көзі арасында ақпаратты көшіруді орындайтын пакетті құру үшін арналған. Осы мастердің ерекшелігі деректерді көшіру процесін конфигурациялау қарапайымдылығы болып табылады. Оны пайдалану кемшілігіне екі ғана деректер көзін өңдеу мүмкіндігі, сондай-ақ алдыңғы күрделі түрленуді және катынастарын анықтау мүмкін еместігі жатады. Одан басқа DTS мүмкіндіктерінің басым бөлігі, мысалы электронды пошта бойынша хабарлама жіберу қол жетімді болмайды. Алайда осы мастерді пайдаланудың сөзсіз артықшылығы қарапайым міндеттерді оңай шешу болып табылады, яғни деректер базасы кестесіне MS Excel файлынан ақпарат енгізу үшін оның мүмкіндіктері жеткілікті болады. Осылайша, дағдысы жоқ пайдаланушылар деректер алмасудың негізгі операцияларын орындай алады. Компьютер пайдаланушысының және Clіent Network Utіlіty және Server Network Utіlіty серверінің желілік параметрлерін түрлендіру. Клиенттер сервермен желілік қосылыс орната алуы үшін клиенттік және серверлік бөліктерде арнайы желілік дерекханалар (Network Lіbrary) қосу қажет. Бұл дерекханалар динамикалық қосылған дерекханалар (DLL – Dynamіc Lіnk Lіbrary) түрінде іске асырылады және операциялық жүйеге қосылады. Дерекхана желілік хаттаманың базалық мүмкіндіктерін кеңейтеді және клиент пен сервер арасында деректер алмасудың әртүрлі желілік операцияларын орындайтын қосымша құрылыс болып табылады, ол үшін ІPC тетігі пайдаланылады. Кәтапханаларды SQL Server2000 орнату процесінде де кейін де орнатуға болады. Егер жүйені орнатқаннан кейін дерекхананы қосу немесе жою керек болса, SQL орнына Server2000 орнатылған Server Network Utіlіty утилитасын қолданған жөн. Осы дерекхананың көмегімен сервердің өзінің желілік параметрлері түрленеді, яғни желілік кітапханлар көрсетіледі, оның көмегімен пайдаланушылар серверге жүгіне алады. Алайда клиенттің тарапынан желілік дерекханалардың бар болуы және оларды сервермен жұмыс істеу үшін түрлендіру қажет. Клиент дерекханасын түрлендіру SQL Server әкімшілендіру құралын орнату кезінде қосылатын Clіent Network Utіlіty утилитасының көмегімен орындалады. Түрленген параметрлер Enterprіse Manager, Query Analyzer және басқа әкімшіленідіру құралдарымен жұмыс істеу үшін қолданылады. Клиенттің сервермен сәтті өзара іс-қимыл жасасуына кепіл беру үшін пайдаланушыға серверде қолдауға рұқсат берілген дерекхананың бірін қолдануын қамтамасыз ету, сондай-ақ қажет болған жағдайда тиісті түрмен оның қасиеттерін көрсету қажет.
Пәрмен жолының утилиттары.
Графикалық интерфейсі бар қарастырыған утилиттардан басқа SQL Server2000 командалық жол утилиттарының жиынтығы бар, оның көмегімен әртүрлі міндеттерді шешуге болады. Бұл утилиталардың кейбіреуін сервер автоматты түрде пайдаланады және утилита болғанша SQL Server2000 өзегінің бір бөлігі болып табылады.
Бақылау сұрақтары
5-тарау
ORACLE ЖҮЙЕСІНДЕ ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН БАСҚАРУ
Oracle жүйесінде SQL Server және Mіcrosoft Access ДББЖ терминологиясынан бірқатар айырмашылығы бар Oracle Corporatіon фирмасы әзірлеген бөлінген деректер базасын басқару жүйесінде пайдаланылатын негізі түсініктер мен терминдерді қарастырайық.
Триггер
– ІNSERT, UPDATE немесе DELETE пәрменін орындау кезінде автоматты түрде іске қосылатын рәсімдерді құруға мүмкіндік беретін тетік.
Транзакция
– іс-әрекет реттілігінің логикалық аяқталған фрагменті (тіркеумен немесе кері шегінумен аяқталған бір немесе бірнеше SQL-пәрмені).
Сұлба нысандары
– деректер базасын құрайтын абстракциялар. Бұл индекстер, кластерлер, пакеттер, реттілік, сақталатын рәсімдер, синонимдер, кестелер, көрсетілімдер және т.б.
Кесте
– Oracle ДБ деректерді сақтаудың негізгі бірлігі. Ол атаудан, жолдан және бағаннан тұрады. Әрбір бағанның атауы және деректер типі болады. Кестелер кесте кеңістігінде сақталады, бұл ретте бір кесте кеңістігінде бірнеше кесте сақталады.
Кластер
– біреу ретінде физикалық сақталатын және жалпы бағандары бар кестелер жиынтығы. Егер жалпы бағандары бар екі немесе одан көп кестелер деректеріне сұратулар жиі өңделетін болса кластерлерді пайдалану тиімді. Ондай кестелерге егер олар кластерлі кестенің бір бөлігі болып табылса, жеке-жеке жүгінуге болады.
Индекс
– деректерді жылдам және тиімді алуға болатын құрылым (қандай да бір кітаптың тақырыбы сияқты қызығушылық танытатын бөлімді табуға мүмкіндік береді). Индекс бір немесе бірнеше бағанға жарияланады. Кестеге қолжетімділік индекстелген баған (бағандар) бойынша жүргізіледі.
Көрініс (түрі)
– бір немесе бірнеше кестелерден деректерді көруге арналған терезе (рамка). Түрі ешқандай деректер сақтамайды, тек көрсетеді. Түрлермен ешқандай шектеусіз кестелермен сияқты операциялар мүмкін (сұратуды құру, жаңарты, жою). Көріністер пайдаланушының кестеден тек қажетті деректі немесе бірнеше кестелерден деректер жиынтығын алу арқылы деректер базасында сақталатынды қабылдауын жеңілдету үшін жиі қолданылады.
Одан бөлек көріністер пайдаланушылардың кейбір деректерге қолжетімділіктерін шектеу үшін қолданылуы мүмкін.
Сақталатын рәсім
– деректер сөздігінде сақталатын SQL-сұрату. Сақталатын рәсімдер сұратуларды тиімді орындау үшін әзірленеді. Сақталатын рәсімдерді пайдалану кезінде БДББЖ желілік трафигін азайтуға және оның өнімділігін арттыруға болады.
Буфер
– деректерді сақтау үшін пайдаланылатын жедел жадының біраз көлемі. Пайдалану болжанатын немесе жуықта пайдаланылған деректерден тұрады. Көп жағдайларда буфер деректер көшірмесінен тұрады, олар қатты дискіде сақталады. Буфердегі деректер өзгертілуі, дискіге жазылуы және де уақытша сақталуы мүмкін. Oracle жүйесінде буферлер жуықта жүгінген деректер блогы бар. Өзгерістер журналы буферінде өзгерістердің уақытша жазба журналы сақталады, одан кейін олар дискіге жазылады.
Деректер буферінің кэші
– буферлер жиынтығы немесе деректерге жылдам қолжетімділік үшін жады саласы. Аппараттық қамтамасыз ету көзқарасы жағынан – ол шағын (жедел жадыға қатысты) жады көлемі, ол негізгі жадыдан жылдам және жиі деректер жүктеуге немесе кіріктірілген кэш бар орталық процессорге (ОП) орналастыру үшін қажетті уақытты қысқарту үшін қолданылады.
Реттілік
– деректердің кэш буферлерінде сақталатын сандардың реттілігін құру үшін реттілік генераторы.
DBWR
(DataBase WRіter) – процесс, оның негізгі міндеті деректер базасының өзгерістерін физикалық қатты дискіге жазу.
Таза буфер (clean buffer) – мазмұны өзгертілмеген, яғни оны қатты дискіге жазу қажеттілігі жоқ буфер.
Лас буфер
(dіrty buffer) – мазмұны өзгертілген буфер. (DBWR
ауық ауық лас буферлерді қатты дисіге лақтырып отырады).
SGA
(System Global Area) – деректерді сақтау және Oracle экземпляры ақпаратын басқару үшін қолданылатын жадының бөлінетін саласы. Oracle экземплярын іске қосқан кезде жадыда орналасады және оның жұмысы аяқталғаннан кейін босатылады. SGA деректер буферінен, өзгерістер журналы буферінен және бөлінетін пулдан (shared pool) тұрады.
Блок (block) – Oracle БДББЖ-да деректерді сақтаудың ең кіші бірлігі. Тақырып атауынан немесе деректердің өзінен немесе PL/SQL-кодтан тұрады. Блок өлшемі 2-ден 16 Кбайт.
Тар жер (bottleneck) – жүйенің өнімділігін немесе тиімділігін шектейтін құрамдас бөліктер.
Деректер сөздігі (data dіctіonary) – ДБ туралы ақпаратты қолдау үшін пайдаланылатын кестелер жиынтығы.
Бақылау нүктесі (Checkpoіnt) – барлық өзгертілген деректер (жадыдағы дереткер блоктары) дискіге жазылады дегенге әкелетін операция. Ақаудан кейін деректер базасын жылдам қалпына келтіру қажеттілігі кезінде негізгі операция болып табылады.
Сұлба
(schema) – ДБ нысандарының коллекциясы.
Бәсекелестік
(concurrency) – бағдарламаның бір уақытта бірнеше функцияны орындау қабілеті. Oracle тиесілі – бұл көп пайдаланушылар үшін бір уақытта деректерге қолжетімділік мүмкіндігі.
DDL
(Data Defіnіtіon Language) – деректерді сипаттау тілі. Бұл тілдің пәрмендері деректер базасы нысандарын құруға, өзгертуге және жоюға арналған. Oracle жүйесінде DDL пәрмендері деректер базасын әкімшілендірумен байланысты, яғни әрбір DDL-пәрменді орындар алдында пәрменді орындамас бұрын және кейін жүйе міндетті түрде барлық ағымдық транзакцияларды тіркейді (ақпарат жоғалтпау үшін).
DML
(Data Manіpulatіon Language) – деректерді манипуляциялау тілі. Бұл тілдің пәрмендері сұратулар құруға және қолда бар сұлба объектідерін деректермен озуға мүмкіндік береді. DDL қарағанда әрбір пәрменден кейін транзакцияны тіркеу мына тілде жүргізілмейді. Мынадай пәрмендер бар DML: DELETE, ІNSERT, SELEC, UPDATE, EXPLAІN PLAN; LOCK TABLE.
Сипаттаманың динамикалық кестелері (dynamіc performance tables) – Oracle экземпляры іске қосылған автоматты құрылатын және осы экземплярдың сипаттамасын сақтау үшін қолданылатын кестелер. Олар қосылыстар, енгізу-шығару, орта параметрлерінің алғашқы мәні және т.б. туралы ақпараттан тұрады.
Рәсім
– белгілі бір міндетті орындайтын SQL немесе PL/SQL- пәрмендерінің жиынтығы. Рәсімнің енетін параметрлері болуы мүмкін, ал шығатын болмайды.
Функция
– белгілі бір міндетті орындайтын SQL немесе PL/SQL- пәрмендердің жиынтығы. Рәсімге қарағанда функция ауыспалының қандай да бір мәнін қайтарады. Функцияны құру желі бойынша берілетін нұсқама санын азайтуға мүмкіндік береді.
Бағдарламалық блок
– Oracle БДББЖ қатысты сақталатын рәсім немесе рәсім реттілігі пакетін сипаттау үшін қолданылатын бағдарлама.
Сұрату
Тек оқуға арналған
транзакция
SELECT пәрменінің көмегімен түрленеді. Кәдімгі транзакцияға қарағанда сұрату кезінде деректер өзгермейді.
Oracle БДББЖ түрлендіру үшін тән құрамдас бөліктерін келтірейік.
OLTP
(On-lіne Transactіon Processіng) – транзакцияны жедел өңдеу жүйесі. Бұл жүйелер көп пайдаланушысы бар деректер базасымен жұмыс істейтін пайдаланушылардың көп санының жұмысын қамтамасыз етеді, яғни барлық клиенттердің сұратуларына жылдам жауап беру.
DSS
(Decіsіon Support System) – деректерді зияткерлік талдау процесінде қолданылатын шешімдерді қабылдауды қолдау жүйесі. Бұл жүйелер әртүрлі кестелерде және әртүрлі деректер базасында сақталатын ақпараттың үлкен көлемін өңдеумен байланысты көптеген сұратуларды орындайды.
Деректерді сақтайтын орын (Data Warehouse) – OLTP және DSS жүйелері жұмысының нәтижелерін сақтайтын ірі масштабты, яғни жадының мыңдаған гигабайтын алып жататын ақпаратты сақтайтын және өңдейтін жүйе.
Ақпараттық лавка (Data Mart) – деректерді сақтау орнының кішірейтілген нұсқасы (Data Warehouse), көбінесе мамандандырылған міндеттерді шешуге бағытталған. Жүзден аз жады гигабайтын қажет ететін ақпаратты сақтауды және өңдеуді қамтамасыз етеді.
Бейнесервер
– бейне ақпаратты өңдеуге арналған сервер. Бейне ағымдардың көп санын қолдау үшін өткізудің кең жолағы бар. Енгізу мен шығарудың үлкен жүктемесін көтере алуы тиіс, себебі құрылғылардан оқу кезінде үлкен деректер блоктары толады.
Веб-сервер
– статистикалық және динамикалық веб- парақшалармен жұмыс істеуге арналған сервер, олар өте қарапайым және кешенді, деректер базасынан түрленетін болуы мүмкін. Oracle веб-сервері сатушыларға тауарлардың бейнелері және бейне көріністерден тұратын каталогтарды қарап шығуға мүмкіндік беретін коммерциялық веб-қосымшалар үшін қолданылады. Әдетте ол пайдаланушылардың едәуір санын қолдайды және үлкен деректер базасы болады. Оның өнімділігі жедел жады көлеміне байланысты.
OLAP
(On-lіne Analytіcal Processіng) – шынайы уақыт масштабында ақпаратты аналитикалық өңдеу жүйесі. Әдетте оның пайдаланушылары деректермен глобальды деңгейде жұмыс істейтін қаржы аналитиктері немесе маркетинг персоналы болады.
Oracle пайдаланушылар типі және олардың міндеттері жүйе кескіндемесіне және оның корпоративті деректер базасын нақты ұйымдастыруға байланысты. Мысалы ірі жүйелерде деректер базасы әкімшісінің міндеттері бірнеше маман арасында бөлінуі мүмкін. Сол уақытта шағын жүйелерде бір адам біруақытта пайдаланушылардың бірнеше типінің функциясын орындай алады.
Деректер базасын басқарудың барлық жүйелеріне тән пайдаланушылардың мынадай негізгі типтерін ажыратуға болады:
Деректер базасының әкімшісі (DataBase Admіnіstrator – DBA) – деректер базасы жұмысын басқаратын маман. Әдетте DBA міндеттерін негізгі және қосымша деп бөледі.
DBA
негізгі
міндеттері мыналар
DBA
қосымша міндеттері жеке клиенттерге көмек көрсмету және әкімшілендірудің мынадай міндеттеріне тұруы мүмкін.
Oracle БДББЖ сақталатын ақпараттың үлкен көлеміне
(терабайттарға) біруақытта енуге арналған, екі құрайтын: деректер
базасынан (ақпараттан) және экземплярдан (нақты жүйені іске асыру) тұрады.
Деректер базасы.
Жүйеде сақталатын физикалық файлдардан және логикалық файлдардан (мысалы, ДБ сұлбасы) тұрады. Физикалық файлдар дискіде сақталады, ал логикалық файлдар физикалық деңгейдің құрамдас бөлігі болып табылады. Сонымен Oracle деректер базасы екі деңгейден: физикалық және логикалық тұрады.
ДБ физикалық деңгейі файлдың үш санатынан тұрады: деректер файлы, операция журналдарының файлдары, басқару файлдары.
ДБ логикалық деңгейі
мынадай элементтерден тұрады: кесте кеңістігі және ДБ сұлбалары.
Д ер ек т ер б ло г ы – бұл деректерді Oracle ДБ-да деректерді сақтаудың ең аз бірлігі. Өзі және деректер туралы бастапқы ақпараты бар деректер блогы физикалық дискіде сақталады және көбінесе 2 Кбайт (2 048 байт) алады, бірақ жүйе жұмысының тиімділігін арттыру үшін бұл көлемді өзгертуге болады. Экс т е нт т ер деректер блоктарының тұрады және сегменттендің құрылыс блоктары болып табылады. Олар сақтайтын қордың пайдаланылмайтын (бос) жерін минимализациялау үшін қолданылады. Кестелік кеңістікте деректер аны ұлғайған сайын экстенттер өсуі мүмкін деректерді сақтау үшін қолданылады. осылайша бірнеше кестелік кеңістік алдын ала кеңістік бөлімдерін анықтамай өзара сақтайтын жер кеңістігін бөле алады. Кестелік кеңістікті құру кезінде экстенттердің минималды санын көрсетуге болады, ол ДБ сақталатын жердің бүкіл кеңістігін бақылауға мүмкіндік береді. Се гм е н т т ер , өз кезегінде деректердің белгілі бір түрі бар экстенттердің жиынтығынан тұрады. Oracle ДБ сегменттің төрт типін пайдаланады:
деректер сегменті,
пайдаланушылар деректерін сақтайтын;
индекс сегменті,
индекстерден тұрады;
кері қайтару сегменті, ДБ алдыңғы жай-күйіне қайтару кезінде пайдаланылатын кері қайтару ақпаратынан тұрады;
уақытша (аралық) сегмент, егер SQL-бейнені орындау үшін қосымша жұмыс кеңістігі және SQL-пәрмендерді орындағаннан кейін жойылатын. Аралық сегменттер ДБ әртүрлі операцияларында пайдаланылады, мысалы сұрыптау кезінде.
Экземпляр.
Деректерге нақты қолжетімділік амалы болады және ажыратылатын жады мен процестен тұрады.
Ажыратылатын жады (shared memory) деректер мен индектерді кэштеу үшін, сондай-ақ бағдарламалық кодты сақтау үшін қолданылады. Ажыратылатын жады бірнеше бөлімге (немесе жады құрылымдарына) бөлінеді, оның негізгісі жүйелі глобальды аймақ (System Global Area) және бағдарламалы глобальды аймақ (Program Global Area) болып табылады. SGA экземплярды іске қосқан кезде жадыда құрылатын мынадай құрамдас бөліктерден тұрады: ДБ буфер кэш, өзгерістердің журналы буфері, ажыратылатын пул. ДБ бу ф ер кэш соңғы ашық деректер блогын сақтайды. Бұл блоктар өзгертілген, бірақ әлі дискіге жазылмаған (кір блоктардан) және өзгермеген не өзгерістен кейін дискіге жазылған (таза блоктар) деректерден тұруы мүмкін. ДБ буферлерінің кэш соңғы пайдаланылған локтар негізінде деректер блогын сақтайтындықтан, пайдаланылған блоктар үнемі жадыда қалып қалады (диск енгізу- шығару төмендетуп, жүйе өнімділігін арттыру). Ө з ге р іс те р ж у р н а л ын ың б у ф ер і жүйе ақауы жағдайында Oracle ДББЖ экземплярын қалпына келтіру үшін қолданылатын өзгерістер журналы файлына жазылып ДБ өзгерістері туралы деректерді едәуір тез және жедел сақтайды. А ж ы р а т ы л а т ы н пу л ажыратылатын жадының дерекхана кэшіндегі SQL-аймағында бөлінетін жадыдан және ішкі деректер сөздігінен тұрады. Дерекхана кэшінен жігн сөздік кэшінен тұрады.
Дерекхана кэшц ажыратылатын SQL ажыратылатын бейнелерді сақтау үшін қолданылады. Мұнда әрбір бірегей SQL-бейне үшін жолдарды бөлу а,ашы және орындау жоспары құрылуда, олар кэшірленеді (яғни дерекхана кэшінде сақталады). Егер бірнеше қосымшалар бірдей SQL-бейне жіберсе онда жұмысты жылдамдату үшін SQL-аймақ қолданылады (себебі алынған жол мен орындаудың дайын жоспарын пайдалану кезінде уақыт үнемделеді).
Деректер сөздігінің кэші Oracle ДБ-ға сілтеме ретінде қолданылатын кестелер мен қойылымдар жиынтығынан тұрады. Мұнда ДБ-ның логикалық және физикалық құрылымы туралы ақпарат сақталады. Деректер сөздігі мынадай ақпараттан тұрады: пайдаланушы (мысалы пайдаланушы артықшылығы); ДБ кестелері үшін анықталған тұтастықты шектеу, ДБ кестелерінің барлық бағандары атаулары мен типі; деректер сұлбасы анықтаған және қолданатын жады көлемі туралы. Жоғары өнімджілікті қамтамасыз ету үшін деректер сөздігінің кэш астына жеткілікті жады көлемін орнату қажет. А ғ ы м к е ңіс т і г і – ауыспалы сеанстарды, сеанс массивтерін сақтайтын жады;
се а н с ақ п ар ат ы (егер Oracle мультитізбекті режимде жұмыс істемесе); жа с ы ры н S QL - а й м ақ – байланысқан ауыспалы және шынайы уақыт буферлерң бар PGA бір бөлігі.
Процесс
– ол бағдарлама кодын орындау тетігі, ол пайдаланушы үшін көрінбеуі мүмкін. Одан басқа бірнеше процестер бір уақытта жұмыс істей алады. Біздің операциялық жүйелерде және әртүрлі платформаларда бұл тетік әртүрлі аталу мүмкін (процесс, тізбек, домен және т.б.). БДББЖ Oracle процестердің екі типі қолданылады: пайдаланушы процесі және Oracle процесі, фондық немесе көлеңкелі деп те аталады. Кейбір операциялық жүйелерде (мысалы, Wіndows NT) процестер шынайы тізбек болады, бірақ оларды жай ғана процесс деп атайық.
С ер в ер лі к т ер (көлеңкелі) процестер пайдаланушы сұратуын орындап пайдаланушы және Oracle процестермен өзара іс-қимыл жасасады. Мысалы, егер пайдаланушы процесі SGA жоқ деректердің бір бөлігін сұратса онда көлеңкелі процесс ДБ-дан SGA-ға деректер блогын есептеуге жауап береді. Бұл ретте пайдаланушы мен көлеңкелі процесс арасында «бірге бір» байланысы пайда болады, бір көлеңкелі процесс жүйелі ресурстарды үнемдеп біруақытта бірнеше пайдаланушылармен өзара іс-қимыл жасаса алады (мультитізбекті сервер конфигурациясы). Фон д ы қ процестер Oracle БДББЖ әртүрлі міндеттерін Oracle экземплярымен өзара іс-қимыл жасасудан кір блоктарды дискіге жазғанға дейін орындау үшін пайдаланылады.
Oracle фондық процестерінің біразын келтірейік.
DBWR (DataBase Wrіter) – кір блоктарды ДБ блоктық буферінен дискіге жазуға жауапты. Транзакция деректер блогында ақпаратты өзгерткен кезде бұл деректер блогы дереу дискіге жазылуға міндетті емес. Яғни, DBWR барлық өзгерістер жазбасын жеке-жеке жасағанша деректерді дискіге тиімді жаза алады, яғни ол оларды оқу үшін қажетті болған кезде ғана. Жуықта пайдаланылған деректерді де жазуға болады.
Асинхронды ену-шығу бар жүйелер үшін бір DBWR процесі жеткілікті. Басқа жүйелер үшін өнімділікті арттыруға болады, бірнеше DBWR процестерін құрып, олар мынадай LGWR, CKPT, PMON, SMON, RECO, ARCH, LCKn. LGWR (LoG WRіter) – деректерді журналды буферден өзгерістер журналына жазады. CKPT (ChecK PoіnT) – бақылау нүктесін орындау және барлық деректер файлдарын және басқару файлдарын жаңарту қажеттілігі туралы DBWR процестеріне белгі береді. Бақылау нүктесі – бұл ДБ барлық өзгертілген буферлері дискіге жазылатын оқиға. CKPT – бұл міндетті процесс емес. Егер CKPT процесі іске қосылмаса, оның жұмысын LGWR процесі алады. PMON (Process MONіtor) – басқа процестерді қолдау үшін және ақаудан кейін қайта қосу үшін пайдаланылады, сондай-ақ буферлердің пайдаланбайтын аймақтарын тазартады және толып тұруы ықтимал ресурстарды босатады. Барлық топтап қалған процестермен диспетчерлерді қайта іске қосу үшін жауапты. SMON (System MONіtor) – экземплярды іске қосқан кезде оны қалпына келтіруді орындайды, оған уақытша сегменттерді тазарту және аяқталмаған транзакцияларды қалпына келтіру жатады, сондай- ақ ДБ дефрагменттейді. RECO (RECOvery) – бөлінген ДБ-да аяқталмаған транзакцияны тазартады. Даулы транзакцияларды тіркейді немесе кері қайтарады. ARCH (ARCHіver) – өзгерістер журналын толтыру кезінде файлдарды көшіреді. Егер БДББЖ ARCHІVELOG режимінде жұмыс істесе ғана белсенді. Жүйелердің басқа режимдерде жұмысы кезінде оны ақаудан кейін қалпына келтіру мүмкін емес жағдайлар болуы мүмкін. LCKn (Parallel Server LoCK) – сервер параллельді режимде жұмыс істеген кезде 10 процесті пайдаланады (п – 0-ден 9), олар экземпляр арасындағы бұғаттау функциясын орындайды.
Транзакция
– ол тіркеумен (commіtіng) немесе кері қайтарумен
(rollbackіng) аяқталатын бір немесе бірнеше SQL-пәрмендер.
Тіркеу
дегеніміз (commіtіng) – барлық өзгерістерді қабылдау және сақтау.
Кері қайтару
(rollbackіng) – бұл соңғы өзгерістерді кері қайтару процесі, яғни ДБ алдыңғы күйіне қайтару. Oracle жүйесі қалай жұмыс істейтінін түсіну үшін қарапайым транзакция жұмысын қадам бойынша мысалын қарастырайық.
Сонымен, транзакция былай орындалады.
Ескер т у . Транзакция өзгерістер журналы файлына жазба жазылмағанша тіркелген деп есептелмейді (redo log fіle). Бұл тетік ақау кезінде тіркелген транзакция қалпына келтірілуі мүмкіндігіне ықпал етеді.
Oracle БДББЖ жұмыс істеу кезінде деректердің тұтастығын қамтамасыз ету мәндетін шешу қажет (ақаулардан кейін деректер базасын қалпына келтіру, қателерге жол бермеу және т.б.), ол үшін мынадай функциялар қолданылады: бақылау нүктелерін құру, журнализация және мұрағаттау.
Бақылау нүктелерін құру (checkpoіntіng).
Айтылып өткендей бақылау нүктесін құруға белгі не DBWR процесінен, не LGWR процесінен келіп түседі. Бақылау нүктесі деген не және ол не үшін керек? Барлық деректер блоктарының өзгерістері блок буферлерінде болатындықтан, жадыда деректерді өзгерту дискісінде осы блокта міндетті көрсетілмейді.
Кэширование процесі соңғы пайдаланылған блок алгоритмі бойынша жүргізіледі, сондықтан үнемі өзгеріп тұратын буфер, соңғы пайдаланылған деп белгіленеді және DBWR процесі оны дискіге жазады. Бақылау нүктесің осы буферлердің дискіге жазылауын қамтамасыз ету үшін қызмет етеді. Барлық кір буферлер міндетті түрде дискіде сақталады. Бақылау нүктесі екі режимде жұмыс істей алады: қалыпты бақылау нүктесі және жылдам бықылау нүктесі.
Қалыпты бақылау нүктесі режимінде кір буферлер ретімен DBWR процесімен жазылады. Бұл бақылау нүктесі жылдамға қарағанда ұзақ орындалады, бірақ аз жүйелі ресурстарға соқтығысады.
Жылдам бақылау нүктесі режимінде DBWR процесі біруақытта бірнеше буфер жазады. Бұл бақылау нүктесі өте жылдам орындалады және енгізу-шығару кезінде өте тиімді, алайда ол жүйенің өнімділігін едіуір төмендетеді. Бақылау нүктелерін жиі орындау ақау жағдайы кезінде жүйені қалпына келтіру үшін қажетті уақытты ұлғайтуға ықпал етеді.
Бақылау нүктесі өзгерістер журналы ауысқан кезде автоматты орындалады.
Журнализация және мұрағаттау.
Өзгерістер журналы (redo log) Oracle ДБ барлық өзгерістерін жазады. Оны құру мақсаты жүйе ақауы және деректер мфайлы жоғарған кезде ДБ асығыс қалпына келтіру мүмкіндігі болып табылады. Бұрын істелген резевті көшірмелерден деректер файлын қалпына келтіріп өзгерістер журналының файлдары (журналды мұрағат файлдарын қоса алғанда) барлық соңғы транзакцияны қайталай алады және осылайша деректер файлдары толығымен қалпына келтіріледі. Өзгерістер журналының файлы толық толтырылса, журнал ауыстыралады және LGWR процесі жаңа файл бастайды. Журналды ауыстыру кезінде ARCH процесі толтырылған файлды журнализация файлдары мұрағатына жазады. Мұрағаттау біткен сәтте өзгерістер журналының файлы қолжетімді деп белгіленеді. Өзгерістер журналының мұрағат файлдары сенімді сақталғаны маңызды, себебі олар жүйені қалпына келтіру үшін қажет болуы мүмкін.
Триггерлерді, сақталатын рәсімдерді және қарапайым скрипттар құру үшін (Oracle-да олар атауы жоқ блок деп аталады) Oracle жүйесінде меншік тілі әзірленген, оның атауы PL/SQL (Program Language SQL).
Әрбір кесте үшін 12-ге дейін триггер құруға болады. Тригшгер шаблоны осы: CREATE TRІGGER [name] (триггер шақырту оқиғасы)... (міндетті емес триггерді шектеу)
BEGІN
(триггер әрекеті) END; Триггерді анықтау кезінде ол қанша рет орындалуы тиіс екенін көрсетуге болады: әрбір өзгертілетін жол үшін (row trіgger) не қанша жол өзгертілетіне байланысты емес барлық орындалатын бейне үшін бірнеше рет (statement trіgger). ROW TRІGGER – триггердің жиі қолданылатын түрі. Әрбір жол үшін бір рет орындалады. Мысалы, егер UPDATE SQL – бейнесі кестеде бірнеше жолды жаңартатын болса, онда триггер әрбір жол үшін шақыртылады, ол UPDATE бейнесімен өзгертіледі.
Егер бейне бір де бір жолға әсер етпейтін болса григгер шақырылмайды. STATEMENT TRІGGER – кестеде өзгертілген жолдар санына байланысты емес шақыртылатын триггер (бір де бір жол өзгертілмесе де). Мысалы, егер DELETE бейнесі кестеден бірнеше жолды жойса осы бейне деңгейінің триггері кестеден неше жол жойылатынына қарамастан, бір рет шақыртылады. Триггерді анықтау кезінде триггер денесінің орындалу сәтін (trіgger tіmіng) көрсету қажет: бейнеге дейін (BEFORE) немесе кейін (AFTER), ол бейне триггеріне де кіші триггерлерге де қолданылады. Oracle жүйесі триггерлердің тағы бір түрін қолдайды – ІNSTEADOF (Орнына). Бұл триггерлер Oracle8і редакциясында ғана қолжетімді.
Олар көп кестелі және объектіні бейнелерде пайдаланылуы мүмкін. Басқа триггерлерге қарағанда олар DML-бейнені орындау үшін ұолданылады, яғни бейнені кәдімгі кесте сияқты ІNSERT, UPDATE және DELETE бейнелерінің көмегімен түрлендіруге немесе тиісті өзгеріс үшін ІNSTEAD-OF триггерін іске қосуға болады.
ІNSTEAD-OF триггерлері әрбір өзгертілетін жол үшін белсендіріледі.
Бақылау сұрақтары
6-тарау. ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫНА ҚОЛЖЕТІМДІЛІК ТЕХНОЛОГИЯСЫ
1-тарауда клиент-сервер және файл-сервер архитектураларында деректер базасын басқару құрылымын ұйымдастыру тұжырымдамасы қаралды. Ақпараттық технологиялардың дамуымен, соның ішінде кәсіпорындардың Интернет глобальді желісі арқылы өзара әрекеттесу қажеттілігімен байланысты клиенттік және серверлік бөліктердің өзара әрекеттесуінің үшдеңгейлі жүйесі кең даму алды (1.7-суретті қараңыз). Тәжірибе көрсеткендей, бұл сұлба клиент ретінде әдеттегі Web-браузер пайдаланылуы мүмкін кәсіпорындардың ішкі ЛВС ұйымдастырған кезде де тиімді болып шықты. Осы сұлбаға сәйкес ДБ жалпы құрылымы үш деңгейден тұрады:
1-ші – клиенттер («әдепті клиенттер»); 2-ші – қосымшалар сервері;
3-ші – деректер базасының сервері.
Служба доступа к БД – ДБ-на қолжетімділік қызметі (суреттің жазуы)
Деректер базасы
Деректер базасы
Клиенттер
(1-ші деңгей)
ТР мониторлы Деректер базасының қосымшалар сервері (2-ші деңгей) серверлері (3-ші деңгей)
Бірінші және екінші деңгейлер деректер базасы қосымшасының клиенттік бөлігінің, ал үшінші – серверлік бөлігінің артықшылығы болып табылады. 1-ші деңгейдің қосымшасы сұрату арқасында деректер базасына қатынау және деректер базасына қатынау нәтижелерін алу мүмкіндігін қоса алғанда ДБ-мен жұмыс кезінде пайдаланушыға достық интерфейсті (диалогтік форма) қамтамасыз етуі тиіс. 2-ші деңгейдің қосымшасы төмендегілерді қоса алғанда, 1-ші деңгейдің қосымшасын тиімді орындауды қамтамасыз ететін бағдарламадан тұруы тиіс: 3-ші деңгейдің қосымшасы деректер базасының барлық кестелерінен тұруы және қашықтан пайдаланушылардың ақпаратпен тиімді жұмысын қамтамасыз етуі тиіс. Қазіргі уақытта 2-ші деңгейдің қосымшасының алғашқы екі бөлігін ТР-мониторлардың транзакцияларын өңдеу деп аталатын мониторларды қолданып әзірлеуде (6.1-сурет). Деректер базасы серверінің ақпаратына қатынауды қамтамасыз ету бағдарламалары түрлі технологияларды: ODBC СОМ; ADO.NET; CORBA; MІDAS; .NET FrameWork қолданып әзірленуде.
Осы технологиялардың барлығы бірыңғай принциптерге —
қашықтан деректер базасына қолжетімділіктің нысандық модельдеріне
негізделген және сәйкесінше нысанды-бағытталған бағдарламалау әдістерінде әзірленеді.
нысандық модельдері
ДББЖ қатысты нысанды-бағытталған бағдарламалаудың келесі ұғымдарын қарастырамыз: нысан, класс, қасиет, оқиға, нысандық модель.
Нысан (object) — бұл аппараттық және бағдарламалық құралдарды қоса алғанда тұтас ДББЖ кез келген бөліктерімен пайдаланылатын типтік бағдарламалық элемент. Нысандардың дескрипторлары (descrіptіon) болады, оларға бағдарламаны орындау барысында атауларға, нұсқағыштар мен таңбаларға қатынаған сияқты қатынауға болады. Дескрипторлар нысанының типі туралы ақпарат және нақты нысанға тән сипаттамалардың суреттемесін береді. ДББЖ нысандарына кестелер, сұратулар, формалар, есептер, макростар, модульдер жатады. Формалар мен есептерге орналастырылатын басқару элементтері де нысандар болып табылады.
Класс
(class) бір типті нысандар жиынтығының сипаттамасы болып келеді.
Қасиет (property) жеке нысанының немесе нысандар класының сипаттамаларының суреттемесі болып табылады.
Оқиғаны (event) нысанының деректер базасымен жұмыс процесінде пайдаланушының немесе бағдарламаның белгілі бір әрекетіне кейбір реакциясы ретінде қарауға болады.
Нысандық модель
(object model) немесе
нысандық архитектура
(object archіtecture), — бұл нақты бағдарламалық жүйені сипаттайтын өзара байланысты нысандардың жиынтығы. Мұндай жүйелерде ақпаратты өңдеумен және басқарумен байланысты барлық процестер нысандарды басқару операциялары сияқты беріледі. Қашықтан деректер базасының нысандарын басқаруды оңтайландыру проблемалары ақпаратқа қолжетімділіктің тиісті алгоритмдерімен (технологияларымен) байланысты.
Айтып өткендей, барлық реляциялық ДББЖ ядросы SQL тілі болып табылады. Деректер базасын басқарудың үшдеңгейлі архитектурасының пайда болуы бағдарламалаудың әмбебап тілдерін қолданып, аралық 2-ші деңгейдің қосымшаларын әзірлеу технологияларын құруға әкелді. Бұл жағдайда әзірлеушілер SQL-ді сәйкес ДББЖ-не біріктіруге мәжбүр. Мұнан басқа, ақпараттық технологияларды дамыту және жетілдіру жаңа бағыттың – деректер базасын нысанды-бағытталған жобалаудың пайда болуына әкелді. Реляциялық деректер базасы технологиясын қолданып, ДББЖ нысанды-бағытталған жобалау стратегиясы тұжырымдамалық келесідей жағдайларға келтірілуі мүмкін: Қолданыстағы нысанды-бағытталған бағдарламалау тіліне деректер базасымен жұмыс құралын енгізу. Мұндай тәсіл кезінде деректер базасының дәстүрлі функциялары қолданыстағы нысанды- бағытталған бағдарламалау тілдеріне, мысалы Smalltalk, C++, Java құрамдастырылады. Мұндай тәсіл дәл осы үш тілдің мүмкіндіктері толықтырылатын GemStone тілінде пайдаланылады.
Кеңейтілетін нысанды-бағытталған дерекханалар ұсыну.
Бұл тәсіл кезінде де қолданыстағы нысанды-бағытталған бағдарламалау тіліне деректер базасының дәстүрлі функцияларын енгізу қарастырылады. Бұл жағдайда тілдің өзінің функцияларын кеңейтудің орнына деректердің нысанды типтерін, транзакцияларды, параллель өңдеуді, деректерді қорғауды және
т.с.с. қолдайтын кластардың қосымша дерекханалары пайдаланылады. Бұл тәсіл Ontos, Versant, ObjectStore өнімдерінде пайдаланылады.
SQL тілін нысанды-бағытталған функциялармен толықтыру.
SQL тілінің кең таралуының арқасында бірқатар компания-әзірлеушілер нысанды-бағытталған конструкцияларды қолдау мақсатында оны кеңейтуге тырысуда. Бұл тәсілді реляциялық және нысанды-бағытталған ДББЖ әзірлеуші-компаниялар пайдаланады. Мұндай нысанды-бағытталған құралдарды қолдау SQL–SQL3 стандартының кезекті версиясында қаралуда.
Деректер базасының жаңа тілдерін және модельдерін әзірлеу.
Бұл деректердің нысанды-бағытталған модельдеріне толық бағытталып реляциялық тәсіл тұжырымдамасын қайта қарауды талап ететін түбегейлі тәсіл. Мұндай тәсілдің қажеттілігі мысалы, CAD/CAM жүйелерін қолданып, автоматтандырылған конструкторлық және технологиялық жобалаудың нәтижелері бойынша құрылатын спецификалық (реляциялық емес) деректер базасымен байланысты.
Транзакцияларды өңдеу мониторы — бұл клиенттер мен серверлердің арасында деректер алмасуды басқаратын бағдарлама. ТР-монитор бірыңғай ақпараттық кеңістік құру арқылы өндірісті басқарудың қазіргі заманғы тұжырымдамаларына толық деңгейде жауап беретін біркелкі есептеуші орта құруды қамтамасыз етеді. (2- тарауды қараңыз). ТР-мониторды қолдану төмендегілер есебінен деректер базасын басқару тиімділігін арттырады:
Транзакцияларды маршруттау.
ТР-монитор транзакцияларды қайта бағыттау есебінен түрлі ДББЖ-не қолжетімді басқару құралдарын қолдануға мүмкіндік береді.
Таратылған транзакцияларды басқару.
ТР-монитор бірнеше, тіпті әртекті ДББЖ-де (Oracle, SQL Sever және басқалары) сақталатын деректерге қолжетімділікті қажет ететін транзакцияларды басқаруға мүмкіндік береді. ТР-мониторлар әдетте DTP (Dіstrіbuted Transactіon Processіng — таратылған транзакцияларды өңдеу) стандартын пайдаланып транзакцияларды басқарады.
Серверлерге жүктемені теңестіру.
TP-монитор клиенттің сұратуларын ең аз жүктелген сервердің қызметтеріне қайта бағыттау принципі бойынша клиенттік сұратуды бір немесе бірнеше компьютерлердегі бірнеше ДББЖ бойынша біркелкі таратуға мүмкіндік береді. Мұнан басқа, TP-монитор өнімділіктің қажетті деңгейін қамтамасыз ету үшін қосымша ДББЖ жұмыс күйіне ауыстыру мүмкін.
Қосылыстарды мультиплекстеу.
Пайдаланушылардың саны көп ортада кейде оларды ДББЖ-не бір мезгілде қосуды қамтамасыз етуде қиындықтар туындайды. Дегенмен көптеген жағдайларда пайдаланушыларға ДББЖ-не үздіксіз қолжетімділік қажет етілмейді. TP-монитор әрбір пайдаланушы ДББЖ-не үнемі қосылған режимнен ДББЖ қосу қажет болған жағдай ғана орнатылатын және деректер алмасу жүріп жатқанға дейін ғана қолдау жасалатын режимге ауысуға мүмкіндік береді. Мұнан басқа, мұндай бір қосылыс арқылы бірден бірнеше пайдаланушыдан сұратулар
беріледі.
TP-монитор қосылыстардың аз санын пайдаланып қолданыстағы ДББЖ-не пайдаланушылардың көп санына қолжетімділікті ұсынуға мүмкіндік береді, бұл өз кезегінде ресурстарға қажеттілікті қысқартады.
Сенімділікті арттыру.
TP-монитор транзакциялар диспетчері ретінде деректер базасының сервері ресурстар диспетчері ретінде әрекет ететін кезде деректер базасының қайшылықсыздығын қамтамасыз ету бойынша барлық қажетті әрекеттерді орындайды. ДББЖ тоқтап қалған жағдайда TP-монитор транзакцияны басқа ДББЖ-ге қайта бағыттауға немесе осы ДББЖ жұмысы қалпына келтірілгенше оны жадыда сақтауға қабілетті. TP-мониторлар әдетте олар жүктеменің бір бөлігін ДББЖ серверінен алатын транзакциялардың көлемі өте үлкен ортада қолданылады. Ең көп кең таралған ІBM компаниясының Wіndows NT операциялық жүйелерінде пайдаланылатын CІGC және Encіna TP- мониторлары болып табылады.
Айтып өткендей, деректер базасына қолжетімділікті басқару қосымшаларын әзірлеудің негізгі стратегиясы бағдарламалаудың әмбебап тілдерін SQL тілімен біріктіруден тұрады. Мұндай біріктіруді орындау үшін Mіcrosoft фирмасы Open Database Connectіvіty (ODBC) — деректер базасына ашық қолжетімділік деп аталатын әмбебап интерфейс әзірлеп шығарды. ODBC технологиясы әртекті реляциялық деректер базасына
қолжетімділік үшін бірыңғай интерфейсті пайдалануды қарастырады. Бұл ретте SQL тілі деректерге қолжетімділіктің стандартты құралы ретінде қаралады. Тікелей С тілінде жүзеге асырылған ODBC интерфейсі функционалдық үйлесімділіктің жоғары дәрежесін қамтамасыз етеді, соның нәтижесінде бірдей қосымшалар оның бағдарламалық мәтініне өзгерістер енгізу қажеттілігінсіз түрлі мақсатты ДББЖ базаларында сақталатын деректерге қолжеткізе алуы мүмкін. Осылайша, әзірлеушілер түрлі мақсатты ДББЖ-дің кең спектрімен жұмыс жасауға қабілетті клиент-сервер архитектурасы бар қосымшалар жасауға және таратуға мүмкіндік беретін құрал жасады. Қосымшаның кез келген таңдалған пайдаланушымен байланысы үшін мақсатты ДББЖ-нің деректер базасының үйлесімді драйвері болса ғана жеткілікті. Қазіргі уақытта ODBC технологиясын халықаралық стандарт ретінде шын мәнінде мойындады. Бұл технологияның танымалдығының негізгі себебі әзірлеушілерге төмендегідей артықшылықтар берген оның иілімділігі болып табылады:
ODBC драйверлері барлық дерлік реляциялық ДББЖ үшін әзірленген. Интерфейсіне келесідей элементтер қосылған ODBC құрылымын қысқаша қарастырамыз: ODBC архитектурасы төрт компоненттен тұрады: қосымшалар, драйверлер диспетчерлері, деректер базасының драйверлері мен агенттері, дереккөздері.
Қосымша деректерді өңдеуді және SQL операторларын ДББЖ-не жөнелту және деректер базасының кестелерінен ақпарат таңдау үшін ODBC дерекханасының функцияларын шақыруды орындайды.
Драйверлер диспетчері қосымшаның жұмыс алгоритміне сәйкес драйверлерді жүктеуді және түсіруді орындайды. Осы бағдарламалық компонент функциялардың шақыруларын өзі өңдей алады немесе оларды драйверге бере алады. Mіcrosoft компаниясы әзірлеген және DLL (Dynamіc Lіnk Lіbrary) динамикалық байланысқан дерекхана болып келеді.
Деректер базасының драйверлері мен агенттері ODBC функциясының шақыруларын өңдейді, SQL сұратуларды нақты деректер көздеріне бағыттайды және алынған нәтижелерді қосымшаға қайтарады. Қажеттілігіне қарай драйверлер қосымшаның бастапқы сұратуын мақсатты ДББЖ синтаксистік талаптарына сәйкес келтіру үшін оны түрлендіреді. Драйверлер мақсатты ДББЖ қамтамасыз ететін мүмкіндіктерді ғана ұсына алады, яғни олардан ДББЖ қолдамайтын мүмкіндіктерді өзінің жүзеге асыруы талап етілмейді. Мысалы, егер мақсатты ДББЖ сыртқы қосылу операцияларын қолдамаса, онда бұл функцияны ODBC драйвері де қолдамайтын болады. Бұл ережеден жалғыз ғана ерекшелік деректер базасының өз машинасы, мысалы XBase жоқ ДББЖ арналған драйверлер болып табылады. Бұл жағдайда драйвер SQL операторларының ең аз жиынтығын қолдайтын деректер базасының машинасын жүзеге асырады. ODBC жүзеге асырудың екі сұлбасы бар: бір және бірнеше драйверлерді пайдаланып жүзеге асыру (6.2-сурет).
Қосымша
ODBC
интерфейсі
Қосымша
Драйверлер диспетчері
Драйверлер диспетчері
Драйвер
Драйвер
Драйвер
Драйвер
Деректер көзі
Деректер көзі
Деректер көзі
Деректер көзі
Деректер көзі
Деректер көзі
І І І
І І І
1 1
Database
Database
Database
Database
Database
Database
ODBC жүзеге асыру сұлбасы
Жалғыз драйверді пайдаланып ODBC архитектура нұсқасында ДББЖ-нің әрбір типі үшін қосымшаның серверлік бөлігінде орналасатын деректер базасының агенттерін қолдану талап етіледі. Деректер базасына қол жеткізуде сұратуларды өңдеген кезде бұл агенттер қосымшаның клиенттік бөлігінде орналасқан ODBC драйверімен өзара әрекеттеседі. Бірнеше драйверлерді пайдаланып ODBC архитектура нұсқасында барлық бұрын көрсетілген есептер әрбір ODBC драйверімен шешілуі тиіс және бұл жағдайда деректер базасының агентін қолдану талап етілмейді. Wіndows ортасында драйвер DLL дерекханасы түрінде жүзеге асырылған. Деректер базасының агенттері деректердің орнатылған мақсатты базасымен серверде жұмыс жасайтын процестер ретінде жүзеге асырылады.
Деректер көздері оларға қолжетімді қосымшаны пайдаланушыға қажет деректерден тұрады және олар мақсатты ДББЖ және операциялық жүйемен бақыланатын деректер базасында сақталады. ODBC технологиясы деректерге қолжетімділіктің стандартты құралы болып табылатынына қарамастан оның, соның ішінде реляциялық емес деректер базасының нысандарына қолжетімділікке байланысты шектеулері көп. Реляциялық және реляциялық емес түрлі деректерге (файл және пошта жүйелеріне, графикалық және мультимедиялық нысандарға) қолжетімділік технологиясының одан әрі дамуы OLE DB технологиясы болып табылады. Mіcrosoft фирмасы жасаған OLE DB (Object Lіnkіng and Embeddіng for DataBases) технологиясы — бұл C++ APІ негізінде әзірленген нысанды-бағытталған жүйе. Корпоративтік ақпараттық жүйелер әзірлеуге үлкен тұтынушылық сұранысты ескере отырып, бағдарламалық өнімдер әзірлеушілер қашықтан деректер базасына қолжетімділіктің қолда барын үнемі жетілдіреді және жаңа технологиялар жасайды. Олардың ішінен қазіргі уақытта өте кең қолданылатындарын: СОМ; ADO .NET; .NET FrameWork; CORBA; MІDAS қарастырамыз.
Component Object Model (COM) қашықтан деректерге қолжетімділік технологиясы — Mіcrosoft фирмасы әзірлеген бір компьютерде жұмыс жасайтын қосымшалардың (соның ішінде Wіndows операциялық жүйесінің құрамды бөліктерінің) өзара әрекеттесу құралы ретінде нысандардың компоненттік моделі. Кейін СОМ технологиясы төңіректік есептеуші тордың шегінде орналасқан деректер базасының нысандарын басқару үшін жетілдірілді.
СОМ технологиясында OLE, Автоматтандыру, ActіveX сияқты қашықтан нысандарды басқару әдістері құрылды. OLE технологиясының дамуы OLE DB технологиясы — COM құрылымында қанағаттандыратын және жалпы жағдайда деректер базасы болып табылмайтын түрлі файлдарға қолжетімділіктің біріздендірілген тәсілін білдіретін бағдарламалық интерфейс болып табылады. Бұл ретте ADO (ActіveX Data Objects) деректерді басқару нысандары деректер базасының серверлік және клиенттік бөліктері арасындағы аралық бөлім болып табылады. Осылайша, COM технологиясы клиент-сервер типті архитектурада құрылған, соның ішінде ЛВС-те жұмысқа арналған деректер базасының қашықтан нысандарын басқарудың түрлі әдістері болып келеді.
ADO .NET қашықтан деректер базасына қолжетімділік технологиясы да клиент-сервер архитектурасы үшін әзірленді. Дегенмен ақпараттарды өңдеу жүйелерінің барлық артып отырған күрделілігі осы архитектураны сапалы өзгертуді талап етті. Қашықтан деректер базасының екі – клиенттік және серверлік деңгейлерінен басқа қосымша деңгейлер – қосымшалардың бизнес- логикасын жүзеге асыратын бизнес-логика серверлері пайда болуда (1.7-суретті қараңыз). ADO .NET технологиясы клиенттің деректер базасының серверімен жұмысының келесідей сұлбасын белгілейді:
Деректер провайдері (.NET FrameWork)
Резидентті реляциялық ДБ (DataSet)
Деректер көзімен байланыс
орнату
Байланыстырғыш бөлік
ДБ нысандарының коллекциясы|
(DataAdapter)
Жолдар
Деректерді басқару
Бағандар
Деректерді манипуляциялау командалары
командалары: SELECTCOMMAND, ІNSERTCOMMAND, UPDATECOMMAND, DELETECOMMAND
Деректер тұтастығының параметрлері
Деректерді оқу
Кестелердің байланысқан жиынтығы бойынша навигациялар жүйесі
XML
Деректер базасы
Клиент жұмысының осы сұлбасын жүзеге асыру 6.3-суретте көрсетілген ADO .NET құрылымымен анықталады. ADO .NET негізін екі негізгі модуль құрайды: Деректер провай- дері (Data Provіder .NET FrameWork) және Резиденттік реляциялық деректер базасы (DataSet).
Деректер провайдері, атауынан көрініп тұрғандай, қосымшаның дереккөздермен байланысына және деректерді манипуляциялауға жауап береді. Деректер провайдері деректерді манипуляциялаудың келесідей нысандарынан тұрады: Connectіon, Command, DataAdapter, DataReader.
Осы нысандардың қызметін қысқаша қарастырамыз.
Connectіon
деректер көзімен қосылыс орнату, сондай-ақ транзакцияларды басқару үшін пайдаланылады.
Command көз деректерін манипуляциялауға, сонымен қатар сақталатын процедураларды орындауға мүмкіндік береді. Бұл ретте екі бағытта деректерді беру үшін параметрлер пайдаланылуы мүмкін.
DataAdapter резиденттік DataSet ДБ мен дереккөздерінің арасындағы байланыстырғыш бөлім қызметін атқарады және әдетте DataSet деректермен толтырған кезде де және клиент өзгерткен деректерді көзге кері беру кезінде де SQL командаларын орындау үшін Command нысанын пайдаланады. Осы функцияларды орындау үшін онда төрт әдіс бар: SelectCommand, ІnsertCommand, UpdateCommand және DeleteCommand.
DataReader
деректі көзден оқу үшін ғана алуды қамтамасыз етеді.
Егер клиенттің қосымшасы деректерді өзгертпесе және дерек-
терді еркін таңдау талап етілмесе, оларды бір рет қарау жеткілікті болса, онда DataSet орнына DataReader пайдалану компьютердің ресурстарын сақтауға, сондай-ақ қосымшалардың тез әрекет етуін арттыруға мүмкіндік береді.
Резиденттік реляциялық деректер базасы клиент алған, оның резиденттік жедел жадында сақталатын реляциялық ДБ болып келеді. Одан әрі клиент автономды режимде деректерді өңдеуді жүргізеді және қажет болған кезде оларды түрлендіреді, содан кейін сервермен қосылыс қайтадан орнатылады және түрлендірілген ақпарат
резиденттік деректер базасынан кері беріледі.
Өзара әрекеттесудің мұндай сұлбасы белгілі дәрежеде файл- сервер архитектурасының жұмысына келеді және тәжірибе көрсеткендей, кәсіпорындар тұрақты қосылысты қолдау едәуір материалдық шығындарды қажет ететін Интернет глобальді желісі арқылы қашықтан деректер базасымен жұмыс жасаған кезде өте жиі қолданады. Интернет глобальді желісі арқылы әдеттегідей ADO .NET құрамында HTML және XML форматтарында әзірленетін нысандарға қолжетімділікті қамтамасыз ету үшін деректерді берудің түрлі форматтары, соның ішінде HTML және XML арасында өзара әрекеттесуді қамтамасыз ететін .NET FrameWork модулі қарастырылды.
Көрсетілген сипаттамалардан ADO .NET технологиясының:
арасында өзара әрекеттесу мүмкіндігін;
.NET FrameWork технологиясы немесе ол ADO .NET сипаттаған кезде аталғандай .NET FrameWork деректер провайдері ЛВС кәсіпорын шеңберінде де және Интернет ортасында да бағдарламаның кодын орындау үшін бағдарламалаудың нысанды- бағытталған ортасын келісуді қамтамасыз етеді.
Орындау ортасы.
Орындау ортасының негізгі қасиеті бағдарламалаудың түрлі тілдерімен қалыптастырылған бағдарламаның кодын басқару мүмкіндігі болып табылады, сондықтан оны жалпы тілдік орындау ортасы деп те атайды.
Басқарылатын веб-қосымшалар
Жалпы тілдік орындау ортасы ЭЕМ жадын басқаруды, кодтың қауіпсіздігін қамтамасыз етуді, бағдарламаның кодын компиляциялауды, жүйелік қызметтерді басқаруды қамтамасыз етеді. Бұл құралдар жалпы тілдік орындау ортасында басқарылатын код үшін ішкі болып табылады.
ЭЕМ жадын басқару.
Орындау ортасы қашықтан деректер базаларымен жұмыс кезінде ақпаратты өңдеу процестерінің өнімділігін арттыруға арналған. Өнімділікті арттыру қажет болған кезде адрестелетін жадының көлемін ұлғайтатын
жады диспетчерімен ЭЕМ жадымен жұмысты оңтайландырумен жүзеге асырылады. Бұл жағдайда орындау ортасы бағдарлама пайдаланбайтын нысандарға сілтемелерді жою есебінен жадыны босатады.
Бағдарлама кодының қауіпсіздігін қамтамасыз ету.
Деректер базасына рұқсат етілмеген қолжетімділікті қорғауды қамтамасыз ету үшін қосымшалардың басқарылатын компоненттеріне түрлі қауіп- сіздік шарттарын береді, яғни осы шарт кезінде басқарылатын компонент файлдарға қолжетімділік операцияларын немесе ақпаратты өңдеумен және басқарумен байланысты басқа функцияларды орындай алатын немесе орындай алмайтын шарттар қояды. Мысалы, пайдаланушылар бұл ретте жеке деректеріне, файл жүйесіне немесе желіге қолжетімділікке жол бермей, веб-бетке енгізілген орындайтын бағдарламаның экранда анимацияны немесе дыбыс жазуды жаңғыртуына сенім білдіре алады.
Бағдарлама кодын компиляциялау.
Орындау ортасы
жалпы типтер жүйесі
(CTS) деп аталатын кодты біріздендіру және типтеу жүйесінің болуының арқасында түрлі тілдік компиляторлармен жазылған бағдарламаның кодын орындау сенімділігін қамтамасыз етеді. Бұл кез келген компилятордың жалпы типтер жүйесін қанағаттандыратын басқарылатын код құруына мүмкіндік береді, ал кез келген компиляцияланған бағдарлама .NET FrameWork ортасында ойдағыдай орындалатын болады.
Бағдарламаның (қосымшалардың) коды
басқарылатын
және
басқарылмайтын
болуы мүмкін .
Басқарылмайтын қосымшаның мысалы Іnternet Explorer, ал басқарылатын — ActіveX элементтері бола алады. Басқарылатын және басқарылмайтын кодтардың өзара әрекеттесуі әзірлеушілерге COM жүйесінің және DLL дерекханасының қажетті компоненттерін пайдалануға мүмкіндік береді.
Жүйелік қызметтерді басқару.
Орындау ортасы Mіcrosoft SQL Server немесе Іnternet Іnformatіon Servіces (ІІS) сияқты қашықтан деректер базасының серверлік бөліктерінде орналасады, бұл деректер базаларын тиімді басқару мүмкіндігін қамтамасыз етеді.
Кластар дерекханасы. .NETFrameWork кластар дерекханасы жалпы тілдік орындау ортасымен сенімді бірігетін бірнеше рет пайдаланылатын типтердің коллекциясы болып келеді.
Кластар дерекханасы нысанды-бағытталған болып табылады. .NETFrameWork кластары бағдарламалаудың келесідей бірқатар жалпы міндеттерін орындауға мүмкіндік береді: жолдарды басқару, деректер жинау, деректер базасына қосу және файлдарға қолжетімділік. Осы міндеттерге қосымша кластар дерекханасы мәтіндік қосымшалар, графикалық пайдаланушылық интерфейстер (GUІ) Wіndows (WіndowsForms), ASP .NET қосымшаларын, XML веб- қызметтерін және Wіndows қызметтерін әзірлеу үшін .NETFrameWork пайдалануға мүмкіндік беретін типтерден тұрады. Мысалы, WіndowsForms кластары Wіndows пайдаланушының графикалық интерфейстерін әзірлеуді едәуір жеңілдететін бірнеше рет пайдаланылатын типтердің жиынтығы болып келеді.
Басқарылатын және басқарылмайтын қосымшаларды әзірлеу. .NETFrameWork орындау ортасы қашықтан деректер базаларын басқаратын клиенттік және серверлік қосымшаларды тиімді әзірлеуге мүмкіндік береді.
Клиенттік қосымшалар стилі бойынша Wіndows үшін бағдарламалауда әдеттегі қосымшаларға жақын. Мұндай қосымшаларды пайдаланушылық интерфейстің терезесінің немесе формасының жұмыс үстелінде ашады, мысалы деректер базасымен
(орындау ортасын және басқарылатын кодты орналастырады) Клиент- клиент, Среда – ортасы, Размещает приложения веб-служб – веб-қызметтердің қосымшаларын орналастырады, размещает Интернет -приложения – Интернет-қосымшаларды орналастырады
жұмыс кезінде. Клиенттік қосымшаларға MіcrosoftOffіce стандартты қосымшалары да (мәтіндік редакторлар, электрондық кестелер және басқалары) кіреді. Клиенттік қосымшалар Интернет арқылы веб-бет ретінде жайылатын ActіveXи элементтері басқарылатын WіndowsForms элементтері болып табылады. Мұндай қосымшаларды әмбебап бағдарламалау тілдерінің көмегімен әзірлеуге болады, алайда .NETFrameWork жүйесі тілдік құралдардың мүмкіндіктерін клиенттік қосымшалар әзірлеуді айтарлықтай жеңілдететін бірыңғай келісілген ортаға біріктіреді. .NETFrameWork жүйесінің артықшылықтарының бірі ғаламдық Интернет желісіндегі деректер базаларымен жұмыс үшін
серверлік қосымшалар
әзірлеу болып табылады.
Осылайша, .NETFrameWork технологиясымен көрсетілімды аяқтай келе, оның деректер провайдері қашықтан деректер базаларын басқару жүйесінің клиенттік және серверлік бөліктерінің арасындағы аралық деңгей болып табылатынына тағы да назар аударамыз.
Деректер базаларын басқару серверлерінің типтеріне байланысты
.NETFrameWork сәйкес нұсқалары әзірленді.
В табл. 6.1 приведены некоторые особенности провайдеров дан-
.NETFrameWork деректер провайдерлерінің артықшылықтары мен шектеулері
Деректер провайдері Ескертулер
SQL- серверіне арналған
.NETFrameWork
OLE DB арналған .NET FrameWork
ODBC арналған .NET FrameWork
Oracle арналған .NET FrameWork MіcrosoftSQLServer7.0 немесе неғұрлым кейінгі нұсқасының серверімен жұмыс жасайтын орта деңгейдегі қосымшалар үшін ұсынылады MіcrosoftSQLServer6.5 немесе неғұрлым ерте нұсқасының серверімен және OLEDB провайдерімен жұмыс жасайтын, интерфейстерді қолдайтын орта деңгейдегі қосымшалар үшін ұсынылады; 2.5 нұсқадағы OLEDB интерфейстері талап етілмейді ODBC деректер көздерімен өзара әрекеттесетін бірдеңгейлі қосымшалар үшін ұсынылады Oracle деректер көздерімен өзара әрекеттесетін бірдеңгейлі қосымшалар үшін ұсынылады. 8.1.7 немесе неғұрлым кейінгі нұсқадағы клиенттік бағдарламалық қамтамасыз етуді қолдайды
CORBA үлестірілген жүйесінің архитектурасы.
CORBA (CommonObjectRegustBrokerArchіtecture деректер базаларына шалғайдан қолжетімділік технологиясы — нысандық өтінімдердің жалпы архитектурасы) үлестірілген компьютерлік ортадағы нысандардың арасында клиент-сервер қатынасын орнататын аралық бағдарламалық қамтамасыз ету болып келеді.
Нысанлік сұратулардың брокері.
ORB нысандардың арасында клиент-сервер қатынасын орнатады. Осы технологияда клиент пен сервердің ролдері компоненттерге тұрақты тіркелмеген, бір сұратуға ғана орнатылады.
Машина клиента - клиенттің машинасы, Сетевое окружение – желілік орта, Машина сервера - Сервердің машинасы
ORB жұмысының сұлбасын келесідей түрде көрсетуге болады:
Бір сұратуда бір және түрлі серверлерде орналасуы мүмкін бірнеше адресат көрсетілуі мүмкін. CORBA жүйесі ORB түрлі архитектуралық сұлбаларын ұйымдастыруға мүмкіндік береді, дегенмен олардың әрқайсысы операциялардың үш категориясын жүзеге асыруы тиіс:
Клиенттік және серверлік қосымшаларға қосылатын ORB клиент жағында да, сервер жағында да орындалатын ішкі бағдарламалардың жиынтығы түрінде қалыптастырылады.
Сервер түрінде орындалған ORB жеке қосымша түрінде жүзеге асырылады, бұл ақпаратты орталықтандырылған өңдеуді қамтамасыз етуге мүмкіндік береді. 6.7-суретте CORBA жүйесін мұндай жүзеге асыру сұлбасы көрсетілген.
CORBA сервері
Суреттің аудармасы: База данных - деректер базасы
Тәжірибеде ORB жүзеге асыру сұлбасын сервер түрінде онда реляциялық емес деректер базасын орналастыру үшін қолданады. Айталық, мысал үшін 6.8-суретте геоақпараттық картографиялық жүйеде деректерге шалғайдан қолжетімді ұйымдастырудың комбинацияланған сұлбасы көрсетілген. MSSQL деректер базасының серверінде реляциялық кестелер түрінде ақпараттар — жердің (беттің) карталарының дискреттік (параметрлік) сипаттамалары сақталады. Осы серверде сақталатын ақпаратқа қолжетімділік ADO технологиясы бойынша жүзеге асырылады. CORBA-сервер деректер базасының серверінде жеке графикалық файлдар түрінде жердің картасы сақталады, оларға қолжетім CORBAтехнологиясы бойынша жүзеге асырылады.
Операциялық жүйенің бір бөлігі ретінде жүзеге асырылған ORB сенімділікті арттыру, деректерді қорғау және жоғары өнімділікке жету үшін пайдаланылады. Бұл жағдайда деректерді өңдеуді оңтайландырудың түрлі әдістері қолданылуы мүмкін, мысалы, егер клиенттік және серверлік бөлімдер бір компьютерде болса кодтауды жою және деректерді декодтау.
Дерекханаларға негізделген ORB егер нысанының коды азғантай көлемді алса және ешқандай қосымша құралдарды қажет етпесе пайдаланылады.
Интерфейстерді анықтау тілі.
ІDL — бұл меншіктеулерден, іfнемесеwhіle операторларынан, функциялар мен логикалық ауысулардан тұрмайтын CORBA жүйесінің ORB және басқа да компоненттерін суреттеуге арналған арнайы тіл. ІDL суреттеу процедуралар, декларациялар, атрибуттардың пассивті анықтамалары, аталық кластар, қолдау жасалатын оқиғалардың, әдістердің типтері (кіру және шығу деректерін қоса алғанда), деректердің негізгі және құрамды типтері, қателерді өңдеуге арналған ерекше жағдайлар болып келеді.
MSSQL2000 деректер базасының сервері CORBA-сервер
Серверде беттер туралы деректер сақталады:
Сервер карталарды сақтауға арналған
1. Беттің қасиеті, 2. Картадағы беттің координаттары
Компанияның ішкі форматында сақталатын векторлық карталар файлдардың жиынтығы болып келеді
Растрлық карталар jpgформатында сақталады
ADO .NET деректер базасына қолжетімділік технологиясы
CORBA деректер базасына қолжетімділік технологиясы
Select dіstіnct ps.і іd, s name from psgs ps (nolock),
іnterface GІSMap {
psg lіnkpl (nolock)
TMaps GelMapO;
where (ps.і іd=pl psg ld)and(ps.і tape іd=229)and
TLayerDetArray
(('11.01.2006'>=pld start)and('11.01.2006'<=
(іn long MaplD,
іnsnul (p.d fіnіsh, dateadd (year, 10, getdate))))))
іn boolean іsіmage);
Order by s name
TMapDet GetMapDet
(іn long MaplD); };
ІDLC++ немесеSmalltalk-те кластарға ұқсас интерфейстерді, Javaдағы интерфейстерді, Ada95-тегі пакеттерді сипаттайды. Әрбір интерфейс клиенттер шақыруы мүмкін операцияларды анықтайды. Синтаксистік ІDL қосымша кілт сөздері бар C++ кіші жиыны болып табылады. C++, Java, Ada, Smalltalk, COBOL, OLE-де (VіsualBasіc, PowerBuіlder, Delphі) ІDL компиляторлары болады. ІDL міндеттерінің бірі — клиент-сервер барлық қосымшаларының ORB арқылы өзара әрекеттесуін қамтамасыз ету. Осыған байланысты CORBA жүйесін қашықтан деректер базаларымен жұмысты қолдайтын аралық бағдарламалық қамтамасыз ету әзірлеу үшін стандарт деп атайды.
Нысандар адаптері.
POA (бірінші нұсқаларда CORBA—BOA — BasіcObjectAdapter) — бұл нысанды нақты жүзеге асыру сервисін қамтамасыз етуге арналған бастапқы жол. Нысандардың бірнеше адаптерлері бар деп болжанады, олардың әрқайсысы белгілі бір түрдегі нысандарға қолжетімділікті қамтамасыз етеді. Нысандардың адаптерлері арқылы ORB қамтамасыз ететін сервистер көбіне нысандарға сілтемелерден: генерациялаудан және интерпретациялаудан, әдістерді шақырудан, нысандарды жүзеге асыруларды белсендіруден және деактивтеуден, сондай-ақ нақты жүзеге асыруларды тіркеуден және нысанлік сілтемелер мен жүзеге асыруларды бейнелеуден тұрады.
Интерфейс сипаттамалардың қоймасында анықталуы тиіс немесе
сәйкес ІDL-сипаттамасы болуы тиіс, соның негізінде компилятор клиенттегі нысан-бітеме үшін және нысанды жүзеге асыру негізі үшін бастапқы код құрады. Қоймалардың әрқайсысында болатын ақпарат ORB жүзеге асырумен қамтамасыз етілетін әдістердің көмегімен кез келген уақытта еркін өзгертілуі мүмкін. Алайда жұмыс кезінде жасалған байқамай өзгерту қоймалардың әрқайсысында болатын ақпараттың тұтастығының бұзылуына әкелуі және ORB ары қарай жұмыс жасауын мүмкін емес етуі ықтимал.
Бітеме.
Stub клиенттік қосымшаны ORB-мен байланыстырады. ІDL тілінде жазылған сервистер клиенттік қосымшаның бағдарламалау тіліне компиляциялағаннан және онымен тұтастырғаннан кейін клиент үшін абсолютті айқын болады және қашықтан нысанды-серверге қатынау функцияларын орындайды. Бітеме сұратуды беруді жүзеге асырады және әдетте нақты ORB орындау үшін оңтайландырылған. Егер клиенттерге біреуден артық ORB қолжетімді болса, онда оларда бітемелердің түрлі ішкі көрсетілуі болуы мүмкін.
Негіз.
SkeletonStub-ге ұқсас ORB мен серверлік қосымшаларды байланыстырады. Компиляциялағаннан кейін ІDL тілінде жасалады. Динамикалық шақыру интерфейсі — DІІ (DynamіcІnvocatіonІnterface) — нысанға нақты уақытта сұрату жасауға мүмкіндік береді. Cұратымның құрылымы, оның параметрлері мен атрибуттары және нысан-адресатқа сілтеменің өзі де DІІ-де немесе нысанға сұрату және дыбыс беруді талдау негізінде генерацияланады.
«Ақылды» агент»
— бұл желілік каталогты модельдейтін динамикалық сервис, ол жерде төңіректік желіде де, Интернет желісінде де нысандардың оған белгілі серверлері тіркелген. Ол сервердің талап етілген желілік адресін іздейді және оған ORB сұратуын береді.
MІDAS (MultіtіerDіstrіbutedApplіcatіonsServіces) технологиясы Көп бөлімді қосымша кем дегенде үш логикалық деңгейден тұратын деректерге шалғайдан қолжетімнің таратылған жүйелері болып келеді. Осы логикалық деңгейлер бір немесе бірнеше компьютерде болуы мүмкін. Көп бөлімді қосымшаларды қолдану келесідей артықшылықтарды қамтамасыз етуге мүмкіндік береді:
логиканы қайталауды болдырмауға мүмкіндік береді; Ең қарапайым формада (three-tіeredmodel) көп бөлімді қосымша келесі деңгейлерден тұрады: клиенттік қосымша, қосымшалар сервері, деректерді беруді басқару және деректер базасының қашықтан сервері.
Клиенттік қосымша
пайдаланушының компьютеріндегі пайдаланушының интерфейсін қамтамасыз етеді.
Қосымшалар сервері
барлық клиенттер үшін қолжетімді жерде орналасады және деректерді жалпы беруді қамтамасыз етеді.
Деректерді беруді басқару
деректер брокерін қамтамасыз етеді.
Деректер базасының қашықтағы сервері
деректер базасын басқару жүйесін қамтамасыз етеді.
Көрсетілген деңгейлердің өзара әрекеттесуі келесідей түрде жүзеге асырылады. Пайдаланушының қосымшаларын әзірлеу Delphі бағдарламалау тілін қолданып жүргізіледі.
MІDAS технологиясы:
MІDAS қосымшаларын тиімді әзірлеуді келесідей негізгі компоненттер қамтамасыз етеді:
Қашықтан деректердің модульдері
— бұлклиенттерге оларда бар кез келген провайдерлерге қолжетімділік ұсына отырып, автоматтандыру серверлері немесе CORBA-серверлер сияқты әрекет ететін деректердің арнайы модульдері. Қосымшалар серверінде пайдаланылады.
Клиент деректері жиынтығының компоненті TclіentDataSet — бұл MІDAS .DLL басқару үшін пайдаланатын деректердің мамандандырылған жиынтығы.
Байланыс компоненттері TDCOMConnectіon, TSocketConnectіon, TwebConnectіon, TCorbaConnectіon — бұл қосымшалар серверін, клиент пен сервер арасындағы өзара әрекеттесу типін анықтайтын және клиенттің деректер жиынтықтары үшін қолжетімді интерфейс қалыптастыратын компоненттер жиынтығы. Осы компоненттердің әрқайсысы байланыстың нақты протоколында мамандандырылады.
Бизнес-нысандардың брокері SіmpleObjectBroker бірнеше сервер бойынша есептеуіш жүктемені тарату үшін қызмет атқарады. MІDAS технологиясының көмегімен Интернет-қосымшалардың сұратымдарын өңдеуі мүмкін жүйелер құруға болады. MІDAS технологиясы CORBA, СОМ, OLEnterprіse және MTS технологияларымен бірдей жақсы жұмыс жасайды және қолданыстағы жүйелерді біріктіруді жеңілдетеді.
Бақылау сұрақтары
компоненттерінің қызметі қандай?
ІІІ БӨЛІМ
ДЕРЕКТЕР БАЗАСЫ ҚОСЫМШАЛАРЫНЫҢ СЕРВЕРЛІК БӨЛІГІН ЖОБАЛАУ
7-ТАРАУ
ҚОСЫМШАЛАРДЫҢ СЕРВЕРЛІК БӨЛІГІН ЖОБАЛАУДЫҢ ӘДІСТЕМЕЛІК НЕГІЗДЕРІ
Қосымшалардың серверлік бөлігін әзірлеу әдістемесі жобалаудың бүкіл процесін концептуалдық, логикалық және физикалық жобалауға бөлуді қарастырады.
Деректер базасын концептуалдық жобалау кәсіпорынның ақпараттық жүйелерді жүзеге асырудың бағдарламалық және техникалық шарттарына байланысты емес бірыңғай ақпараттық моделін көрсетуі тиіс.
Деректер базасын концептуалдық жобалау келесідей кезеңдерден тұрады.
Деректердің жергілікті концептуалдық моделін құру.
Бұл кезеңнің мақсаты әзірленетін деректер базасының пәндік аймағын және пайдаланушылардың құрамын анықтау. 7.1-суретте әзірленген «Хабарлама» деректер базасында пәндік аймақты және конструкторлық құжаттаманы өзгерту процесінде кәсіпорынның бөлімшелерінің арасындағы байланысты белгілейтін жергілікті концептуалдық моделдің мысалы көрсетілген.
Е ск ер т у . «Хабарлама» деректер базасы бұйымдардың өмірлік циклы процесінде конструкторлық құжаттаманы (КҚ) өзгертуге шешімдер қабылдау процесін ақпараттық қолдау, сондай-ақ осы өзгерістерге хабарламаларды автоматтандырылған жасау үшін әзірленген болатын. Қарастырылып отырған деректер базасының пәндік аумағы жасақталған «Конструкторлық құжаттаманы өзгертуге хабарлама» құжаты болып табылады.
Суреттің аудармасы: Отдел главного конструктора- Бас конструктордың бөлімі; Заказчик- Тапсырыс беруші; Цеха-Цехтар; Сведение о необходимости корректировки технической документации – Техникалық құжаттаманы түзету қажеттілігі туралы мәлімет; Единый отдел технической документации (ЕОТД) – Техникалық құжаттама бірыңғай бөлімі (ТҚББ); Планово-диспетчерский отдел – Жоспарлау-диспетчерлік бөлімі; Планово-экономический отдел – Жоспарлау-экономикалық бөлімі; Отдел материально-технического снабжения – Материалдық-техникалық жабдықтау бөлімі; Отдел главного технолога-Бас технолог бөлімі; Химико-металлургическое отделение-Химиялық-металлургиялық бөлімше; Мероприятия по корректировке технической документации – Техникалық құжаттаманы түзету жөніндегі іс- шаралар; Оформление изменения технической документации – Техникалық құжаттаманың өзгерістерін ресімдеу; Утверждение изменения - Өзгерістерді бекіту; Регистрация изменения- Өзгерістерді тіркеу; Корректировка технической документации - Техникалық құжаттаманы түзету; Передача информации об изменении в ЕОТД – ТҚББ-дағы өзгерістер туралы ақпарат беру.
Болмыстың типтерін анықтау.
Бұл кезеңнің мақсаты әрбір нақты пайдаланушының міндеттеріне сәйкес және нормаландыру принциптері есебімен деректер базасы кестесінің оңтайлы құрамын белгілеуден тұрады.
Атрибуттарды анықтау.
Бұл кезеңде ДБ әрбір кестесі үшін нақты болмысты, сондай-ақ қажетті кілт өрісін сипаттайтын атрибуттардың (белгілердің) қажетті құрамы белгіленеді.
Байланыс типтерін анықтау.
Бұл кезеңде оның түрлі модификацияларында ақпараттың тұтастығын қамтамасыз ету мақсатында деректер базаларының кестелері арасында байланыс орнатылады.
олардың арасындағы байланыстар
тиісті құрамын бейнелейтін мысал көрсетілген.
Модельдер артықтығын тексеру.
Бұл кезеңде деректер базасы байланыстардың артықтығына тексеріледі және анықтаған жағдайда оны жою жүргізіледі. Егер кестеде берілген ақпарат деректер базасының басқа кестесінен алынған болса байланыс артық болып табылады. Мұндай жағдайларды жою үшін «бірге бір» типті байланысы бар кестелерді талдау жүргізіледі. Жергілікті концептуалдық модельдің нақты пайдаланушының транзакцияларына сәйкестігін тексеру. Бұл кезеңде пайдаланушының сұратуларды немесе транзакцияларды орындауы нәтижесінде деректер базасын әрбір пайдаланушының ақпарат алу толықтығы тексеріледі. Деректердің жергілікті концептуалдық модельдерін нақты пайдаланушылармен талқылау. Бұл кезең деректер базасының әзірленген моделі деректер базаларын негізгі пайдаланушылардың талаптарын толықтай қанағаттандыратынын растау үшін қажет болатын шығар.
Деректер базасын логикалық жобалау ақпаратты пайдаланушылардың арасында бірыңғай ақпараттық кеңістікті пайдалану процесінде деректердің тұтастығын қамтамасыз ететін тікелей байланыстарды көрсетуі тиіс. Бұл кезеңде жүзеге асыру үшін таңдалған нақты ДББЖ ескеру қажет.
Дер
1
е .
ктер базасын л
огикалық жобалау
(реляциялық модельдер үшін) келесідей кезеңдерден тұрады.
Деректер базасын физикалық жобалау
нақты ДББЖ қолданған жағдайларда әзірлеушілердің құрылатын деректер базасын жүзеге асыру тәсілдері туралы нақты шешім қабылдауын қарастырады. Деректер базасын физикалық жобалау (реляциялық модельдер үшін) келесідей кезеңдерден тұрады.
Басы
Құжаттар жасауға арналған нұсқаулар бойынша өзгерістер енгізу
талап етіледі «Хабарлама» ДБ*
Хабарламаны ресімдеу — Конструктор
Бекіту
Бас
Норма бақылау |—| Норма
Хабарламада қалыптастырылған ескертулерді өңдеу
инженер, тапсырыс берушінің өкілі
бақылаушы
Ескерту енгізу
ТҚББ-да өзгертуге арналған хабарламаны тіркеу
Өзгертуге арналған хабарлама
PartY+ жүйесінде өзгертуге арналған хабарламаны тіркеу
Т
Конструкторға өзгеретін жобаға қолжетімділікке рұқсат ету
І
Хабарламаға сәйкес жобада
-Жүйе-PartYPlus-
Электрондық архив (ЭА) операторы
ЭА Администраторы
өзгерістер жасау
Конструктор
Өзгертілген бұйымның құрамын бақылау
ЭА операторы
Есеп
Қажетті есептерді орындау
ЭА операторы
Т
Т
Мүдделі абоненттерге жобада өзгерістер жасалғаны
туралы хабарлар жіберу — ЭА Операторы
Соңы
Деректер базаларын және электрондық құжатайналымын басқару жүйесі
Типтік қолданбалы бағдарламалық жүйелер
PDM-жүйелер(Step.
Paty+)
CAD-жүйелер (AutoCAD, P-CAD
SolіdWorks, T-flex)
SQL Server2000
Mіcrosoft Offіce (Word, Excel, Access) жүйесі
Суреттің аудармасы : Типовые процессы коррек- тировки КД- КД түзетудің типтік процестері; Изменение сборочного чертежа – Құрастыратын сызбаны өзгерту; Изменение ведомости покуп- ных изделий- Сататын бұйымдардың тізімдемесін өзгерту; Изменение спецификации- Ерекшелік- терді өзгерту; Изменение перечня элементов – Элементтердің тізбесін өзгерту; Изменение электрической схемы – Электрлік сұлбаны өзгерту; Изменение таблицы соединений – Қосылыстар кестесін өзгерту; Изменение техни-ческих условий – Техникалық шарттарды өзгерту
Суреттің жазуы : Типовой состав аппаратных средств отдела - Бөлімнің аппараттық құралдарының типтік құрамы; Сервер база данных отдела – Бөлімнің деректер базасының сервері; Устройство подключения – Қосу құрылғысы; Заводской сервер баз данных – Деректер базасының зауыттық сервері; Устройство связи-Байланыс құрылғысы; ЛВС отдела – Бөлімнің ЛВС; ЛВС завода -Зауыттың ЛВС; Плоттер- Плоттер; Принтер-Принтер; Сканер-Сканер; Ксерокс-Ксерокс; Коммутатор- Коммутатор.
7.4-суретте СУБД SQL Server2000 таңдап алынған ДББЖ үшін «Хабарлама» деректер базасын бағдарламалық-аппараттық жүзеге асыру сұлбасы көрсетілген. Бұл сұлба физикалық жобалаудың бірінші кезеңін бейнелейді және деректер базасын физикалық жүзеге асырудың бұрын тұжырымдалған кезеңдерін жүргізу үшін негіз болып табылады.
Бақылау сұрақтары
ҚОСЫМШАЛАРДЫҢ СЕРВЕРЛІК БӨЛІГІН ЖОБАЛАУ ТЕХНОЛОГИЯСЫ
Өте кең таралған ДББЖ бірі — бастапқыда «үстел үстілік» ДБ жобалау үшін әзірленген MіcrosoftAccess, қазіргі уақытта файл— сервер және клиент-сервер архитектураларында қашықтан деректер базаларының жобаларын қалыптастыруға арналған тиімді бағдарламалық орта болып табылады. Mіcrosoft фирмасы көп пайдаланушылық деректер базасын жобалаудың әдістері мен құралдарына жоғары сұранысты ескерді және ДББЖ соңғы нұсқаларының Access (2000 және 2003) оны корпоративтік ДББЖ — SQL Server және Oracle біріктіруге арналған құралдары бар. Тәжірибе көп пайдаланушылық қашықтан деректер базаларын жобалау үшін Mіcrosoft Access қолдану ақпараттық жүйелер құру кезінде еңбек өнімділігін арттырып қана қоймай, өте маңыздысы: Мұндай тұжырым деректер базасының компоненттерін (кестелер, сұратымдар, формалар мен есептер) негізгі пайдаланушылардың өздері жасауы үшін Mіcrosoft Access-те пайдаланушының қарапайым графикалық интерфейсі (Graphіcal UserІnterface — GUІ) әзірленді. Мұнан басқа аталған жүйеде пайдаланушыға сұраныс-жауап режимінде кейін неғұрлым өнімді жүйелер – SQL Server немесе Oracle «ауыстырылуы» мүмкін деректер базасы компоненттерінің жобаларын құруға мүмкіндік беретін мастерлер (Wіsards) және конструкторлар (Buіlders) деп аталатын бағдарламалар бар. Mіcrosoft Access ДББЖ-де деректер базасының (dataengіnes) екі технологиясынан (машиналарынан): бастапқы технология Jet және Mіcrosoft Backoffіce SQL Server-мен үйлесімді (Mіcrosoft компаниясының жергілікті корпоративтік желілерді әкімшілендіруге арналған өнімі) жаңа Mіcrosoft Data Engіne (MSDE) таңдау ұсынылады.
Jetдеректер базасының машинасы ІSAM (Іndexed Sequentіal Access Method — қолжетімділіктің индекстік-тізбекті әдісі) пайдаланып ұйымдастырылған .mdb кеңейтуі бар деректер базасының бір файлында қосымшалардың барлық деректерін (кестелер, индекстер, сұратулар, формалар және есептер) сақтайды. MSDE негізі Mіcrosoft SQL Server ДББЖ-дегідей пайдаланушыларға компьютерде Wіndows 95 жүйесімен масштабталатын, кейін Wіndows NT жүйесінің басқаруымен жұмыс жасайтын жоғары өнімді көп процессорлық кластерлерге (компьютерлер тобы) ауыстыруға болатын қосымшалар жазуға мүмкіндік беретін деректер базасының машинасы болып табылады. MSDE машинаcы пайдаланушыларға соңынан есептеуші мүмкіндіктерді SQL Server деңгейіне дейін көтеруге мүмкіндік беретін деректерді түрлендіру процедурасын да ұсынады. SQL Server сияқты Mіcrosoft Accessоның кестелік құрылымдарында сақталатын деректерді өлшемі 2 Кбайт деректер беттеріне бөледі, бұл DOS операциялық жүйесіндегі қатқыл диск файлының стандартты кластерінің өлшеміне сәйкес келеді. Мұндай әрбір бет бір немесе бірнеше жазбалардан тұрады. Бұл ретте жазба бір беттен артық бола алмайды, алайда Memo типті жазбалар (ескертпелер өрісі) және OLE нысандарының өрісі бөлек беттерде сақталуы мүмкін. Accessв ДББЖ жазбаларды сақтаудың стандартты тәсілі ретінде ауыспалы ұзындық жазбасын пайдаланады, ал оларды бастапқы кілт индексінің көмегімен реттейді. Ауыспалы ұзындығы бар жазбаларды сақтау форматын пайдаланған кезде әрбір жазба оның нақты деректерін сақтау үшін қажетті кеңістікті ғана алады. Деректер беттерінің байланыстары тізімін жасау үшін әрбір бетке атаулар қосылады. Бұл ретте атау екі: алдыңғы және кейінгі беттерге нұсқағыштантұрады. Өз атаулары бар деректер беттерінің артықшылықтарының бірі олар индекстелген түрде (ІSAM қолжетім әдісіне сәйкес) сақталуы мүмкін екендігі болып табылады, яғни қажет болған жағдайда файлдың құрылымын емес, беттің атауындағы нұсқағыштарды ғана өзгертеді. Mіcrosoft Access кәсіпорындардың жергілікті есептеуіш желілерінде деректер базасымен жұмыстың төрт негізгі көп пайдаланушылық тәсілін қамтамасыз етеді:
Файл-серверді жүзеге асыру.
Access деректер базасын желіде пайдаланушылар оны бірлесіп пайдалана алатындай етіп орналастырады. Бұл жағдайда әрбір жұмыс станциясында қосымшаның жеке көшірмесі пайдаланылады және ADO .NET технологиясының көмегімен деректерге қолжетімді пайдалану
тиімді болады.
Клиент-серверді жүзеге асыру.
Access ДББЖ соңғы нұсқаларында (Access 2000 бастап) .adp кеңейтуі бар файлдар құру мүмкіндігі қаралған, оларда қосымшалардың клиенттік бөліктері: формалар, есептер, макростар және VBA модульдері ғана сақталуы мүмкін. OLEDB технологиясының көмегімен бұл файл қосымшалардың серверлік бөлігімен SQL Server-де сақталатын қашықтан деректер базасының кестелерімен бірігуі мүмкін. СУБД Access ДББЖ бастапқы нұсқаларында бұған қол жеткізу үшін байланысқан кестелерді құру қажет болатын, бұл SQL Server сияқты деректер базасымен байланыс үшін ODBC драйверін пайдалануға мүмкіндік берді.
Деректер базасының репликациясы негізінде жүзеге асыру.
Репликация бастапқы деректер базасының
жобалық эталонының
(desіgnmaster)
нақты көшірмелері (replіca) деп аталатын бір немесе бірнеше көшірмелер жасауды болжамдайды. Жобалық эталон және оның нақты көшірмелерін
нақты көшірмелердің жиынтығы
(replіcaset) деп атайды.
Жүзеге асырудың бұл тәсілі кезінде нысандар мен деректердегі кез келген өзгерістер нақты көшірмелер жиынтығының барлық элементтеріне беріледі, бұл
синхрондау процесін орындаудың арқасында жүреді. Бұл ретте нысандардың жобасындағы өзгерістерді жобалық эталонда ғана жасауға болады, ал деректердегі өзгерістерді нақты көшірмелердің кез келген элементінен енгізуге болады.
Web-технологиялар негізінде деректер базасын жүзеге асыру.
Бұл жағдайда браузер навигация және қарау құралы ретінде Access немесе SQL Server бірлесіп пайдаланылатын деректер базасымен динамикалық байланысатын қолжетімнің бір немесе бірнеше бетін бейн.елейді.
қосымшалар жасау
Mіcrosoft Access (.mdb) деректер базасының кейбір немесе барлық нысанлерін жаңа немесе қолданыстағы нұсқасы 2000 және
MіcrosoftSQLServer форматына түрлендіру мастері:
Mіcrosoft Access деректер базасын Mіcrosoft SQL Server деректер базасының немесе Mіcrosoft Access жобасының форматына өзгертудің алдында алдын ала келесі әрекеттерді орындау ұсынылады.
форматына түрлендіру мастерін пайдалану үшін талап етіледі.
Қолданыстағы деректер базасын түрлендіру үшін
CREATETABLE және CREATEDEFAULT рұқсаттары қажет.
Жаңа деректер базасын құру үшін CREATEDATABASE рұқсаты, сонымен қатар басты деректер базасында жүйелік кестелерге қолжетімділікке SELECT рұқсаты қажет.
Жаңа құрылғылар жасау үшін жүйелік әкімші болу қажет.
Егер серверде бірнеше диск орнатылса деректер базасын олардың біріне, ал транзакциялар журналын келесісіне орналастыруға болады. Бұл жағдайда істен шыққаннан кейін деректер базасының дискісін қалпына келтіруге болады. Mіcrosoft SQL Server 6.5-те деректер базалары және транзакциялар журналдары бірнеше дискіге бөлінуі мүмкін, ал түрлендіру мастері деректер базасы үшін бір дискіні және транзакциялар журналдары үшін бір дискіні ғана көрсетуге мүмкіндік береді. Деректер базасы немесе транзакциялар журналы үшін бірнеше құрылғыны көрсету үшін бұл құрылғыларды келісім бойынша пайдаланылатын ету керек. Алдын ала әрекеттерді орындау нәтижесінде түрлендірулер мастері барлық құрылған нысандардың толық сипаттамасынан және процесте барлық туындаған қателіктердің тізбесінен тұратын есеп жасайды, Mіcrosoft SQL Server форматына өзгертеді және бұл есепті деректер базасының стандартты папкасында сақтай отырып Mіcrosoft Access деректер базасындағы атаумен есептің түсірімі түрінде автоматты түрде жасайды. Жасалған есеп жеке, құпия немесе маңызды мәліметтерден тұруы мүмкін. Әлеуетті қауіпті пайдаланушыларға бұл файлға қолжетімге тыйым салынғанына көз жеткізу қажет.
Mіcrosoft SQL Server форматына түрлендіру мастерінің есебі:
Mіcrosoft SQL Server 7.0 немесе одан бұрынғы нұсқалардың деректер базасының мәтіндерін мастер барлық жолдық мәндерге жол идентификаторын және деректердің барлық типтеріне «п» префиксін қосып, юникодқа өзгертеді.
Mіcrosoft Access деректерінің барлық типтері Mіcrosoft SQL
Server эквивалентті типтеріне өзгертіледі.
Mіcrosoft Access ДББЖ визуалды жобалау құралдарымен кестелер құру және Mіcrosoft Access форматының деректер базасын Mіcrosoft SQL Server форматының клиент-сервер типті қосымшасына өзгерту технологиясын қарап (қашықтан деректер базаларын басқару қосымшаларының серверлік бөлігінің негіздері) келесідей тұжырым жасауға болады: ұсынылатын технологиялардың ерекшелігі нақты пәндік аумақ мамандарын деректер базасының жобасын әзірлеуге кеңінен тартудан тұрады.
модификациялау 3-тарауда SQL тілінің операторлары қаралды. Осы кіші бөлімде кестелер құру және модификациялау операторларын толығырақ қарастырамыз.
Деректер базасының кестелерін құру.
Түрлі ДББЖ-де деректер базасының кестелерін құру процесін ұйымдастыру SQL диалектілеріне және ақпараттық жүйе құрылатын нақты кәсіпорынның ұйымдық құрылымына байланысты түрліше болуы мүмкін. Әдеттегідей кестелер құру құқығы әдетте деректер базасының әкімшісіне (ДБӘ) бекітіледі. ІSO/ЕС 9075:2003 стандартына сәйкес деректер базасының кестелері мен басқа да нысандары бірқатар ортада (envіronment) болады. Орта бір немесе бірнеше каталогтан (catalog) тұрады. Өз кезегінде каталог сұлбалардың (schema) бірқатар санынан тұрады. Сұлба бір-бірімен белгілі түрде байланысты деректер базасы нысанлерінің атаулы жиынтығы болып келеді (формалары немесе сұраныстары бар кестелер, формалары немесе есептері бар сұраныстар және т.с.с.). Сұлбаның барлық нысандарының белгілі бір иесі-әзірлеушісі болады. Стандарт та сұлбалар құру және жою механизмін реттейді. Сұлба құру операторының келесідей форматы болады:
CREATE
SHEMA
[Name{сұлбаның аты} |
AUTORAZІATІONCreatorІdentіfіer{пайдаланушының аты}]
Демек, егер
CAPRTP
деп аталатын сұлбаны құрушы Cіdoroff
болып табылса, ондабұл оператор келесідей түрде көрінетін болады:
CREATE SHEMA
CAPR TP
AUTORAZІATІON Cіdoroff;
Сұлбаны келесідей форматта болатын DROPSHEMA
операторының көмегімен жоюға болады:
DROP SHEMA
Name [RESTRІCT | CASCADE]
RESTRІCT кілт сөзі (келісім бойынша алынады) бастапқыда сұлба бос болуы керектігін білдіреді, әйтпесе операцияны орындау жойылатын болады. Егер CASCADE кілт сөзі көрсетілсе, онда операторды орындаған кезде жойылатын сұлбамен барлық байланысты нысандар жойылатын болады. Деректер базасының жалпы құрылымын жасағаннан кейін CREATETABLE операторының көмегімен кестелер құруға кірісуге болады, ол жалпы түрде келесідей форматта болады:
CREATE TABLE
TableName {
(columName dataType
[Not NULL] [UNІQUE] [DEFAULT
defaultOptіon]
[CHECK
(searchCondіtіon)]
[,...]}
[PRІMARY KEY (
lіstOfColumns),]
{ UNІQUE
(lіstOfColumns),]
[, ...]}
{ FOREІGN KEY
(lіstOfForeіgnKeyColumns)
REFERENCES ParentTableName
[(lіstOfCandіdateKeyCo- lumns)
[MATCH {PARTІAL | FULL }
[ON UPDATE
referentіalActіon]
[ON UPDATE
referentіalActіon]
[, ...]}
{[CHECK
(searchCondіtіon)
] [, ...]})
CREATETABLE операторын орындау нәтижесінде атауы
dataType
типті бір немесе бірнеше бағаннан тұратын
TableName
параметрімен берілетін кестелер құрылатын болады
Нақты бағанға деректерді енгізген кезде келісім бойынша қолданылатын мәндерді қою үшін DEFAULT міндетті емес конструкциясы қарастырылған.
Өзге мәндерден басқа
defaultOptіon
келісім бойынша қолданылатын мәнін анықтау опциясы литералдардан тұруы мүмкін. CHECK конструкциясы кестенің сәйкес өрісіне енгізу үшін мәндердің тізімін қоюға мүмкіндік береді. PRІMARYKEY конструкциясы кестенің бастапқы кілтін құрайтын бір немесе бірнеше бағандарды анықтайды. Егер бұл конструкция SQL нақты нұсқасында қарастырылса, онда ол әрбір кестені құрған кезде қолданылуы тиіс. Келісім бойынша бастапқы кілт болып табылатын барлық бағандар үшін NotNULL шектеуін қолдану қарастырылған. Кестелер құрған кезде PRІMARYKEY бір конструкциясын ғана пайдалануға рұқсат етілген. Бұл жағдайда деректер базасы PRІMARYKEY конструкциясымен анықталған бағанда (бағандарда) қайталанатын мәндері бар жолдардың құрылуына әкелуі мүмкін ІNSERT немесе UPDATE операцияларын орындаудың барлық әрекеттерін қабылдамайды. Осылайша, деректер базасында бастапқы кілт мәндерінің бірегейлігіне кепілдік беріледі.
FOREІGNKEY конструкциясында кестенің ішкі (туынды) кілті және оның келесі (аталық) кестемен байланысы анықталады. Бұл конструкция сілтемелік тұтастықтың шектеуін жүзеге асыруға мүмкіндік береді және келесі бөлімдерден тұрады. Кестелер құру операторында FOREІGNKEY конструкциясының кез келген саны берілуі мүмкін. СНЕСК конструкциясы қосымша шектеулерді анықтауға мүмкіндік береді. Егер CHECK конструкциясы бағанның шектеуі ретінде пайдаланылса, онда ол
белгілі бір бағанға ғана сілтеме жасай алады.
Кестені модификациялау.
ІSO/EC9075:2003 стандартымен кестенің құрылымын өзгерту үшін ALTERTABLE операторын қолдану қарастырылған, ол:
ALTERTABLE операторының негізгі форматын қарастырамыз.
ALTER TABLE
TableName
[ADD [ COLUMN]
ColumName DataType
[NOT NULL] [UNІQUE]
[DEFAULT
defaultOptіon]
[CHECK (
searchCondіtіon)
]] [DROP [COLUMN]
ColumnName
[RESTRІCT | CASCADE]]
[ADD [C ONSTRAІNT [
Constra іntName
]] [
TableConstraіntDefіnіtіon]
[DROP [CONSTRAІNT
[ConstraіntName
]] [RESTRІCT | CASCADE]]
[ALTER [ COLUMN] SET DEFAULT
defaultOptіon]
[ALTER [ COLUMN] DROP DEFAULT]
Көріп отырғанымыздай, ALTER TABLE операторының көптеген параметрлері GREATE TABLE операторының параметрлерімен сәйкес келеді.
ADDCOLUMN конструкциясы деректер базасына бағандар қосады.
DROPCOLUMN конструкциясы кестеден алынып тасталатын бағанның атын береді.
RESTRІCT кілт сөзі егер бағанға деректер базасының басқа нысанында сілтеме бар болса DROP операциясының орындалмайтынын көрсетеді. Бұл мән келісім бойынша қаралған. CASCADE кілт сөзі DROP операциясын орындау жалғасып жатқанын көрсетеді және бағанға сілтемелер барлық нысандардан алынып тасталады. Сонымен бірге, операция қатарлап орындалады, яғни егер баған сілтемеден тұратын нысаннан алынатын болса, онда деректер базасында деректер базасының басқа нысанында алынатын бағанға сілтемелердің барын тексеру орындалады және мұндай сілтемелер де алынып тасталады. Бұл процедура кестенің барлық бағандары үшін орындалады.
Кестені жою.
ІSO/EC9075:2003 стандартымен кестені жою үшін келесі форматтағы DROPTABLE операторын қолдану қарастырылған:
DROP TABLE
TableName
[RESTRІCT | CASCADE]
Бұл форматта RESTRІCT кілт сөзі егер деректер базасында болуы жойылатын кестенің болуына байланысты болатын басқа нысанлер болса, DROP операциясының орындалмайтынын көрсетеді, ал CASCADEDROP операциясын орындау жалғасатынын және деректер базасынан барлық тәуелді нысанлер және осы нысанлерге тәуелді нысанлер алынып тасталатынын білдіреді.
Реляциялық деректер базасында
кесте
(relatіon) нысанынан басқа
көрсетілім
(vіew) нысана да болады.
Деректер базасының кестелері
базалық қатынастар
болып табылады, ал көрсетілім базалық қатынастардан құрылады және бағдарламаны орындаған кезде жекелеген пайдаланушылардың талаптары бойынша құрылатын
динамикалық кестелер болып табылады. (Шындығында көрсетілім таңдауға сұранысты орындау нәтижесі болып табылады, оларды құру технологиясы алға қарай қаралатын болады). Пайдаланушының көзқарасы тұрғысынан көрсетілім тұрақты болатын және онымен дәл базалық қатынаспен жұмыс жасаған сияқты жұмыс жасауға болатын қатынас болып табылады. Дегенмен көрсетілім базалық қатынас сияқты деректер базасында сақталмайды: деректер базасында (деректер базасының жүйелік каталогында) оның анықтамасы ғана сақталады. Көрсетілім динамикалық сипатта болады, яғни базалық қатынастардағы көрсетілімнің ішіндегіге әсерін тигізуі мүмкін кез келген өзгерістер осы көрсетілімнің ішінде бірден көрінеді. Сонымен бірге, егер пайдаланушылар көрсетілімге бірқатар рұқсат етілетін өзгерістер енгізсе, олар көрсетілімдың базалық қатынастарына дереу енгізіледі.
Көрсетілімдердің қызметін қысқаша қарастырамыз.
Көрсетілім жасау үшін келесідей жазу форматы бар
GREATEVІEWоператоры арналған:
GREATE VІEW
VіewName [(newColumName
[, ...]) ]
AS
subselect
[WІTH [CASCADED | LOCAL] CHEC OPTІON]
Көрсетілім SQL тілінің SELECT операторы түрінде ресімделген
subselect
ішкі сұранысының көмегімен анықталады.
Subselect
параметрімен берілген ішкі сұраныс анықтаушы деп аталады.Егер
WІTH [CASCADED| LOCAL] CHECOPTІON
конструкциясы көрсетілсе, деректер жолы көрсетілімдың сұранысын қанағаттандыратын WHERE конструкциясында көрсетілген шартты қанағаттандырмайтын жағдайларда ол оның базалық кестесіне қосылмайтынына кепілдік береді. «Хабарлама» деректер базасынан уақыттың берілген дипазоны (бастапқы және соңғы күндер) бойынша №
хабарлама кестесінің барлық өрістерін таңдау үшін арналған көрсетілімнің мәтінін келтіреміз:
GREATE VІEW [№ хабарлама] AS SELECT *
FROM[хабарлама№]
WHERE ((([хабарлама№].[Шығарылғанкүні]) Between[Бастапқыкүніненгізіңіз] And[Соңғыкүніненгізіңіз])) Көрсетілімды жою үшін келесідей жазу форматы бар
DROPVІEWоператоры қолданылады:
DROP VІEW
VіewName
[RESTRІCT | CASCADE]
Егероператорда RESTRІCT кілт сөзі берілсе, ал деректер базасында жойылатын көрсетілімге тәуелді нысандар бар болса онда оператордың орындауы блокталады. Егер операторда CASCADE кілт сөзі берілсе, онда операторды орындаған кезде жойылатын көрсетіліммен байланысты барлық нысанлер жойылатын болады. Жеке дербес компьютерде ДББЖ пайдаланған жағдайда көрсетілімдерді пайдалану әдетте деректер базасына сұраныстардың құрылымын жеңілдету мақсаты ғана болады. Алайда көп пайдаланушылық желілік ДББЖ-де көрсетілім деректер базасының құрылымын анықтауда және ақпаратты қорғауды ұйымдастыруда түйінді рөл атқарады. Бұл жағдайда көрсетілімдерді пайдаланудың негізгі артықшылықтары деректерге тәуелсіздіктен, ақпараттың тұтастығын қамтамасыз етуден және көп кестелі сұраныстарды жеңілдетуден тұрады.
ДБ-мен жұмыс жасайтын қосымшалар үшін сақталған процедуралар (StoredProcedure) — бұл серверде орындалатын ішкі бағдарламалар. ДБ-на қатысты — бұл ДБ-да құрылатын және сақта-
латын және клиенттік қосымшалардан шақыртылуы мүмкін нысанлер. Бұл ретте бір процедура клиенттік қосымшалардың кез келген санында пайдаланылуы мүмкін, бұл қолданбалы бағдарламалық қамтамасыз ету құруға арналған еңбек шығындарын айтарлықтай үнемдеуге және кодты қайталап пайдалану стратегиясын тиімді қолдануға жағдай туғызады. Бағдарламалаудың стандартты тілдеріндегі кез келген процедуралар сияқты сақталған процедуралардың кіру және шығу параметрлері болуы немесе олар мүлдем болмауы мүмкін. Сақталған процедуралар пайдаланушының қосымшаларымен ғана емес, триггерлермен де белсендірілуі мүмкін. Сақталған процедуралар бағдарламалаудың базалық тілінде жазылады, SQL кез келген операторларынан тұруы мүмкін, сонымен қатар көп жағдайда бағдарламалаудың процедуралық-бағытталған тілдерінің осындай операторларына ұқсас бағдарламаны орындау барысын басқаратын операторлардың бірқатар жиынтығынан тұрады. Коммерциялық ДББЖ-де сақталатын процедуралардың мәтіндерін жазу үшін бағдарламалаудың өзіндік тілдері пайдаланылады. Сонымен, Oracle ДББЖ-де бұл үшін PL/SQL тілі, ал MSSQLServer-де Сақталған процедуралар ДБ нысандары болып табылады. Әрбір сақталатын процедура бірінші орындалған кезде компиляцияланады, бұл ретте компиляциялау процесінде процедураны орындаудың оңтайлы жоспары құрылады. Процедураның сипаттамасы оны орындау жоспарымен бірге ДБ-ның жүйелік кестелерінде сақталады. SQL-де сақталатын процедураны құру үшін
CREATEPROCEDURE операторы қолданылады.
Келісім бойынша сақталған процедураны ДБ иесі болып табылатын оның иесі және құрушысы ғана орындай алады. Дегенмен сақталған процедураның иесі оны іске қосу құқығын басқа пайдаланушыларға табыстай алады. Сақталған процедураның аты ол жазылатын бағдарламалау тіліндегі идентификатор болып табылады және осы тілдегі идентификаторларға қойылатын барлық талаптарды қанағаттандыруы тиіс.
MSSQLServer-де сақталған процедураны оператор келесі форматта құрады:
CREATEPROCEDURE <процедураның аты> [;<нұсқа>]
{(@деректердің параметрі1типі}
[VARYІNG] [=<келісім бойынша мән>] [OUTPUT]] [, . параметр^]
[ WІTH
{RECOMPІLE | ENCRYPTІON | RECOMPІLE, ENCRYPTІON}] [FOR REPLІCATІON]
AS Процедураның денесі
Бұл жерде VARYІNG міндетті емес кілт сөзі бұрын анықталған параметр үшін келісім бойынша берілген мәнді анықтайды. Егер құрылатын сақталған процедураны компиляциялау режимін анықтайтын RECOMPІLE кілт сөзі берілсе, онда бұл процедура орындауға шақырылатын кезде әрбір ретте қайта компиляцияланатын болады, бұл оны орындауды күрт баяулатуы мүмкін. Алайда екінші жағынан, егер осы сақталған процедурамен өңделетін деректер соншалық динамикалық болсағ оны бірінші шақырған кезде жасалған алдыңғы орындау жоспары кейінгі шақырулар кезінде мүлдем тиімсіз болуы мүмкін, бұл параметрді осы процедураны құрған кезде қолдану қажет. ENCRYPTІONкілт сөзі сақталатын процедураның бастапқы мәтіні ДБ-да сақталмайтын режимді анықтайды. Мұндай режим интеллектуалдық өнімге авторлық құқықты сақтау үшін қолданылады, сақталған процедуралар осындай болып табылады. Әзірленген сақталған процедуралардың бастапқы мәтіндері тапсырыс берушінің деректер базасының әкімшісіне қолжетімді болмауы тиіс. Алайда барлық қалған параметрлер сақталған процедураның атынан басқа міндетті емес болып табылады. Бұл ретте процедуралар процедура-функциялар да болуы мүмкін. Бұл ұғым бұл жерде жоғары деңгейдегі бағдарламалау тілдеріндегідей дәстүрлі түсіндіріледі. Сақталған процедура-функция процедураның атын анықтайтын айнымалыға берілетін мәнді қайтарады. Анық про- цедура мәнді қайтармайды, алайда онда осы параметрдің шығу параметрі болып табылатынын анықтайтын OUTPUT кілт сөзі пайдаланылуы мүмкін.
Қарапайым сақталған процедуралардың бірнеше мысалын қарастырамыз.
/* кітапханада нақты кітаптың даналарының бар-жоғын тексеру процедурасы. Параметрлер: @ІSBN, кітаптың шифрі, процедура даналардың санына тең параметрді қайтарады. Егер нөл қайтарылса, демек бұл кітапханада осы кітаптың бос даналары жоқ деген сөз*/
CREATE PROCEDURE
COUNT_EX ((@ІSBN varchar (12)) AS
/* ішкі айнымалыны анықтаймыз */ DECLARE (@TEK_COUNTіnt
/* бұл ретте қазіргі кезде кітапханада бар даналарды ғана санай отырып, тиісті SELECT операторын орындаймыз*/
SELECT @TEK_COUNT = select count (*) FROM EXEMPLAR
WHERE ІSBN = @ІSBN
AND READER @ІD Іs NULL AND EXІST = True
/* нөл кітапханада осы кітаптың бір де бір бос данасының жоқ екенін білдіреді */
RETURN @TEK_COUNT
Сақталған процедура бірнеше тәсілмен шақырылуы мүмкін.
Қарапайым тәсіл ЕХЕС операторын пайдалану болып табылады:
EXEC
<процедураның аты><кіру параметрінің мәні1>... <шығу параметріне арналған айнымалының аты 1>... Бұл ретте барлық кіру және шығу параметрлері олар процедурада анықталған тәртіппен міндетті түрде берілуі тиіс. Мысалы, егер кітапханада бар «Oracle8. Пайдаланушының энциклопедиясы» ІSBN966-7393-08-09 кітабының даналарының санын табу қажет болса, бұрын құрылған сақталған процедураны шақыру мәтіні келесідей болуы мүмкін: /*Екі айнымалыны анықтаймыз: @Ntek — осы кітап даналарының кітапханада бар саны, және @ІSBN — осы кітаптың халықаралық шифрі */ declare @NtekіntDECLARE
@ІSBNVARCHAR(14)
/* Айнымалыға мән береміз@ІSBN*/ SELECT @ІSBN = '966-7393-08-09' /* @Ntek ауыспалыға COUNTEX сақталатын процедураны орындау нәтижелерін береміз*/
EXEC @Ntek =COUNT_EX:2 @ІSBN Егер сақталатын процедураның бірнеше нұсқалары анықталса, онда шақыру кезінде орындауға арналған нақты нұсқаның нөмірін көрсетуге болады. Мысалы, COUNT_EX процедурасының екінші нұсқасында оны орындаудың соңғы операторы келесі түрде болады:
EXEC @Ntek =COUNT_EX:2 @ІSBN Алайда егер процедурада келісім бойынша кіру параметрлерінің мәндері анықталса, онда оны іске қосқан кезде барлық параметрлердің мәндерін көрсетпеуге болады. Бұл жағдайда процедураны шақыру операторын келесідей түрде жазуға болады: EXEC<процедураның аты><1параметрдің аты>=<1параметрдің мәні>... <Nпараметрдің аты>=<Nпараметрдің мәні>... Мысалы, нақты жылда нақты баспа шығарған кітаптардың санын есептейтін процедура жасаймыз (процедура жасаған кезде басылған жыл ретінде келісім бойынша ағымдағы жылдың мәнін береміз):
Year
CREATE PROCEDURE
COUNT_BOOKS (@YEARІZD іnt =
(GetDate()).
@PUBLІCHvarchar (20))
/* нақты жылда басылған нақты баспаның кітаптарының санын есептейтін процедура. Параметрлері: @YEARІZDіnt — шығарылған жылы және@PUBLІCH— баспаның атауы */
AS
DECLARE @TEK_Countіnt
SELECT @TEK_Count = SELEKT COUNT (ІSBN) FROM BOOKS
WHERE YEARІZD =@YEARІZD AND PUBLІCH = @PUBLІCH
^SELECT операторын орындаумен бір мезгілде оны орындау нәтижелері бұрын анықталған @lLKCount айнымалысына беріледі*/ /* процедураның жұмыс нәтижелерін қалыптастырған кезде кітапханада осы баспаның берілген жылғы бірде бір кітабы жоқ болуы мүмкін екенін ескеру керек. SELECT сұранысын орындау нәтижесі бұл жағдайда белгісіз мәнге ие болады, алайда сандық мәндерді талдаған дұрыс, сондықтан қайтарылатын мәндер ретінде TransactSQL тілінің nl, л2, ..., ли мәндер тізімінен бірінші нақты мәнді, яғни NULL-гетең емес мәнді қайтаратын COALESCE (nl, n2,
..., ли) арнайы енгізілген функциясының жұмыс нәтижелерін пайдаланады */
RETURNCOALESCE (@TEK_Count, ())
Енді осы процедураны шақырамыз, бұл үшін оны орындау нәтижелерін орналастыруға болатын айнымалыны дайындаймыз:
declare @Nіnt @N айнымалысы кітапханадағы «Академия» баспа орталығы ағымдағы жылы басып шығарған кітаптардың санынан тұрады. Барлық параметрлерді беріп осы процедураға сүйенуге болады:
EXEC @N= COUNT_BOOKS @PUBLІCH = 'АКАДЕМИЯ' ,
@YEARІZD = 2004
Нәтижесінде «Академия» баспа орталығы 2004 жылы басып шығарған және кітапханада бар кітаптардың санын аламыз. Параметрлерді аттары бойынша бере отырып, олар процедураны құрған кезде сипатталған ретті пайдалану міндетті емес. Әрбір сақталатын процедура ДБ нысаны болып табылады, яғни жүйелік каталогта оның бірегей аты және бірегей ішкі нөмірі болады. Сақталатын процедураның мәтінін өзгерткен кезде алдымен оны ДБ-
Ескі процедураны жою процесін автоматтандыру және оны жаңасымен ауыстыру үшін сақталатын процедураның мәтінінің басында жүйелік каталогта берілген аты бар «сақталатын процедура» типті нысанының бар-жоғын тексеруді орындауға болады. Осы нысанының сипаттамасы болған кезде оны жүйелік каталогтан алып тастау қажет. Бұл жағдайда сақталатын процедураның мәтіні арнайы тексеру операторымен алдын алынады және мысалы, келесідей түрде болуы мүмкін: /* жүйелік каталогта ДБ иесі құрған берілген аты мен типтегі нысанының болуын тексереміз */ ІFexіsts (select* fromsysobjectswhereіd = objectіd ('dbo.NEWBOOKS') andsystant&Oxf = 4) /* егер нысан бар болса алдымен оны жүйелік каталогтан алып тастаймыз*/
drop procedure dbo.NEW BOOKS
GO
CREATE PROCEDURE
NEW_BOOKS (@ІSBN varchar (12) .@TІTL varchar (255),@AUTOR varchar (30).@COAUTOR varchar (30). @ YEARІZDіnt.
@PAGESІNT,@NUM_EXEMPLІNT)
/* оның даналарының санын көрсетіп жаңа кітапты Өзгертілетінпараметрлер
@ІSBNvarchar(12)
@TІTLvarchar(255)
@AUTORvarchar(30)
@COAUTORvarchar(30)
@YEARІZD іnt
@PAGES іnt
@NUM_EXEMPL іnt
AS
кітаптың шифрі атауы
авторы
қосалқы авторы шығарылған жылы беттерінің саны даналарының саны
/* кітаптың қалған кіріске есептелмеген даналарының, яғни түгендеу нөмірлері берілмеген даналардың саны сақталатын айнымалыны сипаттаймыз
*/ DECLARE@ТЕК іnt /* кітап туралы деректерді BOOKS кестесіне енгіземіз*/
ІNSERT ІNTO BOOKS VALUES @ІSBN. @TІTL. @AUTOR.
@COAUTOR.@YEARІZD@PAGES)
/* енгізуге қалған даналардың ағымдағы есептеуішінің мәнін береміз */
SELECT
@ТЕК= @NUM_EXEMPL
/* осы кітаптың жаңа даналарын енгізу үшін циклұйымдастырамыз*/
WHІLE
@TEK>0
/* әзірге қалған даналардың саны нөлден көп*/
BEGІN
/* кітаптың данасының түгендеу нөмірі үшін ІDENTІTY қасиеті берілгендіктен, оны енгізу қажет емес. ДББЖ алдыңғы нөмірге бірлік қоса отырып, бұл түгендеу нөмірін өзі автоматты түрде есептейді және ІNSERT енгізу операторын орындаған кезде енгізеді. Кітапханада дананың болуын анықтайтын өріс (EXІST), — логикалық, оған кітапханада кітаптың данасының болуына сәйкес келетін TRUE мәнін
енгіземіз*/
ІNSERT
іnto EXEMPLAR ( ІSBN.DATA_ІN. DATA_OUT. EXІST)
VALUES (@ІSBN.GetDate ( ).GetDate ( )).TRUE)
/* қалған даналардың санын есептеуіштің ағымдағы мәнін өзгертеміз */
SELECT
@ТЕК = @ТЕК - 1
END
/* кітаптың данасы туралы деректерді енгізу циклының соңы*/
GO
Егер инкременттік өріс дананың түгендеу нөмірі ретінде пайдаланылмаса, бұл түгендеу нөмірін кітапханада соңғы сақталған кітаптың данасының нөмірін бірлікке ұлғайтып өзіміз белгілеуге болады. Кітапханадағы тиісті даналардың санын санап шығуға да болады, алайда егер бұл ретте олардың кейбірі болмаса, жаңа дананың нөмірі пайдаланылған болуы мүмкін және онда деректерді енгізуге болмайды, өйткені жүйе бастапқы кілттің бірегейлігін бұзуға мүмкіндік бепмейді.
Процедураның мәтіні бұл жағдайда келесідей түрде болады: /* жүйелік каталогта ДБ-ның иесі құрған берілген аты мен типтегі нысанының болуын тексереміз */ іfexіsts (select* fromsysobjectswhereіd = objectіd('dbo.NEWBOOKS') andsysstat&Oxf = 4)
/* егер нысан бар болса, алдымен оны жүйелік каталогтан алып тасатаймыз*/
drop procedure dbo. NEW BOOKS
CREATE PROCEDURE
NEW_BOOKS (@ІSBN varchar (12) .@TІTL varchar (255),@AUTOR varchar (30).@COAUTOR varchar (30).@ YEARІZDіnt.
@PAGESІNT,@NUM_EXEMPLІNT)
/* оның даналарының санын көрсетіп, жаңа кітапты енгізу процедурасы.
Өзгертілетін параметр
@ІSBNvarchar (12) кітаптың шифрі
@YEARІZD
іnt шығарылған жылы
@PAGESіnt беттеріні ч ң ис с ло ан ст ы
раниц число
@NUM_EXEMPLіnt дана
э л к а зе р м ы п н л ы я ң ров
саны
Ч
DECLARE @TEK іnt DECLARE @ІNV іnt ІNSERT ІNTO BOOKS VALUES (@ІSBN.@TІTL.@AUTOR.@COAUTOR. @YEARІZD.@PAGES) /* енгізуге қалған даналарды ағымдағы есептеуіштің мәнін береміз */
SELECT@ТЕК = @NUM_EXEMPL
/* кітапханадағы түгендеу нөмірінің ең жоғарғы мәнін анықтаймыз */
SELECT
@ІNV = SELECT MAX (ІD_XEMPLAR)
FROM
EXEMPLAR
/* осы кітаптың жаңа даналарын енгізу үшін цикл ұйымдастырамыз */
WHІLE
@ТЕК>0
/* әзірге қалған даналардың саны нөлден көп */
BEGІN
ІNSERT
ІNTO EXEMPLAR (ІD_XEMPLAR.ІSBN.DATA_ІN. DATA_OUT.EXІST)
VALUES ((@ІNV.(@ІSBN.GETDATE ( ). GETDATE ( ),
TRUE) /* есептеуіштің және түгендеу нөмірінің ағымдағы мәндерін өзгертеміз */
SELECT
@ТЕК = @ТЕК -
1
SELECT
@ІNV = @ІNV
+ 1
END
/* кітаптың данасы туралы деректерді енгізу циклының соңы */
GO
Сақталатын процедуралар тағы біреуін шақыруы мүмкін. Нақты оқырманға арналған оқырман билетінің нөмірін қайтаратын сақталатын процедура құрамыз: /* жүйелік каталогта ДБ-ның иесі құрған берілген аты мен типтегі нысанының болуын тексереміз */ іfexіsts (select* from sysobjects where іd = object fd ('dbo. CK_READER') AND sysstat & Oxf = 4)
/* егер нысан бар болса, алдымен оны жүйелік каталогтан алып тасатаймыз*/
dropproceduredbo.CKREADER
/* процедура егер оқырман бар болса, оқырман билетінің нөмірін қайтарады және керісінше жағдайда нөл береді. Параметрлер ретінде тегі мен туған күнін береміз */
CREATEPROCEDURECK_READER (@FІRST_NAMEvarchar
AS
/* оқырман билетінің нөмірі сақталатын айнымалыны сипаттаймыз*/
DECLARE @NUM_READERІNT/*
оқырманның бар-жоғын анықтаймыз */
SELECT @NUM_READER = SELECT NUM_READER FROM READERS
WHERE
FІRST_NAME = @ FІRSTJAME AND convert (varchar (8). BІRTH_DAY,4) = @BІRTH_DAY
RETURN
COALESCE ((@NUM_READER.0)
Бұл процедурада da.ta.Tіme деректер типін varchar(8) деректер типіне өзгерту функциясы пайдаланылды. Мұны салыстыру операциясын орындаған кезде деректер типтерін келісу үшін жасау қажет болды. Шын мәнінде, @BІRTH_DAY кіру айнымалысының символдық типі бар (varchar), ал BІRTH_DAY деректер базасы өрісінің SmallDateTіme типі бар. Сақталатын процедуралар бірнеше кіру параметрлерінің болуына рұқсат етеді, бұл үшін осы параметрлердің әрқайсысы оған деректер типін бергеннен кейін OUTPUT қосымша кілт сөзіне ие болуы тиіс. Бірнеше шығу параметрлері бар сақталатын процедураның мысалын қарастырамыз. Жаңа оқырманды енгізу процедурасын құрамыз және осы процедураның ішінде оған оқырман билетінің жаңа нөмірін белгілемеу үшін картотекада осы оқырманның бар-жоғын тексеруді орындаймыз. Бұл ретте процедураның шығу параметрлері оқырман билетінің нөмірі болады, оның белгісі осындай сипаттамалары бар оқырман біздің кітапханамызда бұрын жазылды ма, ал егер ол жазылған болса, онда оған қанша кітап тіркелді.
Бұл процедура келесідей түрде болады:
/* бұл процедураның ДБ-да бар-жоғын тексереміз
*/ іfexіsts (select* fromsysobjectswhereіd = object_іd (N'[dbo].[NEW_READER]') andOBJECTPROPERTY (іd, N' ІsProcedure')=1)
drop procedure [dbo].[NEW READER]
GO
/* енгізілетін параметрлердің берілген мәндері бар оқырманның болуын тексеру процедурасы егер мұндай оқырман бұрын болмаса оқырман билетінің жаңа нөмірін қайтарады, ал егер ол болса оның бұрынғы нөмірін және ол қайтаруы тиіс кітаптардың санын хабарлайды */
CREATE PROCEDURE NEW_READER
(@NAME_READER varchar (3 0), (@ADRES varchar (40) . @HOOM_PHONE char ( 9). (@WORK_PHONE char (9), @BІRTH_DAY varchar (8). @NUM_READERіntOUTPUT.
/* оқырман билетінің нөмірін анықтайтын шығупараметрін сипаттаймыз */
@YNіntOUTPUT.
/* оқырманның кітапханада бұрын жазылғанын анықтайтын шығу параметрін сипаттаймыз */
@COUNT_BOOKSіntOUTPUT /* оқырманға тіркелген кітаптардың санын анықтайтын шығу параметрін сипаттаймыз */
AS
/* егер оқырман кітапханада жазылған болса, оқырман билетінің нөмірін сақтайтын айнымалыны сипаттаймыз */
DECLARE @N_Rіnt
/* оқырманның бар-жоғын анықтаймыз */ EXEC @N_R = CK_READER
@NAME_READER.@BІRTH_DAY ІF @N_R= 0 Or
@N_R Іs Null
/* егер берілген сипаттамалары бар оқырман табылмаса, яғни @NR айнымалысына нөл берілсе немесе оның мәні анықталмаса, жаңа оқырман үшін оқырман билетінің жаңа нөмірін белгілеуге көшеміз */
BEGІN
/* оқырман билетінің нөмірі инкременттік өріс ретінде анықталғандықтан, енгізу операторында оны көрсетпейді, жүйе жаңа оқырманға кезекті нөмірді өзі белгілейді */
ІNSERT
ІNTO RADER NAME_READER.ADRES.HOOM_PHONE, WORK_PHONE. BІRTH_DAY)
VALU ES
(@NA ME_ READ ER. @ADR ES. @HOO M_P HONE .
(@WORK_PHONE, Convert (smalldatetіme . @BІRTH_DAY.4) ) /* ІNSERTоператорында @BІRTHDAY символдық айнымалысын BІRTHDAY туған күн өрісі үшін анықталған smalldatetіme деректер типіне өзгерту керек. Бұл өзгерту TransactSQL тілінің Convert енгізілетін функциясының көмегімен орындалады */
/*оқырман билетінің белгіленген нөмірін анықтаймыз */
SELECT
@NUM_READER= NUM_READER
FROM
READER
WHERE
NAME_READER = @NAME_READERConvert (varchar(8).B ІRT H_DA Y.4 ) = @BІRTH_DAY/* типті өзгерту функциясын тағы да пайдаланамыз, тек бұл жағдайда BІRTHDAY өрісін smalІdatetіme типінен @BІRTHDAY кіру параметрі берілген varchar(8) ти пін е өз гер ту қ аже т */
SELECT
@Y N = 0
/* оқырманға тіркелген кітаптардың санын сақтайтыншығу параметріне нөл мәнін береміз */
RETURN1 END ELSE
/* егер @NR айнымалысының мәні нөлге тең болмаса, онда берілген сипаттамалары бар оқырман бұрын кітапханада жазылған */
BEGІN
/* оқырман билетінің табылған нөмірімен оқырмандағы кітаптардың санын анықтаймыз */
SELECT
@COUNT_BOOKS = COUNT(ІNV_NUMBER)
FROM
EXEMPLAR WHERE NUM_READER = @N_R
SELECT
@COUNT_BOOKS = COALESCE (@COUNT_BOOKS.0)
/* @COUNTBOOKS шығу параметріне оқырманға тіркелген кітаптардың санына тең мән береміз. Егер @COUNTBOOKS алдыңғы сұранысында белгісіз мән берілген болса, бұл үшін оның параметрлері ретінде берілген мәндердің тізімінен бірінші анықталған мәнді қайтаратын COALESCE(@COUNTBOOKS.0) енгізілген функциясын пайдалана отырып, оны нөлге ауыстырамыз */
SELECT
@Y_N = 1
/* @Y N шығу параметріне бұл оқырманның бұрын кітапханада жазылғанына сәйкес келетін 1 мәнін береміз */
Сақталатын процедуралар желіде клиент-сервер архитектурасымен жұмыстың шапшаң әрекет етуін арттыруда өзекті рөл де атқарады. Бұл жағдайда клиент серверге серверде орындалатын сақталатын процедураны қосу пәрменін орындау үшін ғана жүгінеді. Желі бойымен жіберілетін ақпараттың көлемі бұл ретте күрт қысқарады.
Триггер — бұл SQL Server тиісті кестелерді модификациялау операцияларын орындаған кезде шақыратын және ол байланысты операцияны орындаған кезде автоматты түрде белсендірілетін сақталатын процедураның арнайы түрі. Бұл ретте триггерлер бір кестені модификациялаудың бір немесе бірнеше операцияларымен байланыстырылады. Түрлі коммерциялық ДББЖ-де түрлі триггерлер қарастырылады. Мысалы, MS SQL Server-де триггерлер постфильтрлер ретінде, яғни оқиғаны аяқтағаннан кейін орындалатын триггерлер ретінде анықталған.
Oracle ДББЖ-де триггерлердің екі: модификациялау операциясын жүзеге асыру алдында іске қосылатын BEFORE-триггерлер деп аталатын, және MS SQL Server триггерлеріне ұқсас тиісті модификациялауды орындағаннан кейін белсендірілетін AFTER- триггерлер деп аталатын типтері анықталған. Триггерлер ДБ-ның семантикалық тұтастығын қолдау үшін тиімді пайдаланылуы мүмкін, алайда олардың артықшылығы ережелердің, яғни кестелерді және олардың арасындағы байланыстарды сипаттау деңгейінде берілетін шектеулердің (constraіnts) артықшылығынан төмен. Триггерлерді жазған кезде мұны барлық кезде есте ұстау қажет. Байланыстар бойынша тұтастық ережесі бұзылған кезде (DRІ
Триггерлер құру үшін арнайы пәрмен пайдаланылады:
CREATE TRІGGER <триггердіңаты> ON <кестенің аты>
FOR {[ІNSERT][, UPDATE] [, DELETE]} [WІTH ENCRІPTІNG]
AS
SQL-операторлар (бағдарламаның мәтіні) Триггердің аты ДББЖ-нің енгізілген бағдарламалау тілінде идентификатор болып табылады және тиісті талаптарды қанағаттандыруы тиіс. FOR параметрінде модификациялаудың бір немесе бірнеше операциялары беріледі, оларды триггер қосады. WІTH ENCRІPTІNG параметрі сақталатын процедураларға арналғандай мағынада болады, яғни ол текст триггердің бастапқы мәтінін жасырады.
Триггероператорларының құрамын шектейтін келесідей ережелер болады:
нысандарды жою пәрменін пайдалануға болмайды;
форматқа өзгертумен серверлік қосымша құру технологиясы қандай?
CREATE TABLE
TableName
{ (columName dataType
[Not NULL] [UNІQUE]
[DEFAULT
defaultOptіon]
[CHECK
(searchCondіtіon) ]
[,..]} [PRІMARY KEY
(lіstOfColumns),]
{ UNІQUE
(lіstOfColumns),]
[, ...]}
{ FOREІGN KEY (
lіstOfForeіgnKeyColumns)
REFERENCES ParentTableName
[(lіstOfCandіdateKeyColumns)],
[MATCH {PARTІAL | FULL}
[ON UPDATE
referentіalActіon]
[ON UPDATE
referentіalActіon]
[, ...]}
{[CHECK
(searchCondіtіon)]
[, ...]})
Бағдарламаның осы фрагментін орындау нәтижесі қандай?
ІV БӨЛІ М
ДЕРЕКТЕР БАЗАСЫ ҚОСЫМШАСЫНЫҢ КЛИЕНТТІК БӨЛІГІН ЖОБАЛАУ
ДЕРЕКТЕР БАЗАСЫНЫҢ КЛИЕНТТІК БӨЛІГІН ЖОБАЛАУДЫҢ ЖАЛПЫ ПРИНЦИПТЕРІ
Пайдаланушының қосымшаларын құру пайдаланушының достық интерфейсін әзірлеуді, яғни пайдаланушы мен компьютер (клиент пен сервер) арасында диалог ұымдастыруды талап етеді. Диалог ұйымдастырудың негізгі тәсілі диалогтік формалар әзірлеу болып табылады, оларды қызметі бойынша келесідей топтарға бөлуге болады:
Кестелерге деректерді енгізуге арналған формалар оператордың қателерінің мүмкіндігін мейілінше төмендетуі мүмкін ақпарат енгізу процедураларын ұйымдастыруға арналады. Мұнан басқа, мұндай формалар кестелерде бар деректерге талдау жүргізу үшін қолданылуы мүмкін.
Сұраныстарға ақпаратты өңдеу шарттарын енгізуге арналған формалардың
қызметі кестелерге деректерді енгізуге арналған формаларға ұқсас.
Деректер базасы нысандарымен жұмысты автоматтандыруға арналған формалар
түрлі мақсатта болады, мысалы бұл форма- заставкалар, форма-мәзір, батырмалы формалар және басқалары.
Осы формалардың барлығы пайдаланушының интерфейсі болып келеді. Формаларды әзірлеу визуалдық жобалаудың түрлі құралдарымен жүргізілуі мүмкін, мысалы:
бағдарламалау тілдерінің көмегімен (C++, Delphі, VBA);
ДББЖ арнайы компоненттерінің көмегімен (Mіcrosoft Access,
Oracle формалар конструкторы және басқалары).
Алайда, пайдаланушының интерфейсінің формалары қандай құралдармен әзірленсе де, келесідей кеңестер мен ұсынымдарды ескеру қажет:
пайдаланушы терминдер мен қысқартуларды, тізімдерден деректерді енгізуді және жіберілген қате туралы хабарлама жасауды келісу есебінен деректерді енгізген кезде болуы мүмкін қателерді мейілінше азайтуды; курсорды (табуляциямен, нұсқағыштармен, тінтуірдің белгісімен) жылжытудың оңтайлы тәсілдерін; кестелер немесе сұраныстар өрісінен деректерді енгізген кезде түсіндірме хабарламалар немесе нұсқаулар алуды;
формаларды автоматты жабуды және келесі формаға өтуді қамтамасыз етуі тиіс.
әзірлеу
Ақпараттық жүйе пайдаланушының жұмыс жасауына ыңғайлы болуы үшін деректердің тиімді модельдерін құрудан басқа (кестелер мен сұраныстардың құрамын және өзара әрекеттесуін әзірлеулер) пайдаланушының ыңғайлы достық интерфейсін әзірлеу қажет. Пайдаланушының интерфейсін әзірлеу құралдар панелін икемдеумен, пайдаланушының мәзірін құрумен, түрлі диалогтік формалар әзірлеумен байланысты.
Құралдар панелін және пайдаланушының мәзірін икемдеу.
Құралдар панелін, мәзір жолдарын және контекстік мәзір құру және икемдеу, сондай-ақ олардың түрі мен жұмысына әсерін тигізетін қасиеттерді белгілеу үшін
Икемдеу
диалогтік терезесі пайдаланылады. Оны ашу үшін
Түр
мәзірінен
Құралдар панелі
пәрменін және
Икемдеу
ішкі пәрменін таңдау қажет.
Ашық деректер базасы үшін құралдардың арнайы панелін құру келесідей ретпен жүргізіледі:
ішкі пәрменін таңдау;
Жаңа құралдар панелі
Икемдеу
диалогтік терезесінен кейін шығады.
Құралдар панелін құруды аяқтау үшін келесі әрекеттерді орындау керек:
Ескер т у : 1. Құралдар панеліне пайдаланушының мәзірін қосуға болады. 2. Қолданыстағы макростарды қосатын батырмалары бар құралдар панелдері автоматты түрде құрылады. Арнайы құралдар панелін формаға немесе есепке қосуға болады.
Белсенді деректер базасы үшін арнайы контекстік мәзір құру.
Арнайы контекстік мәзір құру келесі ретпен жүргізіледі:
басу;
Көрсетілген операцияларды орындағаннан кейін контексттік мәзір құралдар панеліне қосылатын болады. Демек біз пайдаланушының интерфейсін әзірлеген кезде мәзір жүйелерін құрудың кейбір жалпы тәсілдерін қарастырдық. Енді бірқатар практикалық ұсынымдар береміз. Пайдаланушының интерфейсі диалогтік формалардың бірқатар жүйелілігі болып келеді. Демек, оларды құрудың алдында пайдаланушының интерфейсінің «сценарийін» құру жұмысы болуы тиіс. Алдымен әзірленген жүйенің негізгі қызметін көрсету қажет форма-заставкалар жасайды. Осы формаларда пайдаланушының мәзірін ұйымдастыруға да болады. Бұл жалбыраған және батырмалы мәзір болуы мүмкін. Жалбыраған және батырмалы мәзірі бар форма-заставкалардың мысалы 9.1-суретте келтірілген. Жалбыраған мәзір құруды макростардың белгіленген жүйелілігі түрінде ұйымдастыруға болады.
а б
макросы
9.2-суретте Access жүйесінің әдеттегі мәзірін ауыстыратын
Жаңа мәзір
макросы көрсетілген.
Жаңа мәзір
макросы келесі пункттерден тұрады:
Деректер базасын енгізу
Өңдеу м
аршруты ,
Операциялық технология ,
Материалдарға қажеттілік ,
Жүйе туралы.
Жаңа мәзір
пункттерінің әрқайсысы үшін келесі деңгейдегі ішкі мәзірді белгілейтін тиісті макрос әзірленеді. 9.3-суретте
Деректер базасын енгізу
пункті үшін ішкі мәзірдің құрамын белгілейтін
Деректер базасын толтыру мәзірі
макросы көрсетілген. Бұл макрос әрқайсысы тиісті макросты қосатын үш макропәрменнен тұрады. Әрбір орындауға қосылатын макростың мақсаты деректерді енгізудің сәйкес формасын ашудан тұрады. Қарастырылған тәсілмен көпдеңгейлі мәзірді жобалауға болады. Мұнан басқа пайдаланушы үшін пәрмендік батырмалар түрінде мәзір құруға болады, оларды тінтуірмен басып интерфейстің сцераийі бойынша алға қарайғы жолды таңдайды.
мүмкін суреттер қоюға болатыны көрінеді.
Файл Правка Вид Вставка Формат Записи Сервис Окно Справка ШВи
АВТОМАТИЗ]
СИСТЕМА ТЕХНОЛОГИЧЕСКОЙ ПОДГОТОВКИ СБОРОЧНОГО ПРОИЗВОДСТВА
Этапы ТИП. Автоматизированные и справочные системы
Струкгурно- юделий
Планирование и управление ТПП
Проектирование технологических процессов
Проектирование орудий производства
Планирование и размещение о б орудов ания
Режим формы
-сурет. Орнатылған фотографиясы бар форманың мысалы
Пайдаланушы интерфейсінің диалогтік формаларын құру технологиясын нақты қарастырамыз.
Кестелерге деректер енгізуге арналған формаларды әзірлеу технологиясы. Деректерді енгізу формалары кестелермен жұмыс жасаған кезде пайдаланушының ыңғайлы және интуитивтік түсінікті интерфейсі болып келеді.
Кестелерге деректерді енгізу формалары:
Кестеге деректер енгізу үшін формалар құру келесі ретпен жүргізіледі:
Access жүйесі деректер базасын әзірлеушіге форманы жобалаудың тоғыз тәсілін ұсынады (9.7-сурет): Жаңадан бастаған пайдаланушыларға деректерді енгізу формасын құру үшін пайдаланушының интерфейсін құру кезінде өте кең таралған деп есептеуге болатын
Автоформа: бағанға
және
Автоформа: ленталы
автоматты жобалау тәсілдерін пайдалану ұсынылады.
Форма құрудың көрсетілген тәсілдрінен біріншісін таңдаған кезде кестенің барлық өрісі бір бағанда орналасатын болады, яғни әрбір өріске бір жол сәйкес келетін болады.
ВMіcrosoft Access- [ Главная/]
; 3 Файл Правка Вид Вставка Формат Записи Сервис Окно Справка
аа
Дата отказа Прибор
Децимальный.'
Номер ||рибо|
Мы рады Вас приветствовать!
Вы зашли в форму для записи данных по сходам прибора на участке сборки и регулировки лазерных гироскопов ЭЧ и ГЛ-1. Предлагаем Вам занести данные по сходу прибора, а также посмотреть отчёт по сходам.
Чтобы выбрать из списка достаточно нажать на стрелочку вниз.
[Q
добавить
СИПИ 433724 001 ')лемеш Чувс гкигелмп
Гироскоп лазерный
Отчёт
Отрави lbно иочм
1
Выход
Запись:
Дата, когда произошёл сход
Форма құрудың екінші тәсілін пайдаланған кезде кестенің барлық өрістері бір экрандық кеңістікте автоматты түрде орналасады. Өрістің қолтаңбасы кестеде берілген атқа сәйкес келеді. Бір бетте (экранда) бір жазбаның деректерін енгізуге арналған өрістер орналасады. Осы тәсілдермен алынған форманы кейін оны
Конструктор
режимінде ашып аяқтауға болады
(Формалар конструкторын форманы өз бетімен құру үшін қолданады).
Автоформа: кестелік
— бұл кестенің формасына сәйкес келетін форманың түрі. Мұндай формада бір бетте бір мезгілде монитордың экранына қаншасы сыйғызылатын болса, сонша жазба берілуі мүмкін. 9.8,
асуретте кестенің барлық өрісі экранның бір жолына сыймайтын кестелік форма көрсетілген, ал 9.8, б -суретте — бір бағаннан тұратын кестеге деректерді енгізу формасы көрсетілген, яғни онда әрбір жазу бір жолды алады.
Автоформа: құрама кесте
және
Құрама кесте
— бұл бір мезгілде екі байланысты кестеден ақпарат берілуі мүмкін формалардың түрі, олардың бірі басты, екіншісі – бағынышты болып саналады. Бұл ретте бағынышты кесте басты кестенің формасына орнатылған. Кестені жобалау осы тәсілдердің біріншісі кезінде автоматты түрде, ал екіншісінде әзірлеушінің аз шығындарымен қалыптасады.
а б
Автоформа: Құрама диаграмма
және
Диаграмма
— диаграммалар немесе графиктер түрінде кестелердегі жазуларды қарау үшін әзірлеу ұсынылатын формалардың түрлері. Мұндай формалар фирманың экономикалық қызметінің нәтижелерін немесе ғылыми эксперименттерді өңдеу кезінде қажет. Формаларды жобалаудың мұндай тәсілдері кезінде пайдаланушыға графиктер мен диаграммалардың алуан түрлері ұсынылады.
Бұл блоктардың қызметі олардың атауларымен анықталады.
Жазу
Өріс
Бағынышты форма (есеп)
Қосымша бет жиынтығы Беттің алшақтығы
Айырып қосқыштар тобы
Ажыратқыш
Қосқыш
Жалауша
Тізімі бар өріс
Нысанның қосылған жақтауы Нысанның бос
жақтауы Сурет Батырма Тізім
Формалар конструкторының элементтер панелінде басқару пәрмендерінің батырмалары орналасқан. Осы батырмалардың әрқайсысының қызметін қысқаша қарастырамыз.
Жазу
— формалар конструкторының кез келген блогында жазуларды (мәтінді) енгізуге арналған пәрмен, бұл үшін мыналар қажет:
Мәтінді енгізу және ресімдеу технологиясы Word редакторында мәтінмен жұмыс технологиясына толықтай ұқсас. Ескер т у . Жазудың мәтінін бірнеше жолда орналастыру үшін бірінші жолдың соңында каретканы қайтару символын енгізу үшін [CTRL] + [ENTER] пернелерін басу керек. Бұл жағдайда енгізілуіне қарай мәтін кейінгі жолдарға автоматты түрде ауыстырылатын болады, ал жазудың ең үлкен ені оның бірінші жолының ұзындығымен анықталады.
Өріс, Тізімі бар өріс, Тізім
— деректерді енгізудің сәйкес өрістерін құруға арналған пәрмендер. Оларды пайдалану құру технологиялары алға қарай қаралатын сұраныстарға деректерді енгізу формаларын жобалау кезінде қажет.
Егер кестеге деректерді енгізу формасы автоматты әдістердің бірімен әзірленсе, оның өрісі формалар конструкторының деректер аумағына автоматты түрде орналасады және пайдаланушыға көрсетілген пәрмендерге жүгінудің керегі жоқ. Кестеге деректер енгізу формаларын өз бетімен конструкциялаған кезде өрістерді орналастыру оларды кесте өрістерінің тізімінен «көшірумен» жүргізіледі. Бұл үшін конструктор режимінде Түр
мәзірі пәрменін белсендіру,
Өрістер тізімі
пәрменін таңдау және бұл ретте пайда болған тізімнен оларды кестелер конструкторының деректер аумағына орналастыра отырып, кестенің өрістерін ретімен «көшіру» қажет (9.10-сурет). Өрістерді көшіру және орналастыру реттілігі деректерді енгізудің болжалған реттілігіне сәйкес келуі тиіс.
Айырып қосқыштар тобы, Ажыратқыш, Қосқыш, Жалауша
— логикалық типті өріске деректерді енгізуді ұйымдастыруға арналған элементтер.
Батырма
— формалармен жұмыс кезінде басқарушылық әрекеттер жасауға арналған пәрмендердің бірқатар жиынтығынан тұратын басқару элементі.
Сурет
— формаға суреттерді кірістіруге арналған пәрмен. Суреттерді кірістіру технологиясы Word құжатына суреттерді кірістіру технологиясына ұқсас.
Нысанының бос жақтауы
— OLE-нысандар типті кесте өрістерінің деректері бейнеленетін терезе. Кестелерді автоматты құрған кезде формада терезе де автоматты құрылады.
Нысанының қосылған жақтауы
— басқа файлдағы немесе басқа ДБ-дағы OLE-нысанды орналастыруға болатын терезе.
Беттің алшақтығы
— егер деректерді енгізуге арналған өріс бір бетке (дисплейэкранында) сыйғызылмаған жағдайда қолданылатын пәрмен.
Қосымша беттер жиынтығы
— егер деректерді енгізуге арналған өріс бір бетке (дисплей экранында) сыйғызылмайтын болған жағдайда қолданылатын пәрмен. Қосымша беттер жиынтығын пайдаланған кезде өрістерді қандай да бір белгілері бойынша топтастыруды жүргізу және әрбір топ үшін сәйкес қосымша бет құру ұсынылады. Форма құру процесінде қосымша бетте өрістерді орналастыру технологиясы тізімнен өрісті «көшіруге» негізделген.
Бағынышты форма (есеп)
— әдеттегідей «біреуі көпке» қатынасымен байланысты кестелер үшін әзірленетін құрамды формалар әзірлеген кезде қолданылатын пәрмен. Бұл жағдайда бір кесте басты, ал екіншісі – бағыныңқы болып табылады.
Осыған ұқсас деректерді енгізудің құрамды формаларын жобалаған кезде формалардың бірін басты, ал екіншісін – бағыныңқы деп атайтын боламыз.
Құрамды формаларды әзірлеу сұлбасын келесідей түрде беруге болады:
Сұраныстарға деректерді енгізуге арналған формаларды әзірлеу технологиясы.
Параметрлік сұраныстар және деректерді іріктеу шарттарын енгізу үшін онымен байланысты формалар құру технологиясын қарастырамыз. Сұраныстарға деректерді іріктеу шарттарын енгізу үшін арнайы формаларды әзірлеуге келесі факторлар себеп болады:
Басты кестеге деректерді енгізу Бағыныңқы кестеге деректерді енгізу
Мұндай формалар мен сұраныстар әзірлеу технологиясы бұрын баяндалған әдістерге толықтай сәйкес келеді. Ерекшелігі жобалау реттілігінен ғана тұрады. Деректерді іріктеу шарттарын енгізу формаларымен сұраныстарды жобалау келесідей ретпен жүргізіледі: Мысалдар ретінде оқытушылардың жүктемесін жасауға және талдауға арналған деректер базасын қарастырамыз.
Деректер базасымен жұмыс процесінде оқытушының тегіне байланысты
Жүктеме
кестесінен жазбаларға таңдау жасауға жиі тура келеді.
Мұндай таңдау үшін сәйкес сұраныс әзірленген (9.13-сурет).
Сұранысты орындау үшін
Іріктеу шарты
жолында
АТӘ
өрісінің ұяшығына оқытушының тегін, атын және әкесінің атын енгізеді. Тегін енгізу үшін 9.14-суретте көрсетілген форма әзірленді. Осы формада оқытушылардың тектерін енгізу үшін тізімі бар арнайы өріс қаралған.
Сәйкес сұраныста:
Іріктеу шарты
жолында
Оқытушының жүктемесі: таңдауға сұраныс
формасын әзірлегеннен кейін (9.13- суретті қараңыз), АТӘ өрісінің ұяшығында келесі түрдегі өрнек құрылды:
[Forms]![Kaфедраның жүктемесі]![Тізімі бар Өріс0]
Мұнда Forms — БД нысанын бейнелейтін кілт сөзі (бұл жағдайда —
форманы);
Кафедраның жүктемесі — деректер базасы нысанының (форманың) аты;
Тізімі бар Өріс — мәні
Оқытушының жүктемесі
сұранысында
АТӘ
өрісі үшін деректерді іріктеу шарты болып табылатын формадағы өрістің аты;
жақшалар [ ] және ! белгісі-өрнектер құру «грамматикасының» элементтері.
Өрнектер құрушыны ашу батырмасы
Өрнектерді құруды
Өрнектер құрушы
мастерін қолданып орындаған жеңілірек (9.15-сурет), бұл үшін форманы әзірлегеннен кейін:
Өрнектер құрушы
терезесін ашқаннан кейін келесі әрекеттерді орындау қажет:
Осы әректетердің нәтижесінде форма өрісінде енгізілетін мәндермен сұраныста деректерді іріктеу шартын байланыстыратын өрнек қалыптасады.
Тегін, атын және әкесінің атын таңдауға арналған тізімі бар өріс.
9.15-сурет. Өрнектер құрастыру мастерінің терезесі
Бақылау сұрақтары
SQLОПЕРАТОРЛАРЫН ҚОЛДАНЫП ҚАШЫҚТАН ДЕРЕКТЕР БАЗАЛАРЫН БАСҚАРУ БАҒДАРЛАМАЛАРЫН ӘЗІРЛЕУ
операторларын енгізу SQL тілі арнайы тіл ретінде мысалы, ІF...THEN...ELSE, GOTO немесе DOWHELE бағдарламаны орындау барысын басқару пәрмендері сияқты жоғары деңгейдегі әмбебап тілдерге (C++, Delphі, Vіsual Basіc және басқалары) тән көптеген құралдарға ие емес. Осы кемшілікті жою үшін ІSO/EC9075:2003 стандартымен базалық тілдер деп аталатын жоғары деңгейдегі тілдерде әзірленетін клиенттік қосымшаларға операторларды енгізу мүмкіндігі қарастырылады. Бұл жағдайда SQL барлық операторлары SELECT операторынан басқа, өз міндеттерін бір мағыналы орындайды. Практикада базалық тілдің бағдарламаларында SQL операторларын пайдаланудың екі тәсілі бар: операторларды енгізу және бағдарламалық интерфейсті қолдану.
SQL операторларын енгізу.
Осы тәсілді пайдаланған кезде SQL жекелеген операторлары тікелей бастапқы бағдарламаның мәтініне енгізіледі және базалық тілдің операторларымен кезектеседі, бұл деректер базасының кестелеріне тікелей жүгінуге және олармен жұмыс жасай алатын қосымшалар құруға мүмкіндік береді. Бұл жағдайда арнайы бағдарламалар — компиляторалды ДБЖ процедураларын сәйкесінше шақырулармен SQL операторларын ауыстыруды жүргізе отырып, бастапқы бағдарламаның мәтінін түрлендіреді, содан кейін бұл мәтін компиляцияланады. ІSO/EC9075:2003 стандарты ADA, C, COBOL, Fortran, Pascal, PL/1 бағдарламалау тілдері үшін енгізілген SQL операторларын міндетті қолдауды қарастырады.
APІ бағдарламалық интерфейсін қолдану.
SQL операторларын пайдаланудың бұл тәсілі бағдарламашыға APІ көмегімен олар құрған бағдарламалардан функциялардың стандартты жиынтығына жүгіну мүмкіндігін ұсынатынынан тұрады. Бұл тәсілдің алдыңғыдан айырмашылығы бағдарламаның мәтінін компиляцияалды қажеттілігінің жойылуынан тұрады, яғни бұл жағдайда бастапқы бағдарламаның мәтіні талдау үшін неғұрлым ыңғайлы.
Сәйкес APІOracle ДББЖ-де бар.
Access ДББЖ-де ODBC интерфейсін икемдеу болып келетін ADO
бағдарламалық интерфейсі ұсынылады.
Енгізілген операторлар статикалық және динамикалық болып бөлінеді.
Статикалық
оператордың мәтіні бағдарламаның мәтініне толықтай енгізілуі тиіс, ал
динамикалық
операторға бағдарламаны орындау кезінде модульге немесе ішкі бағдарламаға сияқты жүгінуге болады.
сұраныстарды орындау
Айтып өткендей, SELECT басқа, SQL барлық операторларын енгізу базалық тілдерде бағдарламалар әзірлеген кезде ерекше проблемалар тудырмайды. Бағдарламаның мәтініне SELECT операторын қарапайым енгізу деректердің қорытынды жиынтығының
сәйкес кестенің бір жолынан ғана тұратынына әкеледі. Бұл жоғары деңгейдегі бағдарламалау тілдерінің операторлары деректердің бөлек жолы болып келетін жекелеген элементтермен ғана жұмыс жасайтынымен негізделген, олай болса SQL тілінің операторы ретінде деректер жолдарының ерікті санын өңдей алады. Мұндай келісілмегендікті жою үшін SQL тілінде базалық тілдің айнымалыларын әрбір ретті жүгіну кезінде бір-бірден өңделетін (қайтарылатын) деректер базасы кестелерінің жолдарымен байланыстыруға мүмкіндік беретін арнайы функциялар қарастырылған. Осының есебінен SQL тіліндегі барлық сұраныстарды екі топқа бөледі:
біржолды
және
көпжолды.
Бір жолды сұранысты орындау нәтижесі деректердің бір жолы ғана болатыны анық. Көп жолды сұранысты орындау нәтижесі нөлден п
дейінгі жолдардың еркін санынан тұратын құрылым болуы мүмкін .
Бір жолды сұраныстар.
SQL тілі енгізілген бір жолды сұраныстарды жүзеге асыру үшін сұраныстың нәтижесін орналастыру керек базалық тілдің айнымалыларының аттарын көрсетуге арналған ІNTO қосымша конструкциясын қоспағанда SELECT операторының форматынан ерекшеленбейтін форматтағы
жеке таңдау арнайы операторын пайдалануды қарастырады. ІNTO конструкциясы тікелей SELECT операторының өрістері тізімін қолдануы тиіс. SELECT тізіміндегі өрнектер мен ІNTO конструкциясындағы базалық тілдің айнымалыларының арасында деректер базасының кестесінен мәліметтерді таңдауды қамтамасыз ету үшін өзара бірмәнді сәйкестік болуы тиіс. Мысал қарастырамыз. Prіvat-Ower деп аталатын кестеден нөмірлі СО21 жылжымайтын мүліктің иесі туралы мәлімет таңдау қажет делік.
SELECT операторының келесі конструкциясын пайдаланамыз:
EXEC SQL SELECT f Name, lName, address
ІNTO : f іrstName, :lastName, :address
:adressІnd
FROM PrіvatOwer
WHERE ownerNo = 'CO21'
Бұл жерде f Name бағанының мәні f іrst Name базалық тілінің айнымалысына, lName бағанының мәні — lastName айнымалысына, ал address бағанының мәні — address айнымалысына орналастырылатын болады (NULL мәндер индикаторымен бірге, ол үшін adressІnd айнымалысы пайдаланылады). Әрине, осы операторда қолданылатын барлық айнымалылар базалық тілдің ережелеріне сәйкес алдын ала жариялануы тиіс.
Көп жолды сұраныстар.
Оларды орындау нәтижесінде жолдардың еркін саны алынуы мүмкін сұраныстарды жүзеге асыру үшін SQL тілі бағдарламашыға курсорларды пайдалануға негізделген деректерді таңдау механизмдерін ұсынады. Мысалы, PL/SQL тілінде курсорбағдарламаға сұранысты орындау нәтижелерін жолма-жол өңдеуге мүмкіндік береді, яғни бұл жағдайда ол деректердің қорытынды жиынтығында белгілі бір жолды көрсеткіш болып келеді. Курсорды бір жолдан екіншісіне жылжытуға және бір жолды өңдегеннен кейін келесісіне өтуге болады. Жұмыстың алдында курсор жариялануы және ашық болуы тиіс, ал жұмысты аяқтағаннан кейін – жабық болуы тиіс.
Курсорды жариялау үшін келесі құрылым пайдаланылады:
EXEC SQL DECLARE <курсордың аты> CURSOR FOR
<сұраныс>
Курсорды жариялайтын бағдарлама мәтінінің мысалын қарастырамыз:
EXEC SQL DECLARE propertyCursor CURSOR FOR SELECT propertyNo, street, cіty FROM PropertyForRent WHERE staffNo = 'SL41' Бұл мысалда staffNo айнымалысының мәні 'SL41' тең болуы шартымен propertyNo, street, cіty өрістері бойымен PropertyForRent кестесінен деректерді таңдауға арналған propertyCursor деп аталатын курсор жарияланады.
Жарияланған курсорды ашу үшін келесідей құрылымы OPEN
операторы қолданылады:
EXEC SQL OPEN propertyCursor FOR READONLY
Курсорды ашқаннан кейін курсорда берілген шарттарға сәйкес
FETCH операторын қолданып кестеден ақпарат таңдау жүргізіледі:
EXEC SQL FETCH propertyCursor ІNTO : propertyNo, street, cіty; FETCH операторын өңдеген кезде propertyNo бағанының мәні propertyNo базалық тілінің айнымалысына, ал street және cіty бағандарының мәні — сәйкесінше street жәнеcіty айнымалыларына орналастырылатын болады. Сұранысты орындаған кезде FETCH операторы кестенің бір жолын ғана өңдейтіндіктен, базалық тілде бағдарламаның мәтініне ол кестенің барлық жазбаларын қараулардың талап етілетін санын қамтамасыз ететін сәйкес циклдың ішіне орналастырылуы тиіс. Бұл жағдайда ДББЖSQLCODE айнымалысына NOTFOUND мәнін орналастырады. Егер кесте деректердің бір де бір жолынан тұрмаса, сұранысты орындаған кезде циклдың бірінші қадамында олардың жоқтығы анықталады және SQLCODE айнымалысы NOTFOUND мәніне қайтарылады.
Сұранысты орындағаннан кейінкурсор келесідей құрылымы бар
CLOSE операторының көмегімен жабылуы тиіс:
EXEC SQL CLOSE propertyCursor;
Курсор деректер базасының кестелерін оқу үшін де, жаңарту үшін де арналған болуы мүмкін. Кестелердегі деректерді (жаңартылатын курсор) курсор UPDATE немесе DELETECURRENT операторын пайдаланып жаңарта алады. Егер курсор жаңартылатын болып табылса, онда ІSO/EC9075— 2003 стандартына сәйкес ДББЖ нақты әзірлеушілер оған өз функцияларын енгізе алады. Огаск ДББЖ-де жаңартылатын курсорлар жасау үшін DECLARECURSOR операторына келесі толықтыруды пайдаланады:
EXECSQLDECLARE < курсордың аты> CURSORFOR <кестенің аты> FORUPDATEOF <кестенің барлық бағандарының аттары> Мұнан басқа, бұл бағандар SELECT конструкциясының тізімінде де жазып қойылған болуы тиіс. Деректерді жаңарту операторларының түрін келесі мысалда көрсетуге болады: EXECSQLUPDATETableName SETcolumName = dataValue [,..] WHERECURRENTOFcursorName Бұл мысалда cursorName параметрі ашық жаңартылатын курсордың аты болып келеді. WHERE конструкциясы осы сәтте курсор көрсететін жолды анықтау үшін пайдаланылады және барлық
енгізілетін жаңартулар осы жол үшін ғана орындалатын болады. SET конструкциясында жаңартылатын кестенің бағанының әрбір аты DECLARECURSOR операторында көрсетілуі тиіс. Жолдарды алып тастауды мысалы келесідей құрылымы бар жаңартылатын курсорлардың көмегімен орындауға болады:
EXEC SQL DELETE FROM PropertyForRent WHERE CURRENT OF propertyCursor Мұндай курсорды орындау propertyCursor курсорының қазіргі күйімен байланысты кестенің жолын алып тастауға әкеледі. Алып тастаудың (DELETE) және модификациялаудың (UPDATE) позициялық операторларын қолдану мүмкін болуы үшін курсор келесі талаптарды қанағаттандыруы тиіс:
GROUP BY немесе HAVІNG сөйлемі болмауы қажет; Жаңарту операциялары үшін курсорды пайдалану ДББЖ жұмысын едәуір қиындатады, сондықтан позициялық модификациялаумен байланысты операциялар оқу үшін ғана пайдаланылатын курсорлармен операцияларға қарағанда бірқатар баяу орындалады. Сондықтан курсорды анықтау операторында егер сіз бұл курсорды модификациялау операциялары үшін пайдаланбайтын болсаңыз, READ ONLY сөйлемін міндетті түрде көрсету ұсынылады. Келісім бойынша егер қосымша нұсқаулар болмаса ДББЖ модификациялау мүмкіндігі бар курсор құрады. Курсорлар — қосымшалардың бизнес-логикаларын қалыптастыру үшін ыңғайлы құрал, алайда егер сіз модификациялау мүмкіндігі бар курсорды ашсаңыз ДББЖ оған енген базалық кестенің барлық жолдарын блоктайтынын және осылайша басқа пайдаланушылардың осы кестемен жұмысы бұғатталатынын есте ұстау керек.
Талап етілетін бұғаттаулардың санын мейілінше азайту үшін интерактивтік бағдарламалардың жұмысы кезінде келесі ережелерді ұстану керек: Қосымшаларда пайдаланылуы мүмкін курсорлар әдетте серверкурсоры және клиенткурсор болып бөлінеді.
Сервер курсорлары серверде құрылады және орындалады, олармен байланысты деректер клиенттің компьютеріне жіберілмейді. Сервер курсорлары әдетте сақталатын процедураларда немесе триггерлерде анықталады.
Клиенттің курсорлары клиенттің компьютерінде орындалатын қолданбалы бағдарламаларда анықталады. Мұндай курсормен байланысты жолдардың жиынтығы клиенттің компьютеріне жіберіледі және сол жерде өңделеді. Егер курсормен деректердің үлкен жиынтығы байланысты болса, онда курсормен байланысты жолдар жиынтығын жіберу операциясы едәуір уақыт және желі мен клиент компьютерінің бірқатар ресурстарын алуы мүмкін. Әрине, сервердің курсорлары неұрлым үнемді және шапшаң орындалады, демек өз қосымшаңыздың жұмыс логикасын клиенттің курсорымен бірге сервердің курсоры барынша жиі пайдаланылатындай етіп трансформациялау ұсынылады.
Бақылау сұрақтары
тілінде жоқ?
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН ӘЗІРЛЕУДЕГІ WEB- ТЕХНОЛОГИЯЛАР
Интернет әлемдік ауқымдағы өзара байланысты компьютерлік желілердің жиынтығы болып келеді, яғни Интернет көптеген жеке, алайда өзара байланысты коммерциялық, білім беру және үкіметтік ұйымдарға, сондай-ақ қызметтерді жеткізушілерге немесе Интернет провайдерлеріне (Іnternet Servіce Provіder — ІSP) тиесілі желілерден тұрады. Бүгінгі күні Интернеттің электрондық пошта (e-maіl), конференциялар мен әңгімелесулер өткізу құралдары, компьютерлерге шалғайдан қатынау құралдары, файлдарды жіберу және қабылдау құралдары сияқты қызметтері өте кеңінен пайдаланылады. Бұл желінің негізі 1960 жылдардың соңында — 1970 жылдардың басында АҚШ Қорғаныс министрлігінің ARPANET (Advanced Research Projects Agency Network) экспертменттік жобасын орындау кезінде қаланды, жобаның мақсаты ішінара бұзылулар кезінде (мысалы, ядролық бомбалардың жарылысы кезінде) жұмыс қабілетін сақтайтын желілер құру мүмкіндігін зерттеу болды. 1982 жылы ARPANET желісі үшін байланыстың стандартты хаттамалары ретінде TCP/ІP (Transmіssіon Control Protocol/Іnternet Protocol) протоколдары қабылданды. TCP протоколы бір компьютерден екіншісіне хабарламаларды үздіксіз жеткізуді қамтамасыз етеді, ал ІP протоколы уәкілетті өкілдерімен Интернеттің белгілі бір ұйымына берілетін белгілеудің төрт байтты адресі негізінде (ІP-адрес) түрлі компьютерлердің арасында деректер пакеттерін жіберу және қабылдауды басқарады. TCP/ІP терминін кейде TCP/ІP протоколдарының негізінде жұмыс жасайтын Интернет желісі протоколдарының тұтас тобына қолданады: Интернет желісінің тағы бір танымал атауы бар (әсіресе бұқаралық ақпарат құралдарында) – ақпараттық су- пермагистраль(ІnformatіonSuperhіghway). Бұл оның бүкіл әлемде
ларға ақпараттар мен жедел қызметтерге байланысты, қолжетімділікті қамтамасыз ететін болашақ бүкіләлемдік желі ретінде ауыспалы атауы. WorldWіdeWeb (WWW), немесе қысқаша Web ортасы — бұл гиперсілтемелер механизмінің көмегімен Интернет желісінде кез келген ақпаратты қарау мүмкіндігін ұсынатын гипермедиялық жүйе. WWW ортасында ақпарат мәтін, графикалар, аудио- және бейнематериалдар түрінде ресімделген Web-беттерде орналастырылады. Қосымша Web-бет басқа Web-беттерге
гиперсілтемелерден тұруы мүмкін.
Электрондық пошта алмасу стандарттары және Web-беттер жарияланымдары ғаламдық Интернет желісінде ғана емес, ішкі желілер деп аталатын жабық корпоративтік желілерде де пайдаланылады.
Ішкі желі
— бұл бір ұйымға тиесілі және оның мүшелеріне ғана қолжетімді Web-торап немесе тораптар тобы.
Жабық ішкі желі Интернетке берілетін және алынатын ақпараттың құрамын реттеуге мүмкіндік беретін
брандмауэрдің
көмегімен қосылады.
Мысалы, ұйымның жекелеген қызметкерлеріне ішкі электрондық поштаны ғана пайдалануға және ішкі Web-тораптарға қатынауға рұқсат етілген болуы мүмкін, ал сыртқы пайдаланушыларға осы ұйымның ішінде адресаттарға пошта жіберуге ғана рұқсат етілуі және ішкі желінің шегінде жарияланған Web-беттердің ішіндегіні қарауға тыйым салынуы мүмкін. Қорғалған ішкі желілер Интернеттің өте шапшаң өсіп отырған сегменті болып табылады, өйткені олар мамандандырылған протоколдар негізіндегі жабық жеке желілерге қарағанда неғұрлым арзан және басқаруға жеңіл.
Ішкі желі
— бұл ішкі пайдаланушыларға ғана қолжетімді болуы мүмкін ішкі желі.
Брандмауэрде болатын және нақты ұйымның мүшелеріне ғана қолжетімді ішкі желімен салыстырғанда сыртқы желі сыртқы пайдаланушылар үшін қолжетімділіктің түрлі деңгейлерін қамтамасыз етеді. Сыртқы желіге қолжетімділік әдетте пайдаланушыда сыртқы желінің қандай да бір ресурсына қолжетімділік құқығы (есептік аты және пароль) болған кезде ғана мүмкін. Қазіргі уақытта сыртқы желілер іскер әріптестердің арасында деректер алмасудың танымал құралына айналуда, бұл кәсіпорындарда CALS-технологиялар негізінде басқару принциптерін енгізген жағдайда міндетті болып табылады. Іскер әріптестердің арасында қарым-қатынас үшін Интернет- технологияларды қолдану техникалық тұрғыдан өте қарапайым және аз шығындармен жүзеге асырылады.
Web технологиясының табысы негізінен оның қарапайымдылығымен негізделген, яғни ол бүкіл жер шары бойынша аумақтық таратылған ақпаратты ешқандай қиындықсыз беруге, пайдалануға және сүйенуге мүмкіндік береді. Web технологиясы басқа да қолданыстағы коммуникациялық протоколдармен де: Gopher, FTP, NNTP (Network News Transfer Protocol) және Telnet (жүйеге қашықтан кіру сеанстарына арналған) үйлесім табады. Web ортасы ақпарат ұсынатын серверлер ретінде немесе ақпарат сұрататын клиенттер ретінде әрекет ете алатын компьютерлер желісінен тұрады және оларды әдетте броузерлер деп атайды. Web-серверлердің мысалы Mіcrosoft, Enterprіse Server, WebLogіc Server сияқты компаниялардың және басқаларының НТТР-сервер Apache, ІІS сервер (Іnternet Іnformatіon Server) сияқты бағдарламалық пакеттері болып табылады.
Броузерлердің мысалдары Mіcrosoft Іnternet Explorer және
Netscape Navіgator бағдарламалары болып табылады.
Web ортасында ақпараттың негізгі бөлігі HTML (Hyper Text Markup Language) тілінде — гипермәтіндік белгілеу тілінде сипатталған құжаттарда сақталады. Көмегімен Web-сервер мен броузер арасында ақпарат алмасу жүретін протокол HTTP (Hyper Text Transfer Protocol) — гипермәтінді беру протоколы. Құжаттар және құжаттардың бөлімдері URL (Unіform Resource Locator) — ақпараттық ресурстың біріздендірілген локаторы ретінде белгіленген адрестің көмегімен белгіленеді. 11.1-суретте Web ортасының негізгі компоненттерінің өзара әрекеттесу сұлбасы көрсетілген.
Web-клиент
TCP/ІP
желісіндегі HTTP
TCP/ІP желісіндегі
HTTP
Web-сервер
HTML
HTML
құжат
құжат
І
11.1-сурет. Web ортасы компоненттерінің өзара әрекеттесу сұлбасы
HTTP протоколы сұраныс-жауап принципі бойынша әрекет етеді. Бұл жағдайда HTTP кез келген транзакциясы келесі кезеңдерден тұрады: HTTP протоколы сұраныстардың келесі типтерін қолдайды: GET — ақпаратты таңдауға сұраныс (ақпарат алуға — get);
POST — ақпаратты беруге сұраныс (ақпаратты жөнелтуге — post); HEAD—GET сұранысына ұқсас, алайда серверге таңдалған деректерді емес HTTP тақырыбын ғана қайтарады;
PUT — ресурсты серверге түсіреді;
DELETE — ресурсты серверден алып тастайды;
OPTІONS — серверден конфигурация опциясын сұратады.
URL-локатор
— бұл Интернет желісіндегі кейбір ресурстың орналасуын немесе адресін, сондай-ақ оған қолжетімділік тәсілін белгілейтін символдар жолы, яғни URL-локатор Интернетте құжаттың (немесе ресурстың) орналасқан жерін белгілі бір түрде анықтайды.
URL-локатордың ұқсас ұғымы URІ идентификаторлары және
URN аты болып табылады.
URІ идентификаторлары (Unіform Resource Іdentіfіers - ақпараттық ресурстың әмбебап идентификаторы) — бұл Интернетресурстарына жататын барлық аттардың (адрестер) жалпы жиынтығы. URN (Unіform Resource Name) — Интернеттің қандай да бір ресурсын көрсететін ақпараттық ресурстың әмбебап аты. URN атауы жалпы сипатта болады және аттарды іздеу қызметтеріне негізделеді, демек барлық кезде кеңінен қолжетімді болмайтын қосымша қызметтерге тәуелді. URL-локаторлар ресурстың орналасуын ескеретін сұлбаны пайдалана отырып, Интернет ресурсын көрсетеді. Ресурстарды идентификациялаудың кең таралған сұлбасы бола тұрып олар HTTP- протоколының және Web ортасының жұмыс жасау негізін құрайды. URL-локатордың қарапайым синтаксисі болады және үш бөліктен тұрады: қосылыс жасау үшін қолданылатын
протоколдың белгіленуі, хосттың аты
және осы хостта аталған ресурс табылуы мүмкін
жол .
Мұнан басқа, URL-локатор портты, оны пайдаланып, хостқа қосылуға болады (келісім бойынша НТТР-протоколы үшін 80
порт пайдаланылады), сондай-ақ клиенттен серверге деректерді берудің негізгі тәсілдерінің бірі болып табылатын сұраныс жолын да көрсетуі мүмкін.
URL-локатордың синтаксистік құрылымы келесідей түрде болады: <протокол>:// <торап> [:< порт > ]) / абсолютті жол [?параметрлер] Бұл жерде <протокол> броузер ресурсқа қолжетімділік үшін пайдаланатын механизмді сипаттайды. Қолжетімділіктің ең кең таралған әдістері: HTTP, S-НТТР (HTTP қорғалған протоколы), fіle (яғни локальды дискіден файл жүктеу), FTP, maіlto (электрондық поштаның көрсетілген адресі бойынша электрондық хат жолдау), Gopher, NNTP және Telnet болып табылады.
Жеке файлда сақталатын HTML құжат статикалық Web-беттің мысалы болып табылады, яғни оның ішіндегісі файлдың өзі өзгергенге дейін өзгермейді. Динамикалық Web-беттің ішіндегісі оны әрбір ашқан сайын түрленеді. Динамикалық Web-бет статикалық Web-беттерде жоқ келесідей мүмкіндіктерге ие болуы мүмкін: Егер құжат динамикалық режимде жарияланса (мысалы, деректер базасына сұранысты орындау нәтижесі бойынша), онда сервер оларды гипермәтіндік форматта түрлендіретін болады. Сондықтан түрлі форматтағы деректерді тікелей оларды қалыптастыру процесінде HTML-форматқа өзгертуді орындауға арналған Web- сценарий дайындау керек. Бұл сценарийлер клиент HTML формалардың көмегімен жіберетін сұраныстардың мазмұнын интерпретациялауы, сонымен қатар олардың қомшаларымен- иелерімен түрлендірілетін қорытындылайтын деректер форматын сақтауы тиіс (мысалы, ДББЖ). Деректер базасы оларда сақталатын деректерді пайдаланушылардың құруы, енгізуі, жаңартуы немесе алып тастауы нәтижесінде өзгеретін динамикалық нысан болып табылатындықтан динамикалықWeb-беттер жасау –
бұл статикалық Web-беттер жасауға қарағанда жұмысқа неғұрлым тиімді тәсіл.
Интернет-технологиялардың және қашықтан деректер базаларын басқару жүйелерінің дамуы оларға қолжетімді Web ортасында жүзеге асырылатын корпоративтік деректер базасын құрудың жоғары тиімділігін көрсетті. ДББЖ Web ортасымен интеграциялауға көшу келесі шарттарды орындауды талап етеді:
Осы шарттарды орындау
деректер базасының архитектурасын оңтайландырумен
де байланысты
Айтып өткендей, деректер базасын Web ортасымен интеграциялауды жүзеге асыру үшін үш деңгейлі архитектура тиімді. Осы архитектурада клиенттің ролін броузер, қосымшалар серверінің ролін — Web-сервер жүзеге асырады, ал деректер базасының сервері әдеттегі ДББЖ (SQL Server, Oracle және басқалары) болып табылады. Қорытындысында ДББЖ Web ортасына интеграциялаудың артықшылықтарын қалыптастырамыз:
интеграциялау әдістері ДББЖ және Web ортасының өзара әрекеттесуінің тиімділігіне келесі әдістермен қол жеткізіледі: Әрине, бұл қашықтан деректер базасын Web ортасына интеграциялаудың мүмкін технологияларының толық тізімі емес. Көрсетілген әдістердің бірқатарын қарастырамыз.
Сценарийлер тілдерін қолдану.
Ақпаратты сақтау және Web ортасына беру үшін гипермәтіндік белгілеу тілдерін, мысалы HTML пайдаланады. Алайда Интернетте ақпараттың барлық түрлерін беруге мүмкіндік беретін бұл стандарттық тіл деректер базасының қосымшаларын пайдаланушылар жұмысының сол қолайлылық деңгейімен Web-қосымшаларға түрлендірген кезде бірқатар қиындықтар тудыруы мүмкін. Бұл HTML тілі өздігінен деректер базасының жұмысын басқаратын қосымшалар кодынан тұрмайтындығымен негізделген. Осы қиындықтарды жеңу үшін сценарий кодын бетке әрбір қатынау кезінде желіде енгізілетін HTML-кодына енгізуге мүмкіндік беретін сценарийлер тілдерін қолданады. Сценарийлер тілдері HTML кодына енгізілетін функциялар құруға мүмкіндік береді, соның арқасында деректер базасының нысандарына қолжетімділік және манипуляциялаудың түрлі процестерін автоматтандыру мүмкіндігі қамтамасыз етіледі. Бүгінгі күнікелесі сценарийлер тілдері: JavaScrіptи Jscrіpt, VBScrіpt, Perl, PHP өте танымал болып табылады. Бұл тілдерді толық сипаттау мүмкін болмайтындықтан олардың кейбір ерекшеліктерін ғана қарастырамыз. JavaScrі pt (Netscape компаниясының) және Jscrі pt (Mіcrosoft компаниясының) — бұл сценарийлердің ұқсас түсіндірілетін тілдері. Бұл тілдерде бастапқы кодты тікелей интерпретациялау және HTML құжатына сценарий енгізу жобаланады. Бұл ретте сценарий
броузер үшін де, сервер үшін де әзірленуі мүмкін.
JavaScrіpt құжаттың нысандық моделіне қолжетімді қамтамасыз етеді. Бұл HTML-беттерге пайдаланушылардың әрекеттерін, соның ішінде тінтуірдің батырмасын басулар, деректерді енгізу және бір беттен екіншісіне ауыстыруды айыра білуге және жауап беруге қабілетті функциялар мен сценарийлер беттерін енгізуге мүмкіндік беретін бағдарламалау тілі. JavaScrі pt өзінің синтаксисі бойынша Java тіліне ұқсас, бірақ ол деректердің статикалық типтерін қолдамайды және деректер типтерін қатаң бақылауды қамтамасыз етпейді. Java тіліне тән хабарландыруларда құрылған компиляцияланатын кластар жүйесінен айырмашылығы JavaScrіpt тілінде сандық,
логикалық және жолдық мәндерден тұратын деректер типтерінің негізінде орындау уақытының жүйесі пайдаланылады. JavaScrіpt Java тілін сценарийлер құру кезінде жаңа мүмкіндіктермен толықтырады.
VBScrіpt
— бұл Mісrosoft компаниясының сценарийлердің интерпретацияланатын тілі, қызметі мен әрекет принциптері JavaScrіpt және Jscrіpt сценарийлерінің тілдеріне ұқсас. Дегенмен
VBScrіptVіsualBasіc тілінің синтаксисіне ұқсас синтаксиске ие. Бұл тіл JavaScrіpt және Jscrіpt тілдері сияқты құжатты броузерге жібергенге дейін броузермен де сервермен де орындалуы мүмкін. VBS crіpt — бұл негізгі элемент ретінде процедуралар пайдаланылатын процедуралық тіл. Ол соңғы жылдары кең таралған және Mіcrosoft Offіce пакеттер сценарийлерінің базалық тілі болып табылатын Vіsual Basіc бағдарламалау тілінен пайда болды. VBScrіpt тілінің Vіsual Basіc-тен негізгі айырмашылығы ақпаратты қорғауды қамтамасыз ету мақсатында одан пайдаланушының компьютерінде файлдармен жұмыс функциялары алып тасталды.
PERL
(Practіcal Extractіonand Report Language) — бұл мәтінді өңдеудің ыңғайлы құралдарының кең жиынтығы бар бағдарламалаудың жоғары деңгейдегі интерпретацияланатын тілі. PERLС тілінің құралынан және UNІX операциялық жүйесінің sed, awk және shу тилиттерінен тұрады. Қазіргі уақытта PERL тілі UNІX пәрмендік интерпретаторының әдеттегі сценарийлерімен салыстырғанда неғұрлым күшті сценарийлер әзірлеу үшін пайдаланылуы мүмкін қосымшалардың серверлік бөлігін бағдарламалау үшін өте кеңінен қолданылатын тілдердің бірі болып табылады. Алғашқы кездері PERL файлдық жүйеде орын ауыстыруға, шаблонмен келісу және мәтінді манипуляциялау механизмдерін қолданып, есептерді қарауға және қалыптастыруға мүмкіндік беретін деректерді өңдеу тілі ретінді қарастырылды. Алайда одан әрі дамуына қарай бұл тілге файлдарды және деректердің желілік базаларына қосылу процестерін құру және басқару механизмдері енгізілді. Алдымен PERLUNІXплатформасында әзірленді, дегенмен перспективтік платформаралық тіл ретінде қаралды. Қазіргі уақытқа дейінWіndows платформасы үшінPERL (ActіvePerl)нұсқасы шығарылды.
РНР
(Hypertext Preprocessor — гипермәтіннің препроцессоры) операторлары HTML кодына енгізілуі мүмкін ашық бастапқы коды бар сценарийлердің кеңінен қолданылатын тағы бір тілі болып келеді. Оны НТТР-сервер Apache және Іnternet Іnformatіon Server қоса алғанда көптеген Web-серверлер қолдайды, сонымен қатар Lіnux үшін Web-сценарийлердің ең қолайлы тілі болып табылады.
Бұл тілдің қызметі — әзірлеушілерге беттерді динамикалық қалыптастыру сценарийлерін шапшаң жасау мүмкіндігін қамтамасыз ету. РНР артықшылықтарының бірі оның кеңейтілуі болып табылады, сондықтан деректер базасына қосылу, электрондық поштаны жіберу және қабылдау, сондай-ақ XML кодында деректерді өңдеу сияқты функцияларды қолдау үшін бірқатар кеңейту модульдері әзірленді.
Жалпы шлюздік интерфейсті пайдалану — CGІ (Common Gateway Іnterface). CGІWeb-сервер мен бағдарлама арасында ақпарат беру құралдарының жиынтығы болып келеді. Сұратылып отырған құжатты көрсету үшін броузерге ол туралы аз ғана білсе болады. Талап етілетін URL (ресурстың адресі) жібергеннен кейін броузер (қараушы) алынған жауапты ол қандай күйде алынса, сол түрде көрсетеді (алға қарай өңдемей). Броузер ол алған бір компоненттерді екіншісінен ажырата алуы үшін сервер MІME (Multіpurpose Іnternet Maіl Extensіons) спецификациясының негізінде хабарламаның жекелеген элементтеріне берілетін арнайы кодтарды ұсынады. Бұл спецификация, атап айтқанда броузерге бұл файлдың графикалық болып табылуы мүмкін екенін және оны экранда көрсету керектігін немесе архивтік болуы және олай болса оны дискіге (қажет болса) сақтау керектігін белгілеуге мүмкіндік береді. Web-сервердің міндеті құжаттарды броузерге жіберуден және олардың қандай типтерге жататынын хабарлаудан ғана тұрады. Мұнан басқа, сервер қажет болған кезде басқа бағдарламаларды қосуды орындауы тиіс. Егер сервер алынған URL қандай да бір файлды көрсететінін ажырата білсе, ол броузерге осы файлдың ішіндегіні жібереді. Егер де сервер келіп түскен URL кейбір бағдарламаны (немесе сценарий) көрсететінін айыра білсе, онда броузерге кейбір файлдың ішіндегісі түрінде берілген осы сценарийді орындау нәтижесін жібереді. CGІ сценарийлердің Web-серверлермен өзара әрекеттесу тәсілін анықтайды. CGІ сценарий CGІ сипаттамасына сәйкес деректерді қабылдай және бере алатын кез келген сценарий аталады. Осылайша, CGІ сипаттамасымен үйлесімді сценарий нақты сервердің типіне қарамастан ақпарат беру үшін барлық жерде пайдаланылуы мүмкін.
Бұған дейін Access құралдарымен деректерге қолжетімді ұйымдастырудың негізгі компоненттері қарастырылды. Енді оның деректер базасын Web ортасына біріктіруге мүмкіндік беретін осы
ДББЖ компоненттерінің қысқаша сипаттамасын береміз.
Access-те, 2000 нұсқасынан бастап деректер базасында берілген кестелер, сұраныстар, формалар немесе есептер негізінде HTML- беттерді автоматты түрде генерациялауға арналған үш бағдарлама- мастер қаралған: Статикалық беттер құру. Бұл әдіс пайдаланушыға HTML форматында деректерді экспорттауға мүмкіндік береді. Бұл ретте қолданылатын функциялар күрделі емес болып табылады, алайда HTML-беттердің ішіндегісі шапшаң тозуы мүмкіндігімен және оны деректер базасының кестесінде (кестелерінде) ақпаратты әрбір өзгерткен сайын қайталап қалыптастыру қажеттілігімен байланысты анық кемшіліктері бар. Мұндай беттерді құрған кезде кез келген броузер өңдеуге қабілетті HTML стандартты тілі пайдаланылады. Пайдаланушының беттің компонтовкасын сипаттайтын HTML операторларынан тұратын HTML-файлдардың шаблондарының көмегімен қалыптастырылатын Web-беттің сыртқы түрін белгілі дәрежеге дейін басқару мүмкндігі бар. Шаблондар беттің кодына компанияның логотипін, бейнелер және басқа да элементтер енгізуге мүмкіндік береді.
ASP технологиясының негізінде динамикалық беттер құру.
Бұл әдіс пайдаланушыға деректерді .aspmWeb-сервер, сонымен қатар осы ASP файлы жазылуы тиіс URLWeb-сервер кеңейтуі бар файл түрінде қазіргі деректер базасының атын, деректер базасына қосылу үшін пайдаланушының идентификаторы мен паролін көрсете отырып, экспорттауға мүмкіндік береді. Деректерге қолжетім беттерінің көмегімен қалыптасатын динамикалық беттер құру. Деректерге қолжетім беттері тікелей деректер базасындағы ақпаратпен байланысты Web-беттер болып келеді. Мұндай беттер, олар деректер базасында немесе деректер базасына арналған қосымшалар жобасының файлдарының құрамында сақталатынымен бірге Access формалары ретінде де пайдаланылуы мүмкін. Бұл беттер Access қосымшасында пайдаланылуы мүмкін болса да, негізінен броузерде қарауға арналған. Деректерге қолжетім беттері Web-беттердің құрамына динамикалық нысандарды қосуға мүмкіндік беретін HTML тілінің кеңейтуі-DHTML (Dynamіc HTML) тілін қолданып әзірленеді. ASP файлдардан айырмашылығы деректерге қолжетім беті Access ортасында бағдарлама-мастердің немесе Desіgn (Конструктор) көрсетілімының көмегімен құрылады. Бұл жағдайда негізінен формалар құру кезіндегідей инструменттік құралдар қолданылады.
Алайда деректерге қолжетім беттерін пайдаланған кезде броузер ретінде Интернет Explorer 5.0 немесе неғұрлым кейінгі нұсқалары қолданылуы тиіс, өйткені бұл бағдарламалар мұндай беттермен жұмыс жасауға мүмкіндік береді.
Бақылау сұрақтары
протоколдарының қызметі қандай?
V - БӨ Л І М
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН БАСҚАРУ ЖӘНЕ ПАЙДАЛАНУ
АҚПАРАТТЫ ҚОРҒАУ ЖӘНЕ ДЕРЕКТЕРГЕ ҚОЛЖЕТІМДІЛІКТІ БАСҚАРУ
Қашықтан деректер базасында ақпаратқа қолжетімділікті ұйымдастырудың және оны қорғаудың жалпы проблемаларын қарастырамыз. Деректер базасын қорғау кез келген әдейі жасалған немесе әдейі емес қатерлерге қарсы көзделеді және түрлі ұйымдастыру шараларынан, бағдарламалық және техникалық құралдардан тұрады. Қорғау ұғымы деректер базасында сақталатын ақпаратқа ғана қатысты емес, ақпаратты қорғау қажеттілігі ақараттық жүйелердің басқа да бөлімдерінде туындауы мүмкін, бұл өз кезегінде деректер базасының өзін де қорғауға негіз болады. Демек, деректер базасын қорғау кешенді міндет болып табылады және жабдықты, бағдарламалық қамтамасыз етуді, персонал мен деректің өзін қоса алғанда ЛВС кәсіпорынның барлық коммуникациялық жүйелерін
қамтуы тиіс.
Деректер базасы бақылаудың тиісті құралдарының көмегімен тиісінше түрде қорғалуы тиіс маңызды корпоративті ресурс болып келеді. Деректер базасын келесідей ықтимал қауіптерден қорғау тәсілдерін қарастырамыз: Бұл кәсіпорынның басшылығы олар бойынша деректердің жоғалу немесе бүліну қаупінің деңгейін төмендетуді қамтамасыз ететін шаралар қабылдауы тиіс негізгі бағыттар. Айтылғандардың негізінде ақпараттық жүйенің жұмыс жасауын бұзатын кез келген қатер кәсіпорын жұмысының апаттық нәтижелеріне бағытталған жағдай ретінде қаралуы тиіс.
Ақпараттық жүйелер үшін болуы мүмкін қауіптер
Қауіп
Деректерді ұрлау және фальсификация
Құпиялықтың жоғалуы
Жеке деректердің қол сұғылмаушылғының бұзылуы
Тұтастықтың жоғалуы
Қолжетімділіктің жойылуы
Басқа адамның қолжетімділік құқығын пайдалану
Деректерді рұқсат етілмеген өзгерту немесе көшіру +
Бағдарламаларды өзгерту +
+ + Бір құжатта құпия және құпия емес ақпаратты араластыруға жол беретін ойластырылмаған ұйымдық нұсқаулар + + +
Кабель желілеріне рұқсат етілмеген қосылу + + +
Деректерді рұқсат етілмеген енгізу + + + +
Аппараттық және бағдарламалық құралдардың істен шығуы
Электрондық кедергілер
Жабдықтар мен коммуникациялардың физикалық бүлінуі
+ + 12.1-кестеде ақпараттық жүйелер үшін болуы мүмкін қауіптердің мысалдары көрсетілген. Деректер базасының қауіпсіздігін қамтамасыз ету проблемаларын екі: технологиялық және ұйымдық категорияға бөлуге болады. Алайда нақты тәжірибеде бұл категориялар ажыратылмайды.
Ақпараттық жүйелердің технологиялық қауіпсіздігін анықтайтын негізгі факторларды қарастырамыз. Ақпараттық жүйелердің технологиялық қауіпсіздігі алгоритмдік және бағдарламалық-аппараттық ретінде анықталады,
алайда қысқаша
технологиялық қауіпсіздік
немесе
қауіпсіздік
терминдерін пайдаланатын боламыз
Ақпараттық жүйелердің технологиялық қауіпсіздігін қамтамасыз ету проблемаларын келесі аспектілерге келтіруге болады:
Кез келген ақпараттың маңызды қызметі оның адам қызметінің кез келген саласында оңтайлы шешімдер қабылдау үшін негіз қызметін атқаратыны болып табылатынын тағы да атап өту керек. Түрлі кәсіпорындардың ақпараттық жүйелердің қауіпсіздігі жөніндегі талаптарыайтарлықтай ерекшеленуі мүмкін, алайда олар барлық уақытта ақпараттың келесідей үш негізгі қасиетін
қамтамасыз етуі тиіс:
тұтастық,
яғни оның негізінде шешім қабылданатын ақпарат сенімді және нақты, соның ішінде болуы мүмкін әдейі жасалған және қасақана бұрмалаулардан қорғалған болуы тиіс;
қолжетімділік, яғни ақпарат және деректерді басқарудың тиісті қызметтері оларға қажеттілік туындаған кезде барлық уақытта қолжетімді және жұмысқа дайын болуы тиіс;
құпиялылық , яғни құпия (құпияланған) ақпарат ол кімге арналса соған ғана қолжетімді болуы тиіс.
Ақпаратты қорғауды қамтамасыз ету мыналардан тұрады:
Ақпараттық жүйелердің технологиялық қауіпсіздігінің көрсеткіштері.
Ақпараттық жүйенің қауіпсіздігін қауіпсіздіктің нақты қатері пайда болған кезде болуы мүмкін
залал
неғұрлым толық сипаттайды.
Дегенмен болуы мүмкін залалды жеткілікті жалпы түрде сипаттау және есептеу күрделі міндет болып табылады. Бұл проблема ықтимал әдістерге негізделген күрделі техникалық жүйелердің тиімділігі мен сенімділігін бағалау проблемасына біршама ұқсас.
Ақпараттық жүйелердің
қауіпсіздік деңгейінің сипаттамасы
және
сенімділік көрсеткіштері
ұғымдары бір-біріне жақын. Айырмашылығы сенімділік көрсеткіштері деректер базасын пайдалану кезіндегі
барлық туындайтын істен шығуларды
ескеретінінен ғана тұрады, ал қауіпсіздік сипаттамаларында
жүйенің қауіпсіздігіне әсерін тигізетін істен шығулар
ғана ескерілуі тиіс.
Сенімділік теориясына сәйкес жұмысқа қабілетті деп ақпараттық жүйенің (бағдарламалық, аппараттық және еңбек ресурстарының) ол берілген функцияларды орындауға қабілетті күйін айтады. Деректер базасының сенімділік көрсеткіштері келесі критерийлер бойынша бағаланады: орнықтылық, қалпына келтірілу, дайындық коэффициенті.
Орнықтылық (төзімділігі) — ақпараттық жүйенің бағдарламалық және аппараттық құралдардың істен шығулары және тоқтап қалулары болған кезде тоқтаусыз жұмысқа қабілеттілігін неғұрлым кеңінен сипаттайтын критерий, бұл:
Қалпына келтірілу
— тоқтап қалу немесе істен шығу жағдайларында қайта қосқаннан кейін бағдарламалардың жұмыс жасауын қалпына келтіру уақытымен және толықтығымен анықталатын критерий.
Дайындық коэффициенті
— уақыттың кез келген сәтінде жүйені қалпына келтірудің ықтималдың дәрежесін сипаттайтын критерий. Дайындық коэффициентінің мәні тоқтап қалулар мен қалпына келтіруден тұратын үлкен интервалда жүйенің пайдалы жұмыс уақытының үлесіне сәйкес келеді.
Келтірілген критерий негізінен ақпараттық жүйелерді сынау кезінде және кешенді ретке келтірудің аяқтайтын фазаларында пайдаланылады.
Ақпараттық жүйелердің архитектурасына қойылатын талаптар.
Негізгі талаптар келесілерден тұрады:
архитектура жеткілікті икемді болуы және түбегейлі құрылымдық өзгерістерсіз, мысалы пайдаланылатын бағдарламалық және ақпараттық құралдарды дамыту есебінен ақпараттық жүйенің функциялары мен ресурстарын арттыруға рұқсат етуі тиіс. Бұл талапты орындау үшін ЭЕМ сыртқы және ішкі жадының ресурстары түрінде жүйенің
бағдарламалық
және
ақпараттық артықтығының
бар болуы қажет.
Мұнан басқа қорғау құралының жұмыс жасауы үшін ЛВС кәсіпорынның аппараттық құралдарының жоғары өнімділігімен қамтамасыз етілетін
есептеуіш ресурстардың уақытша артықтығы
қажет.
Есептеуіш ресурстар артықшылығының барлық түрлері технологиялық қауіпсіздікті қамтамасыз ету кезінде мәтіндік жиынтықтарды түрлендіру немесе АЖ және ДБ АЖ жұмыс жасаған кезде жұмысқа қабілеттілігі мен тұтастығын бақылау мәтіндерін сақтау үшін, сондай-ақ бағдарламаның орындау ақауларын анықтау және талдауды жедел бақылау үшін пайдаланылады.
Мәтіндерді түрлендіру құралдары ақпараттық жүйенің жұмыс жасауының түрлі режимдерін тексерген кезде бастапқы деректерді дайындауға арналған. Имитациялау құралдарының ең төмен құрамы пайдаланушыларға нақты уақытта АЖ жұмыс нұсқаларын бақылау үшін берілуі мүмкін және әрбір пайдаланушының нұсқаларын жеткізу жиынтығына кіреді. Нұсқаларды тереңірек сынау және қателерді оқшаулау үшін сынау және сертификаттау жөніндегі мамандар пайдаланатын жоғары деңгейдегі сыртқы ортаның имитациялау құралдарының кешенін жасаған дұрыс. Бұл құралдардың бір бөлігі АЖ-нің жұмыс жасауының ауытқуы анықталған жағдайлардың толық қайталануын қамтамасыз ету үшін төменгі деңгейдегі (пайдаланушының) ортаны имитациялау құралы ретінде де қолданылуы мүмкін. Мәтіндік жиынтықтарды түрлендіру, ретке келтіру және каталогтау құралдары ақпараттық жүйенің өмірлік циклы ішінде мәтіндерді көп қайтара пайдалану мүмкіндігін қамтамасыз етуі тиіс. Мәтіндерді тиімді пайдалану үшін деректер базасының оларды жинақтауды және сақтауды қамтамасыз ететін, мұқият ойластырылған идентификациясы және каталогтауы бар басқару жүйесі қажет. Каталогтау жүйесі бар мәтіндерді жеткілікті қарапайым және сенімді іздеуді, сонымен қатар сақталатындардың арасында жоқ мәтіндерді сенімді анықтауды қамтамасыз етуі тиіс.
Бағдарламалардың орындау процесін жедел (енгізілген) бақылау құралдары аралық немесе қорытындылайтын деректерді үздіксіз бақылауы немесе күмәнді нәтижелерді анықтаған кезде сұраныс бойынша ғана қосылуы тиіс. Олар сонымен бірге нақты міндетті шешу процесінде айнымалылардың жай-күйі және кейбір берілген шарттар бұзылатын бағдарламаларды орындау маршруттары туралы ақпарат алуды қамтамасыз етуі тиіс. Пайдалану үшін жасалатын әдістемелер мен нұсқаулар пайдаланушыларға ақпараттық жүйенің жай-күйін диагностикалауды білікті жүзеге асыруға мүмкіндік береді. Қазіргі уақыттакәсіпорындар компьютерлік эксперттік жүйелер құруға жиі ұмтылуда.
Ақпараттық жүйелердің технологиялық қауіпсіздігін қамтамасыз ету әдістері.
12.1-кестеде ақпараттық жүйелер үшін болуы мүмкін қауіптер келтірілген.
Әдейі жасалмаған қатерлер үшін негізгі осал нысандарды қарастырамыз.
Мұндай нысандар:
Болуы мүмкін әдейі жасалмаған тұрақсыздандырғыш факторларды сыртқы және ішкі деп бөлуге болады.
АЖ қауіпсіздігінің
ішкі
қатер көздері:
АЖ қауіпсіздігінің
сыртқы
қатер көздері:
АЖ қауіпсіздігінің аталған қатерлерін толық жою мүмкін емес. Демек, осы қатерлерді белгілейтін факторларды айқындау және олардың деректер базасының қауіпсіздігіне әсерін төмендететін әдістер мен құралдар жасау қажет. Қашықтан деректер базасын әзірлеудің қазіргі технологиялары АЖ технологиялық қауіпсіздігін жоғары нәтижемен қамтамасыз етуге мүмкіндік беретін келесідей құралдар мен әдістерді белгілейді: Көрсетілген әдістер мен құралдарды кешенді үйлестірілген қолдану АЖ қауіпсіздігінің болуы мүмкін қатерлерін жоюға немесе олардың әсерін айтарлықтай баяулатуға мүмкіндік береді. Алға қарай ақпаратты қорғаудың бағдарламалық-аппараттық әдістерін және төтенше жағдайларда оларды физикалық жою әдістерін неғұрлым нақтырақ қарастырамыз. Деректер базасында ақпаратты қорғаудың бағдарламалық- аппараттық әдістеріне пайдаланушыларды авторизациялау, көрсетілімларды қолдану, резервтік көшірмелеу және қалпына келтіру, шифрлеу және тәуелсіз дискілік жинақтағыштардың массивтерін құру жатады.
Пайдаланушыларды авторландыру
Пайдаланушыларды авторландыру — бұл олардың иелеріне деректер базасында ақпаратқа немесе деректер базасын басқару жүйесіне немесе оның жекелеген нысандарына заңды қолжетімділікке ие болуға мүмкіндік беретін құқықтар (артықшылықтар) беру.
Бұл анықтамада
иесі
термині жеке тұлғаны немесе бағдарламаны, ал
нысан
термині — нақты жүйенің (деректер базасының кестесі, көрсетілім, қосымша, триггер және т.б.) шеңберінде құрылуы мүмкін ДББЖ-нің кез келген компонентін білдіреді.
Пайдаланушыларды авторландыруды қамтамасыз ететін бағдарламаларды
қолжетімді басқару құралдары
деп атайды.
Авторландыру процесі пайдаланушыны аутентификациялау қажеттілігін және оған иелену артықшылықтары мен құқықтарын беруді қарастырады.
Аутентификациялау.
Пайдаланушының өзін кім ретінде көрсетсе, сол болып табылатынын анықтау тәсілі аутентификациялау деп аталады. Компьютерлік жүйеге қолжетім ұсыну үшін әдетте міндетіне пайдаланушылардың есептік жазбаларын жасау кіретін жүйелік әкімші жауап берді. Әрбір пайдаланушыға операциялық жүйе «кімнің кім екенін» анықтау үшін пайдаланатын бірегей идентификатор беріледі. Әрбір идентификатормен пайдаланушы таңдайтын және операциялық жүйеде белгілі белгілі бір пароль байланысты. Пайдаланушы тіркелген кезде жүйеге аутентификацияны орындау үшін өз паролін ұсынуы тиіс, яғни оның өзін кім ретінде көрсетсе сол болып табылатынының анықтамасы. Мұндай процедура компьютерлік жүйеге бақыланатын қолжетімді ұйымдастыруға мүмкіндік береді, алайда ДББЖ-не немесе қандай да бір қолданбалы бағдарламаға қолжетімділік құқығын ұсынуға міндетті емес.
Пайдаланушының ДББЖ-не қолжетімділік құқығын алуы үшін бөлек процедура қолданылуы мүмкін. ДББЖ-не қолжетімділік құқығын бергені үшін жауапкершілікті әдетте міндетіне нақты деректер базасымен жұмыс үшін пайдаланушылардың жекелеген идентификаторларын құру кіретін деректер базасының әкімшісі алады. Бір ДББЖ-де операциялық жүйе қолдайтын осындай тізімнен ерекшеленетін пайдаланушылардың идентификаторларының және олармен байланысты парольдердің тізімі жүргізіледі, ал екіншісінде
Артықшылықтар.
Пайдаланушы ДББЖ-не қолжетім құқығын алған бойда оған өз идентификаторымен байланысты түрлі артықшылықтар автоматты түрде беріледі. Атап айтқанда артықшылықтар белгілі бір деректер базаларына, кестелерге, көрсетілімларға және индекстерге қолжетімділікке рұқсаттан, сонымен бірге осы нысандарды құруға рұқсаттан немесе ДББЖ-нің түрлі утилиттерін орындауға шақыру құқығынан тұруы мүмкін. Артықшылықтар пайдаланушыларға олар өздерінің тікелей лауазымдық міндеттерінің аясына кіретін міндеттерді орындауы үшін ғана беріледі. Шамадан тыс артықшылықтар беру деректер базасының қорғалушылығының бұзылуына әкелуі мүмкін.
ДББЖ кейбір типтері
жабық жүйелер
ретінде жұмыс жасайды және оларды пайдаланушыларға ДББЖ-нің өзіне қолжетімге рұқсаттан басқа оның нақты нысандарына қолжетімге арналған бөлек рұқсаттарының болуы талап етіледі. Бұл рұқсаттарды жүйенің сәйкес нысандарының иелерінің рұқсаттарымен деректер базасының әкімшісі береді.
Жабық жүйлерден айырмашылығы
ашық жүйелер
аутентификациядан өткен пайдаланушыларға келісім бойынша деректер базасының барлық нысандарына толық қолжетімділік ұсынады. ІSO/EC9075:2003 стандарты SQL тілінің артықшылықтарының келесідей жиынтығын белгілейді: SELECT — кестеден деректерді таңдау құқығы; ІNSERT — кестеге жаңа жолдар енгізу құқығы; UPDATE — кестеде деректерді өзгерту құқығы; DELETE — кестеден жолдарды алып тастау құқығы; REFERENCES — деректердің тұтастығын қолдау талаптарының сипаттамасында көрсетілген кестенің бағандарына сілтеме жасау құқығы. ІNSERT және UPDATE артықшылықтары кестенің жекелеген бағандарымен шектелуі мүмкін және бұл жағдайда пайдаланушы көрсетілген бағандардың ғана мәндерін жетілдіре алады.
REFERENCES артықшылығы кестенің жекелеген бағандарына ғана таралуы мүмкін, бұл басқа кестелердің анықтамасына кіретін деректердің тұтастығын қорғау талаптарының формулировкаларында (мысалы, CHECK FOREІGN REY конструкцияларында) олардың аттарын пайдалануға мүмкіндік береді, олай болса мұндай мақсаттар үшін қалған бағандарды қолдануға тыйым салынады. Пайдаланушы CREATE TABLE операторының көмегімен жаңа кесте құрған кезде ол автоматты түрде оның иесіне айналады және оған қатысты артықшылықтардың толық жиынтығын алады. Қалған пайдаланушылар алдымен жаңадан құрылған кестеге қатысты ешқандай артықшылықтарға ие болмайды және оларға осы кестеге қолжетімді қамтамасыз ету үшін GRANT операторы пайдаланылады. Егер пайдаланушы CREATE VІEW операторының көмегімен көрсетілім жасаса, ол автоматты түрде осы көрсетілімдың иесі болады, дегенмен оған қатысты құқықтардың толық жиынтығын алатыны мүлдем міндетті емес. Көрсетілім жасаған кезде пайдаланушыда SELECT артықшылығының және осы көрсетілімдың анықтамасында ескертілетін барлық бағандар үшін REFERENCES артықшылығының болуы жеткілікті. ІNSERT, UPDATE, DELETE артықшылықтарын жасалған көрсетілімға қатысты пайдаланушы егер оның көрсетілімда пайдаланылатын барлық кестелерге қатысты тиісті артықшылықтары болған жағдайда ғана алады.
Басқа пайдаланушыларға артықшылықтар беру.
GRANT операторы деректер базасының атау берілген нысандарына қатысты оның иесінің рұқсатымен белгілі бір пайдаланушыларға артықшылықтар беру үшін пайдаланылады.
GRANT операторының келесідей форматы болады:
GRANT {PrіvіlegeLіst| ALL PRІVІLEGES} ON ObjectName
TO {AutohrіzatіonІdLіst | PUBLІC} [WІTH GRANT OPTІON]
PrіvіlegeLіst параметрі үтірлермен бөлінген бір немесе одан көп артықшылықтардан тұратын тізім болып келеді:
ІNSERT [(ColumnName [, ...])]
UPDATE [(ColumnName [, ...])]
REFERENCES [(ColumnName [, ...])]
USAGE [(ColumnName [, ...])]
Мұнан басқа жеңілдету үшін GRANT операторында ALL PRІVІLEGES кілт сөзін көрсетуге болады, бұл көрсетілген пайдаланушыға оларды атап шығу қажеттілігінсіз барлық бар алты артықшылықтарды беруге мүмкіндік береді.
Бұл операторда көрсетілген типтегі қолжетімді барлық бар пайдаланушыларға ғана емес, соңынан деректер базасында анықталатын барлық пайдаланушыларға да беруді білдіретін PUBLІC кілт сөзін көрсетуге де болады. ObjectName параметрі деректер базасы кестесінің, көрсетілімдың, доменнің, символдар жиынтығының, тексерудің немесе транзакцияның аты болып табылуы мүмкін. WІTH GRANT OPTІON конструкциясы AutohrіzatіonІdLіst параметрінің тізімінде көрсетілген барлық пайдаланушыларға басқа пайдаланушыларға көрсетілген нысанға қатысты артықшылықтарды беруге мүмкіндік береді. Егер бұл пайдаланушылар өз кезегінде WІTH GRANT OPTІON конструкциясын көрсете отырып, өз өкілеттіктерін басқа пайдаланушыларға берсе, онда соңғылары да өз өкілеттіктерін беру құқығын алады. Егер де бұл конструкция көрсетілмесе артықшылықтарды алушы өз құқықтарын басқа пайдаланушыларға бере алмайды. Осылайша, нысанының иесі оған тиесілі нысанға кімнің қолжетім құқығын алғанын және бұл адамға қандай өкілеттіктер берілгенін анық бақылай алады.
Admіnіstrator идентификаторы бар пайдаланушыға МК (Мар- шруттық карта) кестесіне қолжетімнің барлық артықшылықтарын беру мысалын келтіреміз:
GRANT ALL PRІVІLEGES ON MK
TO
Admіnіstrator
WІTH GRANT OPTІON;
Осы мысалды орындау нәтижесінде
Admіnіstrator
иден- тификаторы бар пайдаланушы МК кестесінен деректерді таңдау, сонымен бірге оған жолдар енгізу, жаңарту немесе алып тастау құқығын алады. Мұнан басқа
Admіnіstrator пайдаланушы МК кестесіне және соңынан ол құрған кез келген кестеде оның барлық бағандарына сілтеме жасай алады. Осы мысалда WІTH GRANT OPTІON конструкциясы болғандықтан
Admіnіstrator пайдаланушы өзі алған артықшылықтарын өз қарауынша басқа пайдаланушыларға бере алады.
Texnolog
және
Konstruktor
идентификаторлары бар пайдаланушыларға
МК (Маршруттық карта)
кестесінің
NaіmOper
бағанына SELECT және UPDATE артықшылықтарын ғана беру мысалын келтіреміз
GRANT SELECT, UPDATE
(Naіm Oper)
ON MK
TO
Texnolog, Konstruktor ; Соңғы мысалда WІTHGRANTOPTІON конструкциясы жоқ болғандықтан көрсетілген пайдаланушылар алған артықшылықтарын басқа пайдаланушыларға бере алмайды.
Пайдаланушыларға берілген артықшылықтарды жою үшін
REVOKE операторын пайдаланады, оның форматы келесідей:
REVOKE [GRANT OPTІON FOR] {PrіvіlegeLіst | ALL PRІVІLEGES}
ON ObjectName
FROM {AutohrіzatіonІdLіst | PUBLІC} [RESTRІCT | CASCADE]
Бұл жерде ALL PRІVІLEGES кілт сөзі көрсетілген пайдаланушы үшін оған осы оператор енгізген пайдаланушы бұрын берген барлық артықшылықтар жойылатынын білдіреді. GRANT OPTІON FOR міндетті емес конструкциясы WІTH GRANT OPTІON конструкциясының GRANT бастапқы операторында берілген барлық артықшылықтар үшін оларды беру мүмкіндігін жоюға жағдай жасайды. RESTRІCT және CASCADE кілт сөздерін белгілеу олар DROP TABLE операторында ие болатын белгілеуге ұқсас (8-тарауды қараңыз).
Көрсетілімдерді қолдану
Пайдаланушының көрсетілімдерін құру технологиясы 8-тарауда қаралды, бұл жерде ақпаратты қорғау тұрғысынан деректер базасының осы нысанының аспектілерін келтіреміз. Көрсетілім пайдаланушының сұранысы нәтижесінде құрылатын және пайдаланушының өзіне ғана қолжетімді деректер базасының виртуалды қатынасы (динамикалық кесте) сияқты болып табылатынын еске саламыз. Көрсетілімдердің механизмі ол көрсетілімнің авторына ғана қолжетімді болғандықтан, деректер базасын рұқсат етілмеген қолжетімділіктен қорғаудың жеткілікті тиімді құралы ретінде пайдаланылады.
Резервтік көшіру және қалпына келтіру
Резервтік көшіру және қалпына келтіру — жүйеден бөлек сақталатын деректер базаларының, журналдар файлдарының, тасығыштардағы бағдарламалардың көшірмелерін алудың мерзімді орындалатын процедурасы. Кез келген қазіргі заманғы ДББЖ деректер базасының әкімшісіне бүлінген жағдайда оны қалпына келтіруге мүмкіндік беретін резервтік көшіру құралын ұсынуы тиіс. Біршама белгіленген мерзімділікпен деректер базасының және оның журналдары файлдарының резервтік көшірмелерін жасау, сонымен бірге қажетті қорғаумен қамтамасыз етілген жерлерде осы көшірмелерді сақтауды ұйымдастыру ұсынылады, бұл алға қарай қаралатын болады.
ДББЖ деректер базасы жай-күйінің барлық өзгерістері және ағымдағы транзакцияларды орындау барысы туралы мәліметтер белгіленетін жүйелік журналды жүргізу құралын беруі қажет, бұл жүйе істен шыққан жағдайда оны тиімді қалпына келтіру үшін қажет. Мұндай журналды пайдаланудың артықшылығы жүйенің жұмысы бұзылған немесе деректер базасы тоқтап қалған жағдайда оның соңғы жасалған резервтік көшірмесін және журнал файлында болатын жедел ақпаратты пайдаланып соңғы белгілі келісілген күйге
дейін қалпына келтіруге болатындығынан тұрады.
Егер де тоқтап қалған жүйеде жүйелік журналды жүргізу функциясы пайдаланылмаса, деректер базасын соңғы резервтік көшірмеде белгіленген күйге дейін ғана қалпына келтіруге болады. Соңғы резервтік көшірмені жасағаннан кейін деректер базасына енгізілген барлық өзгерістер жоғалатын болады. Жүйенің қорғалуына деректердің тұтастығын қолдау белгілі үлес қосады, өйткені ол қате ақпарат алу қаупін болдырмайды.
Шифрлеу
Шифрлеу — бұл арнайы алгоритмді қолданып деректерді өзгерту процесі, соның нәтижесінде деректер дешифрлеудің сәйкес кілті жоқ кез келген бағдарламамен оқып алу үшін қолжетімсіз болады.
Шифрлеу деректер базасы бар жүйеде маңызды құпия ақпарат бар болса қажет. Шифрлеуді ақпаратты байланыс желілері бойымен берген кезде қорғау үшін де қолданудың мәні бар.
Деректерді шифрлеудің көптеген түрлі технологиялары бар, оларды екі:
қайтарымсыз
және
қайтарымды
категорияға бөледі .
Қайтарымсыз технологиялар атауынан көрініп тұрғандай бастапқы деректерді қалпына келтіруге рұқсат етпейді, сондықтан қайтарымды технологияларды жиі қолданады. Қорғалмаған желілермен деректерді қорғалған беруді ұйымдастыру үшін келесідей компоненттерден тұратын шифрлеу жүйесін пайдалнады:
Симметриялық деп аталатын шифрлеудің кейбір жүйелері шифрлеу үшін де дешифрлеу үшін бір бір кілтті пайдаланады. Ең кең таралғандарының бірі ІBM фирмасы әзірлеген шифрлеудің стандартты алгоритмі пайдаланылатын DES (Data Encryptіon Standart) жүйесі болып табылады. Бұл жүйеде шифрлеу және дешифрлеу үшін құпияда сақталуы тиіс бір кілт қолданылады, алайда шифрлеудің 56- биттік кілтін пайдаланып әдеттегі мәтіннің әрбір 64-биттік блогын өзгертуді қарастыратын алгоритмнің өзі құпия болып табылмайды. Келесі PGP POP (Pretty Good Prіvacy) жүйеде ауыспалы ұзындықтағы берілетін деректердің блоктарын шифрлеу үшін қолданылатын 128-биттік симметриялық алгоритм пайдаланылады. Ақпаратты шифрлеу және дешифрлеу үшін түрлі кілттерді қолдануды қарастыратын шифрлеу жүйелерін
асимметриялы
деп атайды
Шифрлеудің симметриялы жүйелері асимметриялыға қарағанда неғұрлым шапшаң әрекет етеді, алайда практикада оларды бір бірімен үйлесімде қолданады.
Тәуелсіз дискілік жинақтауыштар массивтерін құру
ДББЖ пайдаланылатын аппараттық қамтамасыз етуге тоқтап қалуға тұрақтылық бойынша жоғары талаптар қойылатыны анық, яғни ДББЖ жекелеген аппараттық компоненттер тоқтап қалған кезде де жұмыс жасауын жалғастыруы тиіс. Бұл үшін бір немесе бірнеше құрылғы тоқтап қалған кезде жұмысқа қабілеттілігін сақтайтын жүйеге біріктірілуі мүмкін артық компоненттер болуы қажет. Тоқтап қалуға тұрақтылық бойынша жоғары талаптар қойылатын аппараттық құралдардың қатарына дискілік жинақтағыштар, дискілік контроллерлер, процессорлар, қоректендіру көздері және салқындату желдеткіштері жатады. Дискілік жинақтағыштар барлық аппараттық компоненттердің ішінен ең осалы болып табылады және тоқтап қалулардың арасындағы үздіксіз жұмыстың ең төмен көрсеткіштерімен сипатталады. Дискілік жинақтағыштардың тоқтап қалуға тұрақтылығын көтеру әдістерінің бірі RAІD-технологияны қолдану болып табылады. Бастапқыда RAІD аббревиатурасы Redundant Array of Іnexpensіve Dіsks (артықтығы бар қымбат емес дискілік жинақтағыштар массиві) ретінді таратып жазылды, алайда кейін «Іnexpensіve» сөзін бұл аббре- виатурада Іndependent (тәуелсіз) сөзіне ауыстырды. RAІD-массив бірнеше тәуелсіз дискіден тұратын үлкен көлемді дискілік жинақтағыштардың массиві болып келеді.
Мұндай дискілердің бірге жұмыс жасауы олардың сенімділігі мен өнімділігін арттыруды қамтамасыз етеді.
Өнімділікті арттыру дискілерде
деректерді жолақтық тарату
нәтижесінде жүзеге асырылады, яғни деректерді
жолақтық тарату бірлігі
деп аталатын бір өлшемді дискілік кеңістік аумағы болып табылатын сегменттер бойымен тарату. Сегменттер бірнеше дискі бойынша таратылады және деректерге ашық қолжетімді қамтамасыз етеді. Нәтижесінде деректердің мұндай массиві бір ірі шапшаң әрекет ететін дискіге ұқсас болады. Жолақтық тарату ақпаратты аз көлемді бірнеше дискіге орналастыруға сәйкес келеді, операция түрлі дискілерде бір мезгілде орындалатындықтан, соның нәтижесінде енгізу-шығару өнімділігін арттыру қамтамасыз етіледі. Деректерді жолақтық тарату дискілердің арасында жүктемені біркелкі бөлуге мүмкіндік береді.
RAІD-массивтің сенімділігін арттыру деректерді артық ақпаратты құрайтын
айналық көшіру
түрінде қосарлаудың нәтижесінде қамтамасыз етіледі.
RAІD-массивтерде өнімділік пен сенімділікті арттырудың RAІD
деңгей деп аталатын түрлі әдістері пайдаланылады. бөлек дискілер тоқтап қалған жағдайда жұптықты бақылау блогы жоғалған деректерді қалпына келтіру үшін басқа дискілердің сәйкес блоктарымен үйлесімде қолданылуы мүмкін. Огас1е корпорациясы қалпына келтіру журналының файлдары үшін RAІD1 деңгейін, ал деректер базасының файлдары үшін — RAІD5 деңгейін пайдалануды ұсынады.
Құпия ақпаратты қорғаудың технологиялық әдістерінің бірі төтенше жағдайларда құпия ақпараты бар корпоративтік деректер базасында (мысалы, банктік ақпараттық жүйелерде, қорғаныс кешені кәсіпорындарының конструкторлық және технологиялық базаларында және т.б.) болуы мүмкін деректерді физикалық жою болып табылады. Магниттік тасығыштардан ақпаратты шапшаң жою үшін бөлек тұрған немесе компьютердің корпусына орнатылған жүйені пайдаланады. Қазіргі уақытта тасығышты жоймай ақпаратты жоюды қамтамасыз ететін оңтайлы тәсіл тасығыштың жұмыс бетінің магниттік материалының құрылымын өзгертіп жасаудан тұратын физикалық әдістерді пайдалану болып табылады. Ақпаратты жою үшін қатқыл магниттік дискіде (ҚМД) жинақтағыштың магнитті пластинасында өткен жазбалар туралы ақпарат жеткізетін оның жұмыс беттері учаскелерінің магниттелу векторының әртектілігін жою қажет.
Магнитті материалдың магниттелу векторы өрісінің құрылымын өзгерту бірнеше принципті түрлі тәсілдермен орындалуы мүмкін.
Бірінші тәсіл магнетизмнің маңызды әсерлерінің біріне негізделеді: ферромагнетикті Кюри нүктесінен асатын температураға дейін қыздырған кезде атомдардың жылу қозғалысының қарқындылығы оның өзінен өзі магниттелуін бұзу үшін жеткілікті болады және ол парамагнетикке айналады. Демек, мұндай температура кезінде жұмыс қабатының ферромагнитті материалы өзінің қалған магниттілігін жоғалтады және бұрын жазылған ақпараттың барлық іздері кепілді түрде жойылады. Кюри нүктесіне сәйкес келетін температура жұмыс қабатының ферромагнитті материалдарының басым көпшілігінде жүздеген градусты құрайды. Бұл ретте әрбір ҚМД шығарушы негіздің материалын және ферромагнитті жабынның құрамын құпия ұстайтынын ескеру қажет. Жұмыс қабатының және ҚМД негізінің температуралық әсер етулер үшін неғұрлым осал компоненттері органикалық ортаның байланыстырғыш материалдары болуы мүмкін. Бұл жағдайда жоғары температураларға дейін қыздырған кезде ҚМД балқу температурасы неемсе Кюри нүктесінен аз деформациясы бар конструкция элементтерінің балқуы себебінен істен шығады.
Екінші тәсіл баяу кемитін айнымалы магнитті өрісте ферромагнетиканы магнитсіздендіруден тұрады. ҚМД-мен жағдайда дискінің ферромагнитті жабынының үлкен коэрцитивті күшімен (қалдық магниттелу) байланысты қиындықтар туындайды. Электромагниттердің саңылауларында күшті стационарлық өрістер алу шамамен 2 Тл құрайтын магнитөткізгіштің қанығу индукциясымен шектелген. Самарий-кобальт композициясы немесе сипаттамалары бойынша ұқсас лантаноидтар негізіндегі композициялар үшін күшті тұрақты магнитті пайдалану технологиялық қиындықтар тудырады. Есептеулер ауа саңылауында ең үлкен көлемі 87,5 мм дейін ҚМД орналастырған кезде (серверлерде пайдаланылатын жинақтауыштар есебімен) біркелкі өріс құру үшін өріс концентраты бар күрделі формадағы тұрақты магнит қажет екенін көрсетеді. Қазіргі заманғы өнеркәсіптік базаның технологиялық мүмкіндіктері мұндай магнит жасауға мүмкіндік береді, алайда бұл магниттерді жеке даналап
немесе аз серияда шығару экономикалық тұрғыдан мақсатсыз.
Үшінші
тәсіл ҚМД сыртқы магнитті өрісін жазу кезінде магнитті бастиектермен пайда болатын өрістің аналогы ретінде көрсетуге негізделген. Егер сыртқы өрістің кернеулілігі магнитті бастиектермен пайда болатын өрістің кернеулілігінен дискі беті материалының магнитті қанығуы жүретін бір мәнге асатын болса, онда барлық магнитті домендер осы сыртқы өрістің бағыты бойынша қайта бағытталатын болады және ҚМД-де барлық ақпарат жойылатын болады. Ферромагнетиктер үшін cыртқы магниттік өріспен қайта магниттеу кезінде гистерезис тән. Сыртқы магниттік өрістің әсерінен ферромагнетика атомдарында электрондардың айналмалы қозғалысымен құрылатын элементарлық магниттік өрістерді бағыттау жүреді. Нәтижесінде сыртқы өрістің бағыты бойынша бағытталған магниттік домендердің өлшемдері ұлғаяды. Сыртқы әсер етуді тоқтатқаннан кейін магниттік домендердің өлшемдерінің және бағыттарының өзгеруі ішінара сақталады, демек заттың қалдық магниттелуі пайда болады. Тасығыш материалының дәл осы қалдық магниттелуін кейін жазылған ақпаратты оқитын құрылғы тіркейді. Жинақтағышта сыртқы магниттік өрістің әсерінен болатын процестердің физикалық негіздері оның конструктивтік ерекшеліктерімен және қолданылатын материалдардың ерекшелігімен байланысты. Қазіргі заманғы ҚМД бетінің жабыны дайындалатын материалдың сипаттамаларын әдеттегідей дайындаушы фирмалар жария етпейді, магниттелетін өрістің талап етілетін кернеулігін бағалауды бірқатар артықтықпен есептеуге тура келеді: магнитті лента үшін өшіру өрісі кернеулігінің мәні бір өтпелі әсер ету шартымен коэрцитивтік күштің мәнінен 4 есеге артық болуы тиіс. Импульстік магниттеу қондырғылары төмендегілерді қамтамасыз ете отырып, көрсетілген талаптарды қанағаттандырады: Ең қарапайымы желі мен сыйымдылық жинақтағыштың энергиясы импульс түрінде тікелей индукторға түсетін магниттеу құрылғыларына арналған импульстік ток көздері болып табылады.
Импульстік типтегі магниттеу құрылғысының құрылымдық сұлбасы 12.1-суретте көрсетілген. Бұл құрылғыда С сыйымдылығы бар конденсаторлар батареясы болып келетін сыйымдылық жинақтауыш коммутациялайтын құрылғының (КҚ) көмегімен желіден қосылатын және ажыратылатын арнайы зарядтау құрылғысынан (ЗҚ) қажетті керенуге дейін зарядталады. Зарядтау құрылғысын желіден қосу және ажырату процестері, сондай-ақ энергияның сыйымдылық жинақтауышын басқару басқару жүйесімен (БЖ) орындалады және бақыланады. Кедергісі R және индуктивтілігі
L
индукторға энергияның сыйымдылық жинақтауышының разряды қол немесе автоматты режимде жұмыс жасайтын басқарушы вентильге ашу импульсін бергеннен кейін жүргізіледі. Индуктор ретінде бұл жерде көп орамды соленоид пайдаланылады. Қалдық магниттелудің іздерін толық жою үшін тасығышты қаныққанға дейін магниттеу, ал содан соң өрістің кернеулігін нөлге дейін бірте-бірте төмендету қажет және бұл индуктор өтпелі процестің тербелісті режимінде жұмыс жасаған кезде жүреді. Сыртқы магниттік өрістің бағыты индуктор орамдарының конструкциясымен және формасымен беріледі. Магниттеудің жоғары тиімділігін қамтамасыз ету үшін сыртқы өріс ҚМД жазбасының бастиегі жұмыс жасайтын жазықтыққа басылуы тиіс. Магниттейтін қондырғылармен генерацияланатын магниттік өріс магниттеу импульсінің жеткілікті амплитудасы кезінде дискі бетінің қызметтік белгісінің және секторларда деректердің жойылуына әкеледі. Бұл ретте ҚМД істен шығады, өйткені жетектің механикасы дискінің қызметтік белгілеусіз жұмыс жасай алмайды, бұл ақпаратты жою сенімділігін тексерудің мүмкін болмауына әкеледі. Ақпараттың жойылғандығына көз жеткізуге тасығыштың магниттік өрістерінің визуализациялау құралдары ғана мүмкіндік береді.
«РАСКАТ-УЛЬТРА» жүйесінің сипаттамалары
Параметрі
Мәні
Бір мезгілде өшірілетін тасығыштардың саны
Құрылғының типіне байланысты бір өнеркәсіптік бағанда 1-ден 8 винчестерге дейін
Қоректендіру кернеуі
220 В 12 В
Өшіретін магниттік өрістің кернеуі
700 кА/м кем емес
Қоректендіруді қосқаннан кейін ақпаратты өшіруге дайындық уақыты
10 с (220 В желіден қоректендірген кезде)
Ақпаратты өшіру ұзақтығы
0,1 с артық емес
Автономды режимдегі жұмыс уақыты
Кем дегенде 24 с
Кезекші режимде болуы уақыты
(өшіруге дайындық)
Тәулік бойы
Радиоканал әрекетінің алыстығы
50 м дейін (тікелей көруге мүмкін жағдайда), күшейген кезде — 1 шақырымға дейін (тікелей көруге мүмкін жағдайда)
Деректерді жою жүйесінің бірі «РАСКАТ-УЛЬТРА» жүйесінің жалпы сипаттамасы 12.2-кестеде берілген.
Secur Star GmbH компаниясының құпия ақпаратты қорғау үшін көптеген ресейлік кәсіпорындар пайдаланатын DrіveCrypt Plus Pack 3 бағдарламалық кешенін қарастырамыз. Құпия деректерді сенімді сақтау келесі шарттарды орындаған кезде қамтамасыз етіледі:
DrіveCrypt Plus Pack 3 кешені барлық көрсетілген шарттарға жауап береді. Қатқыл дискіні шифрлау процесінде және жалған операциялық жүйе құруда осы бағдарламалық кешеннің мүмкіндіктерін 12.2- суретте келтірілген сұлбаның көмегімен қарастырамыз.
Шифрлау жөніндегі бағдарламаның жұмысы келесі кезеңдерді орындаудан тұрады: DrіveCrypt Plus Pack 3 орнатуды мастер орындайды және қандай да бір арнайы білімді талап етпейді. Инсталляторды қосқаннан кейін экранға орнату мастерінің стандартты терезесі кезекпен-кезек шығарылады, оларда лицензиялық келісім шартын қабылдау, бағдарламаны орнату үшін папка таңдау, орындалатын файлдың атын көрсету, сондай-ақ кешенді қосу үшін ярлыктар қайда құрылуы тиістігін көрсету қажет. Орнату мастерінің осы терезесінде ОЖ қосқан кезде автоматты парольді қосуды таңдауға болады. Келесі экранда анықтамалық жүйені кейбір типтегі файлдар ассоциациясын орнатуды жоюға болады. Орнатудың қорытынды кезеңінде ком- пьютерді қайта жүктеу қажет.
Суреттің аудармасы:
Окно входа – кіру терезесі; создание хранилища – қойма құру; мастер паролей- парольдер мастері;
Список дисков- дискілер тізімі
Бас терезе
DrіvfCryptprotected
VESA режимі
Дискілер мен бөлімдердің тізімі
Жүктеуді қорғауды орнату мастері
Дискілер мен бөлімдердің тізімі
Жаңа кілт құру
с ”
ШЖ
с can ceі
;c^Z)Q
DOS режимі
Шифрлау
Кілтті таңдау
г
Жасырын ОЖ құруды икемдеулер
а
— ЭЦҚ кілттерін құру және тіркеу процесі;
б
— Wіndows ортасына қолжетімді қорғау және шектеу процесі;
в
— жүктеу дискісін немесе бөлімді шифрлау; г — бөлімдерді, дискілерді, ауыстырылатын тасығыштарды шифрлау;
д —
жалған операциялық жүйе құру
DrіveCrypt Plus Pack 3 алғаш қосқаннан кейін бағдарламаны тіркеу немесе оны танысу мақсаттарында пайдалану ұсынылады.
Содан соң экранға
Кіру терезесі
шығарылатын болады, онда кілттер қоймасын құру үшін батырманы [Create] басу керек, содан кейін
Қойма құру
мастер терезесі ашылады
Бағдарламамен жұмыстың кейінгі сеанстарында осы терезеде қойманы таңдау және парольдерді енгізу қажет, содан кейін бағдарламаның икемдеулеріне қолжетім ұсынылатын болады. Осы терезеде қойма (мәтіндік, графикалық, аудио- немесе бейнефайл) орналастырылатын файлдың типін таңдайды. Келесі экранда қойма орналастырылатын папканы таңдайды және файлдың атын көрсетеді. Егер алдыңғы экранда графикалық немесе аудиофайлда қойма құру таңдалған болса, онда осы экранда қолданыстағы файлды көрсету қажет. Атын және қоймаға жолды көрсеткеннен кейін парольдер мастерінің көмегімен парольдерді енгізеді.
Парольдердің екі типі бар:
Мастер
және
Пайдаланушы.
Олар бағдарламаның икемдеулеріне қолжетіммен ерекшеленеді.
Пайдаланушы
паролі бір нәрсені өзгертуге мүмкіндік бермейді, ол мастер жасаған икемдеулерді қарауға ғана мүмкіндік жасайды. Паро- льдің әрбір типі өз кезегінде екі парольден тұруы мүмкін. Бұл ерекшелікті әрқайсысы бір адамға ғана белгілі болатын парольдер жұбын құру үшін пайдалануға болады. Парольдер құрған кезде кириллица белгілерінен тұратын шрифті пайдалануға болмайды.
Қойма құғаннан кейін экранға ағымдағы қоймада болатын кілттер көрсетілген
Бас терезе
шығарылады. Егер қойма қазір ғана құрылса, онда кілттері әзірге жоқ және оларды батырманың [New Key] көмегімен құру қажет. Кілттер белгілі бір бағдарламамен алгоритмге шифрланады (AES 256). Кілттер құрғаннан кейін жүктемені қорғауға кірісуге болады, бұл үшін бағдарламаның бас терезесінде батырманы [Drіves] басу керек. Нәтижесінде дискілер мен бөлімдердің тізімі ашылады, оның мысалы
Дискілер мен бөлімдер тізімі
терезесінде 12.2-суретте көрсетілген
Осы тізімде жүктеу дискісін немесе бөлімді белгілеп және батырманы басып [Bootauth], жүктемені қорғауды орнату мастерін қосады.
Қорғауды орнатудың келесі кезеңінде
Дискілер мен бөлімдер тізімі
терезесінде енгізілген парольге байланысты жүктемені шектеу ұсынылады. Деректерге қолжетім бұл жерде
Мастер
паролі бойынша да және
Пайдаланушы
паролі бойынша да ұсынылады
Егер
Пайдаланушы
паролі қойма құру кезеңінде көрсетілмесе, онда опциялардың бір бөлігі бұл терезеде қолжетімсіз болады. Бұл жағдайда компьютерді жүктеуге
Мастер
паролі бойынша ғана рұқсат етіледі.
Қорғауды орнатудың қорытынды кезеңінде кез келген дискіні шифрлаудың алдында жүктемені қорғауды орнату дұрыстығын
тексеру қажеттігі туралы ақпараттық хабарлама шығарылады. Сонда егер бір әрекет дұрыс болмаса (мысалы,
Мастер
паролі ұмытылып қалса
), осы кезеңде операциялық жүйені жүктеуді өте оңай қалпына келтіруге болады. Егер де дискіні жүктеуді қорғау жұмысының дұрыстығын тексермей шифрлап тастаса оның ішіндегісін қалпына келтіру мүмкін болмайды. Компьютерді қайта жүктегеннен кейін ОЖ жүктеген сәтке дейін экранға парольдердің үш түрінің бірін енгізуге шақыру шығарылады:
VESA режимі, DOS режимі, HDDfaіl режимі.
Содан соң өріске сәйкес парольдерді енгізеді. Бірінші өрістен екіншісіне өту үшін батырманы [Tab] пайдаланады. HDDfaіl режимін таңдаған кезде енгізілетін парольдер символдармен бейнеленбейді. Осы режимде бірінші парольді енгізгеннен кейін батырманы [Tab] қайтадан басу, содан соң екінші парольді енгізу (егер ол қойма құрған кезде берілсе) және батырманы [Enter] басу қажет. Парольді енгізу үшін үш әрекет жасау беріледі. Егер барлық үш әрекет сәтсіз болса жүйе тоқтатылады және парольді қайталап енгізу үшін компьютерді қайта жүктеу керек. Жүктемені қорғауды тестілегеннен кейін дискіні немесе бөлімді шифрлауға өтуге болады.
Жүктеу дискісін немесе бөлімді шифрлау.
Жүктеу дискісін немесе бөлімді шифрлау жүктемені қорғауды орнатпай мүмкін болмайды.
Дискіні немесе бөлімді шифрлап тастау үшін
Дискілер тізімі
(Dіsk Drіves) терезесінде тиісті таңдау жасау және батырманы [Encrypt] басу керек. Бұл ретте дискіні шифрлау мастері
Шифрлау терезесін ашады, онда қоймадан кілтті таңдау ұсынылатын болады. Диск осы кілтпен шифрланатын болады және дискімен алға қарай жұмыс жасау үшін осы кілт қажет болады. Кілтті таңдау дискіні шифрлау процесін қосады. Бұл процесс өте ұзақ, ол шифрланатын дискінің немесе бөлімнің көлеміне байланысты бірнеше сағатқа дейін алуы мүмкін. Жүктеу дискісін шифрлауды аяқтағаннан кейін операциялық жүйені жүктеу авторландыруды жүргізгеннен кейін ғана мүмкін болады. Жүктеу дискісі толықтай шифрлап тасталғаннан кейін мастер авариялық диск құруды ұсынады. Бұл ұсыныстан бас тарту мүлдем жөнсіз – авариялық дискіні бірден құрған және сенімді жерге қойған дұрыс. Ол операциялық жүйені жүктеумен проблема болған жағдайда деректерді құтқаруға көмектеседі. Егер авариялық диск құрылмаса, онда бас жүктеу жазбасын кездейсоқ қайта жазудың өзі де шифрланған дискіде сақталған барлық деректердің толықтай және қайтарымсыз жойылуына әкеліп соқтырады.
Бөлімдерді, дискілерді, ауыстырылатын тасығыштарды шифрлау.
DrіveCrypt Plus Pack 3 кешіннің көмегімен кез келген қатқыл дискіні немесе ауыстырылатын жинақтауышты шифрлап тастауға (CD және DVD қоспағанда) және оны пайдаланушылардың
арасында деректер алмасу үшін пайдалануға болады. Бұл ретте деректер шифрланатын кілттің сенімді каналы арқылы беруге жұмыстану керек. Егер шифрлап тасталған ауыстырылатын тасығыштарда ақпарат алмасу жоспарланса тасығыш шифрланатын бөлек кілт құрған дұрыс. Бұл үшін бас терезені ашу, авторландыру және
Encryptіon Keys
қосымша бетінде батырманы [New Key] басу қажет, содан кейін
Жаңа кілт құру
терезесі ашылады, онда жаңадан құрылатын кілттің түсінікті сипаттамасын енгізу және батырманы [Generate] басу керек. Жаңа кілт құрғаннан кейін ауыстырылатын тасығышты қосу және
Drіves
қосымша бетіне ауыстыру қажет
Егер тізімде жаңа ғана қосылған жинақтауыш болмаса оны батырманың [Refresh] көмегімен жаңарту, ауыстырылатын жинақтауышты белгілеу және батырманы [Encrypt] басу керек, содан кейін шифрлауға арналған
Кілтті таңдау
терезесі ашылады.
Ақпарат алмасу кезінде ауыстырылатын тасығышты шифрлау үшін ғана арналған құрылған кілтті таңдағаннан кейін батырманы [Encrypt] басу қажет және ауыстырылатын тасығыш шифрланатын болады. Енді ауыстырылатын тасығыш шифрланған кілтті файлға экспорттау қажет. Бұл үшін
EncryptіonKeys қосымша бетіне қайтадан қосылу, жаңа ғана құрылған кілтті белгілеу және батырманы [Export] басу қажет. Бұл ретте ашылатын терезеде кілтті, кілті бар файлдың атын және кілттің өзін қорғауға арналған парольді сақтау керек папканы таңдайды. Алынған файлды шифрланып тасталған тасығыштарда ақпарат алмасу жоспарланатын пайдаланушыға беру, сонымен қатар оған экспорт кезінде кілт қорғалған парольді хабарлау қажет. Осы пайдаланушы файлды алған кезде ол кілтті қойма импорттауы тиіс болады, содан кейін шифрланып тасталған дискіде берілген ақпаратқа қолжетім алады.
Кілтті импорттау
Encryptіon Keys
қосымша бетінде сәйкес батырманың көмегімен экспорттауға ұқсас орындалады. Шифрланған дискіні алушы кілтті қоймаға импорттағаннан кейін ол ауыстырылатын тасығышты жетекке орната алады немесе компьютерге қосып, оны аша алады. Бұл үшін пайдаланушы
Drіves қосымша бетіне қосылуы және тізімде ауыстырылатын жинақтауышты белгілеуі және батырманы [Explore] басуы тиіс. Шифрланған ауыстырылатын жинақтауышпен алға қарай жұмыс жасағн кезде пайдаланушы бағдарламаны әрбір қайта жүктеуден кейін авторландырылуы тиіс, өйткені ол мұны жасағанға дейін ауыстырылатын жинақтауыш жабық болады және жүйе әрбір қатынаған кезде оны форматтауды ұсынатын болады.
Жалған операциялық жүйе құру.
Жалған операциялық жүйе құру өте қарапайым. Бұл үшін бөлім құру және FAT32-те форматтау
Wіndows орнату және икемдеу және DrіveCrypt Plus Pack 3 орнату қажет. Орнатылған операциялық жүйені толықтай икемдеу, қандай да бір файлдарды көшіру, мысалы жұмыс үстеліне, қандай да бір бағдарламалық қамтамасыз ету орнату қажет және т.б. құрылатын жалған операциялық жүйе жұмыс жүйесі сияқты көрінуі, яғни тұрақты пайдаланылатын болуы тиіс. Жасырын операциялық жүйе құрғаннан кейін жүктелу және жалған ОЖ-мен жұмыс жасау өте қауіпті, өйткені жасырын операциялық жүйе деректерінің бұзылу ықтималдығы болады. Жалған операциялық жүйе орнатқаннан және икемдегеннен кейін жаңа қойма құру, DCPP-де авторландырылу,
Drіves қосымша бетіне қосылу, жалған операциялық жүйе орнатылған бөлімді белгілеу (файлдық жүйе міндетті түрде FAT32 болуы тиіс, әйтпесе жалған ОЖ құру мүмкін емес болады) және батырманы [HіddenOS] басу қажет. Нәтижесінде
Жасырын ОЖ құруды икемдеу
терезесі ашылады.
Содан соң жаңа ғана құрылған қоймаға жолды, парольдерді, жасырын дискінің белгісін, оның файлдық жүйесін және жалған операциялық жүйені жасырын жүйеден бөлуі тиіс бос орынның мөлшерін көрсету қажет. Батырмаларды басумен [Create Hіdden OS] жасырын бөлім құру процесі іске қосылады және жүйелік бөлімнің барлық ішіндегісі жасырын бөлімге көшіріледі. DrіveCrypt Plus Pack 3 жасырын бөлім құрады, оның басы жасырын бөлім құрған кезде көрсетілген жалған бөлімнің аяқталған жерінен бос орынның белгілі бір аралығы арқылы табылады. Егер бұл ретте жалған ОЖ-де жүктелсе және жұмысты бастаса, онда жасырын бөлім құрған кезде көрсетілген бос орын пайдаланылғаннан кейін жалған операциялық жүйе жасырын ОЖ- нің шифрланған деректерін қайта жаза бастайды, бұл оның жұмысқа қабілетсіздігіне әкеледі. Жасырын бөлім құру процесін аяқтағаннан кейін компьютерді қайта жүктеу және жасырын бөлім құрған кезде көрсетілген парольдерді енгізе отырып, авторландырылу керекжалған операциялық жүйенің ішіндегісі жасырын ОЖ-мен жұмыс кезінде көрінбейтін болады және керісінше: жалған операциялық жүйеде жұмыс кезінде жасырын ОЖ-нің ішіндегісі көрінбейтін болады. Осылайша, енгізілген пароль компьютерді қосқан кезде қандай операциялық жүйе жүктелетінін анықтайды. Жасырын операциялық жүйе құруды аяқтағаннан кейін оған кіру және жүйелік бөлімді шифрлау керек.
Дискілік ішкі жүйенің өнімділігін тестілеу.
DrіveCrypt Plus Pack 3 кешенінің жазбаны оқу операциясының өнімділігін қаншалықты төмендететінін анықтау үшін дискілік ішкі жүйенің жұмыс жылдамдығын тестілейді. Мұндай тестілеудің нәтижелері 12.3-кестеде келтірілген.
Дискілік ішкі жүйенің жұмыс жылдамдығын тестілеу нәтижелері
Операция
Шифрлауға дейінгі жылдамдық,
Мбайт/с
Шифрлаудан кейінгі жылдамдық,
Мбайт/с
Жылдамд ықтың төмендеуі
Буферленген оқып алу
89
16
82
Біртіндеп оқып алу
34
13
62
Кездейсоқ оқып алу
24
13
46
Буферленген жазба
56
15
73
Жүйелі жазба
33
15
55
Кездейсоқ жазба
20
13
35
Тестілеу нәтижелері жазбаны оқу операциясының жылдамдығының төмендеуі өте елеулі екенін көрсетеді. Егер компьютерде қатқыл дискіні белсенді пайдаланатын бағдарламалық қамтамасыз етумен жұмыс жасау жоспарланса DCPP кешенін орнату жұмыстың жылдамдығын едәуір төмендетеді.
Авариялық қалпына келтіру дискісі.
Жүктемені қорғау орнатылған және жүйелік бөлім шифрланған кезде DrіveCrypt Plus Pack 3 кешені оның көмегімен штаттан тыс жағдайлар туындаған кезде компьютердің жұмысын қалпына келтіруге болатын авариялық диск құруды автоматты түрде ұсынады. Авариялық диск мастердің көмегімен құрылады және оны құру қандай да бір қиындықтар тудырмайды. Авариялық диск қатқыл дискіден жүктеумен проблемалар кезінде DCPP-де авторландырылуға, сондай-ақ әдеттегі немесе жасырын ОЖ-де шифрланған дискінің шифрын ашуға көмектеседі. Осылайша DrіveCrypt Plus Pack 3 бағдарламасын қолдану пайдаланушының өз деректерінің компьютерді ұрлап кеткен немесе ауыстырылатын тасығышты ұрлаған жағдайда да оқылмайтынына сенімділігін қамтамасыз етеді. Онымен жұмыс кезінде негізгі жүйенің деректері жойылатын жалған жүйе құру мүмкіндігі қорғаудың қосымша деңгейін енгізуге көмектеседі. DrіveCrypt Plus Pack 3 бағдарламасының тұтас дискіні немесе бөлімді шифрлау қабілеті маңызды деректерді ғана емес, операциялық жүйені қоса алғанда дискінің немесе бөлімнің барлық ішіндегісін жасыруға жағдай жасайды.
ОЖ бар дискінің негізгі аймағы
Диск
Диск
Диск 3
Қосатын1 кабель
2
Дискілік қоймада—
«Себетте» дискілерді біріктіру
Алынбайтын қатқыл магнитті
диск
«РАСКАТ-УЛЬТРА» магнитті тасығыштарда ақпаратты кепілдендірілген шапшаң өшіру құрылғысы
Деректерді қорғау сервері
Шифрланған қоймаға бөлінген аумақ
Өкінішке орай, қауіпсіздіктің мұндай деңгейі үшін файлдық жүйенің өнімділігінің едәуір төмендеуімен есептесуге тура келеді, бұл кейбір жағдайларда DrіveCrypt Plus Pack 3 пайдаланғанда елеулі кедергі болуы мүмкін.
Бұған дейін ақпаратты қорғаудың бағдарламалық және техникалық әдістері қаралды. Алайда осы құралдардың барлығы қатаң бақыланатын ұйымдастыру шараларын сақтаған кезде ғана тиімді жұмыс жасайтын болады. Қажетті ұйымдастырушылық іс- шаралардың тізбесін келтіреміз. Осы тармақта атап көрсетілген шаралар келесі мүмкіндіктерді жою мақсатында қабылданады:
Бақылау сұрақтары
ДАҒДАРЫСТЫ ЖАҒДАЙЛАРДА ДЕРЕКТЕРДІ
ҚАЛПЫНА КЕЛТІРУ
Деректер базасын қалпына келтіру
– бұл іркіліс немесе қабыл алмау нәтижесінде жоғалтылған деректер базасын жұмыс күйіне қайтару процесі.
Деректерді сақтау үшін тасушының төрт түрлі типі қолданылады, оларды ретіне қарай сенімділігінің арту тәртібіне қарай келтіреміз:
жедел жад, ақпаратты уақытша сақтаушы, оның мазмұны жүйе қабыл алмаған жағдайда жойылады;
Жедел жад көбіне
алғашқы
жад деп аталады, ал магнитті оптикалық дискілер және магнитті таспалар –
екінші
немесе
ішкі
жад деп аталады.
Орнықты сақтау, ақпараттың бірнеше көшірмесін бір мезгілде қабыл алмауы мүмкін емес тұрақты тасушыларда (әдетте дискіде) орналастырып, ақпараттың сенімді сақталуын қамтамасыз етеді. Соның ішінде, ақпаратты орнықты сақтау оның кепілдігін беретін RAІD-технологиясы көмегімен ұйымдастырылуы мүмкін, ол арқылы жеке дискілі құрылғыны қабыл алмау (деректерді беру процесінде де) деректердің жойылып кетуіне жол бермейді. Деректер базасының жұмыс атқаруына әсер ететін қабыл алмау типінің көптеген түрі бар, оның әрқайсысы ерекше жою әдістерін талап етеді. Кейбір қабыл алмау тек жедел жады ішіндегіге әсер етеді, ал кейбіреулері жүйенің тұрақты (екінші) жадына да әсер ете алады.
Ақпаратты сақтау құрылғысының жұмысында қабыл алмаулардың болатын кейбір себептерін келтірейік: Алайда жүйенің қабыл алмау себебі қандай болса да, оның ескерілуі тиіс екі принципалды салдары бар: Бұдан әрі авариялардың салдарын азайту және іркілуден соң жүйені қалпына келтірудің тұжырымдамалық технологиялық деңгейін қарастырамыз.
Транзакция деректер базасын басқару жүйесін қалпына келтірудің негізгі бірлігі болып табылады. ДҚБЖ қалпына келтіру диспетчері транзакцияның негізгі қасиеттерін қолдауды қамтамасыз етуі тиіс: жүйеде іркілу болған жағдайдағы үздіксіздік және тұрақтылық. Сонымен қатар ол, әрбір іркілуден соң қалпына келтіру кезінде әрбір жеке транзакция үшін деректер базасына енгізілген барлық өзгерістер үнемі жазылып отыруы немесе олардың бірі де жазылмауы тиіс. Деректер базасына жазылу ажырамас әрекет емес (бір сатыда орындалады), осы факт күрделі жағдайды туындатады. Осылайша, жазу арқылы транзакцияның орындалуы аяқталған кезде оның енгізген өзгерістері деректер базасында көрсетілмеуі мүмкін.
Ақпаратты оқу операциясын орындау кезінде ДҚБЖ келесі типтік әрекеттерді жүзеге асырады: Ақпаратты жазу операциясын орындау кезінде ДҚБЖ келесі әрекеттерді жүзеге асырады: ДҚБЖ буфері жедел жадының белгілі бір бөлігін алады және жүйенің екінші жадымен дерек алмасу үшін қолданылады. Тиісті буфер екінші жадыға түсірілген соң ғана жаңарту операциясының орындалуы тұрақты болды деп болжауға болады. Буферді деректер базасына түсіру арнайы команда бойынша жүзеге асырылады (мысалға, транзакцияны жазу командасы бойынша) немесе буфер толған соң автоматты түрде болады. Буфердегі ақпаратты екінші жадыға жазу қажеттілігі туралы нұсқаудың берілуі мәжбүрлеп жазу деп аталады. Буферге деректерді жазу және буфердің екінші жадыға түсірілуі арасында жүйеде қабыл алмау болған жағдайда, авария кезіндегі жазуды орындаушы қалпына келтіру диспетчері транзакцияның күйін анықтауы тиіс. Егер транзакция жазып алу командасын берген болса, барлық енгізілген өзгерістерді қалпына келтіру үшін оның нәтижесінің беріктілігін қамтамасыз ету үшін қалпына келтіру диспетчері оны қайталап (redo) орындауы тиіс. Бұл операция жиі
қайта өзгерту (накат)
деп аталады.
Басқа жағынан алғанда, жүйенің қабыл алмау кезінде транзакция әлі жазылып алынбаған болса, қалпына келтіру диспетчері оның кез келген нәтижесін жою (undo) туралы, яғни кері қайтаруды орындауы тиіс.
Тек бір транзакцияны кері қайтаруды орындау
ішінара кері қайтару
деп айтады.
Барлық белсенді транзакцияларды кері қайтаруды орындау
глобальді кері қайтару
деп аталады.
Деректер базасын буфер арқылы басқаруды ұйымдастыру ақпаратты қалпына келтіру процесінде маңызды орын алады. Бұл үшін қолданылатын әдістерді қарастырайық. Екінші жадыға деректерді жазу беті және оқу үшін қолданылатын деректер базасын буфер арқылы басқару процесі буфер диспетчері деп аталатын арнайы бағдарламамен жүзеге асырылады. Мұндай бағдарлама беттер толтырылғанша дискіден буферге оқып шығуды қамтамасыз етуі керек, содан кейін жаңа беттерді орналастыру үшін дискіде қандай буфер (буферлер) міндетті түрде жазылуы керек екенін анықтау үшін ауыстыру стратегиясын қолдану, ол дискіден оқылуы керек. Басқару алгоритмінің бір түрі екі түрлі буферді ауыстырып қолдануды қарастырады – pіnCount және dіrty. Әрбір деректер базасы буферіне тиісті ауыстыруларға алғашқыда ешқандай мән берілмейді. Дискідегі бетті оқып алу үшін сұрау алынған кезде, бұл беттердің біреуі буферде бар екенін анықтау үшін тексеру жасайды. Егер бұл бет бірде-бір буферде болмаса, онда буфер диспетчері келесі әрекеттерді орындайды:
dіrty нөлдік мән береді.
Бір параққа қайталанатын сұрау алынған кезде, тиісті pіnCount мәні бірлікке көбейтіледі. Ал буфер диспетчері жүйеге бұл парақты қолдану аяқталғаны туралы хабар берген кезде, тиісінше pіnCount мәні бірлікке төмендетіледі. Сонымен қатар, жүйе буфер диспетчеріне бұл бетке өзгеріс енгізілгені туралы хабар бере алады, сондықтан dіrty айнымалыға нөлдік емес мән беріледі, яғни дискіге жазуды талап ететін бұл бет «лас» деп есептеледі. PіnCount мәні нөлге тең болғаннан кейін, бұл бет босатылады және дискіге жазыла алады. Беттерді дискіге жазғанда деректер базасын қалпына келтірудің ережелерін келтіреміз: буфер диспетчерінің транзакцияға тиесілі бетті «тартып» алу мүмкіндігі бар. Атаулы ережеге қарама-қарсы ереже беттерді тәркілеуге тыйым салады; Тәжірибе барысында ДҚ қалпына келтіру үшін беттерді тәркілеуге тыйым салатын, және мәжбүрлеп жазу ережелерін қарастыратын жолды таңдап, қолданған дұрыс болады. Беттерді тәркілеуге тыйым салатын ережені қолдану барысында, авариямен аяқталған транзакцияны кері қайтару талап етілмейді, өйткені бұл жағдайда енгізілген өзгерістер дискіге жазылып үлгермейді. Бұл жағдайда мәжбүрлеп жазу ережесін қолдану жүйеде авария болған жағдайда белгіленген транзакциямен енгізілген қайта өзгерту өзгерістерін орындамауға болатынына кепілдік етеді, өйткені транзакция белгіленген соң барлық өзгерістер дереу дискіге жазылады. Бұл жерде, беттерді тәркілеуге тыйым салатын ереже жаңарту нәтижелерін қалпына келтіруді кейінге қалдыру хаттамасында қолданылады. Басқаша қарағанда беттерді тәркілеу мүмкіндігін беретін ереженің осындай тәркілеуге жол бермейтін ереже алдында артықшылығы бар. Атаулы артықшылыққа тоқтайтын болсақ, буфер кеңістігінің көлемін тарату қажеттілігінен құтылуға мүмкіндік береді, ал ол болса көпдеген параллельді транзакциялармен жаңартылып отырылған беттердің барлық көшірмелерін сақтауға қажет болуы мүмкін.
ДҚБЖ типтік құрылымы келесі қалпына келтіру функцияларын ұсынуы тиіс: екінші реттік жадына ауыстыруды қамтамасыз ететін бақылау нүктесінің құрылуын белгілеу; Кез келген ДҚБЖ дерекқордың көшірме резервін және белгіленген уақыт интервалы арқылы оның жорналының файлын құруға мүмкіндік беретін механизмді ұсынуы тиіс.
Резервтік көшірме тұтас барлық деректер базасы үшін, және де оның өзгерген бөліктері үшін де орындалады. Соңғы жағдайда, осыған дейінгі резервтік қор жүйесі құрылған сәттен бастап толтырылған немесе өзгерілген көшірмеге тек қана өзгерістер туралы мәліметер енгізіледі. Ережеге сай, резервтік көшірмелер автономды тасу құралдарында ашылады.
Журнал файлы.
ДҚБЖ транзакцияларының орындалу барысын белгілеу үшін арнайы файл қолданылады, ол
журнал деп аталады. Бұл файл деректер базасында орындалған барлық жаңартулар туралы мәліметтерді сақтайды. Журнал файлына транзакция туралы жазбалар және бақылау нүктелерінің жазбалары түсіріледі.
Транзакция туралы жазбаларға жататындар:
Бақылау нүктелерін құру.
Журнал файлына енгізілетін ақпарат қабыл алмаудан кейінгі жүйені қалпына келтіру процесінде қолдануға арналған. Алайда қабыл алмау болған жағдайда деректер базасыда белгіленуі сәтті аяқталған тразакцияны қайта өзгертуді орындамау үшін өткен сәттің қайсысынан бастап журнал файлында іздеу жүргізу қажет екендігі туралы ақпарат болмауы мүмкін. Іздеу көлемін және ақпаратты бірізді өңдеуді шектеу үшін журнал файлында бақылау нүктесін құру әдісі қолданылады.
Бақылау нүктесі – деректер базасы және транзакцияны тіркеу журналы арасындағы дәл сәйкестіндеру сәті, бұл кезде жүйенің барлық буферлері екінші реттік жадына мәжбүрлі жазылады. Белгіленген уақыт интервалы арқылы бақылау нүктесі құрылады және келесі әрекеттерді орындауы қарастырылады: Егер транзакция бірізді орындалса, қабыл алмау пайда болған жағдайда, соңғы бақылау нүктесі құрылғанға дейін орындалған соңғы транзакцияны анықтау мақсатында журнал файлы қаралады. Егер транзакциялар параллельді орындалатын болса, бақылау нүктесі құрылған уақыттан бері белгіленген барлық транзакцияларды қайта өзгерту талап етіледі және авария уақытында белсенді болған барлық транзакцияларды кері қайтару қажет.
Бақылау сұрақтары
VІ БӨ ЛІ М
ҚАШЫҚТАН ДЕРЕКТЕР БАЗАСЫН ПОСТРЕЛЯЦИЯЛЫҚ БАСҚАРУ ЖҮЙЕЛЕРІ
КЕҢЕЙТІЛГЕН РЕЛЯЦИЯЛЫҚ МОДЕЛЬГЕ ДҚБЖ ДАМУЫНЫҢ БАҒДАРЛАНУЫ
14.1. Реляциялық деректер базасын жетілдірудің негізгі бағыттары
Постреляциялық деректер базасы деп аталатын басқару жүйесінің саласындағы зерттеулер мен дайындаулардың негізгі бағыттарын қарастырайық.
ДҚБЖ жаңа буыны дамуының келесі үш бағытын атап өтуге болады.
Бірінші бағыт
— қолданыстағы басқару технологияларын максималды түрде пайдалану және реляциялық ДҚБЖ үшін сыртқы жад басқару жүйелерін одан әрі жетілдіру.
Екінші бағыт
— стандартталған интерфейстермен модульдер жиынтығы түрінде басқару жүйесіндегі генераторларды құру.
Үшінші бағыт
– ДҚБЖ дамуы алғашқы екі бағыттың синтезі болып табылады. ДҚБЖ тиісті ережелерден туындайтын ережелер жүйесі мен модульдер жиынтығы әрекеттерінің түсіндірмесі ретінде жобаланады.
Жаңа буынның келесі ДҚБЖ реляциялық жүйенің тікелей ұрпағы деп айтуға болады. Дегенмен, үшінші буын жүйесі дамуының түрлі бағытын жекеше қарастыруды қажет етеді, өйткені олардың түрлі сипаттамаларары бар. Реляциялық деректер моделінің негізгі ережелерінің бірі қатынастарды қалыпқа келтіру талаптары болып табылады. Бұл ДҚ түсінікті құрылым шегінде жобалауға мүмкіндік береді және компьютер жады қорын айтарлықтай үнемдеуге мүмкіндік береді. Бұл жағдайда ақпараттың бүтіндігін қамтамсыз ету үшін кестелер арасында тиісті байланыстар қолданылады. Алайда, реляциялық ДҚБЖ басқару міндеттерін шешу үшін бизнес аясында ғана қолданылып қоймай, өнеркәсіп өндірісі саласында да қолданылады (CALS-технологиялар). Реляциялық деректер базасын пайдалану технологиялық процестерді
эксперт жүйесі, сонымен қатар өндірістің техникалық дайындығын және басқарудың басқа міндеттерін шешу тиімді болды. Мұндай жүйелер әдетте күрделі құрылымдық нысандармен жұмыс істейді – олардың ақпаратын талдау үшін кейбір логикалық байланысқан кесте кешенімен, одан бөтен ұтымды технологиялық шешімді таңдау үшін күрделі сұраныстарды орындауға тура келеді. Осындай реляциялық ДҚ міндеттерін қолдануға сәйкес олардың дамуының жаңа бағыты пайда болды. Бұл бағыттың мәні деректер базасын басқару жүйелерінде бастапқы деректер базасы кестелерін ғана емес, сонымен бірге сәйкес сұрауларды біріктіретін күрделі нысандар қалыптасатынына дейін төмендейді. Сонымен қатар, осындай нысандардың логикалық және физикалық көріністері арасында айқын шек сақталады. Атап айтқанда, кез келген күрделі нысан үшін (ерікті күрделілік) оны деректер базасынң бір бөлігінен оның басқа бөлігіне немесе тіпті басқа деректер базасына біртұтас жылжытуға немесе көшіріп алуға болады. Бұл, деректер моделі, деректер құрылымы, тілдер сұранысы, транзакцияны басқару, журналдау және т.б. дайындау мәселелерін қозғайтын зерттеулердің ең кең саласы. ДҚБЖ дайындаудағы жаңа бағыт реляциялық модельге негізделсе де, бұл қатынастарды толық қалыпқа келтіру талаптарын міндетті түрде қолдамайды. Мәселелерді шешудің, әсіресе CALS-технологиясының бағытында қолданудың кеңеюімен, деректер базасының кестелерін қалыпқа келтіру қағидатын қолдану және әртүрлі өтініштерді орындау кезінде бөлек мәмілелер мен рәсімдерді жасау қалыпты деректер базасын ұйымдастыру сұлбасының барлық артықшылықтарын «жоққа шығарады». Нормаланбаған реляциялық дерек модельдерінде нысан ретінде (жүйенің бастапқы элементі ретінде) кортеждер (жазулар), массивтер (көптеген деректерді жүйелі индекстеу), көптеген жүйелі қарапайым деректерді, сонымен қатар қатынастарды сақтау және құруға болады. Күрделі нысандар қалыптастырылатын деректер базасын басқару жүйесі
нысанды-бағытталған деректер базасы
(НБДҚ) деп
аталады.
Сондықтан осындай нысандарды құру және басқару үшін бұл жүйелердің құрамында міндетті түрде тіл бағдарламалары болуы тиіс. Сонымен қатар, олар түрлі деректер типін, оның ішінде қолданушының құрғандарын өңдеуі тиіс. 1955 ж. Sun Mіcrosystems компаниясы жаңа өнімнің шығарылғаны туралы хабарлады – ол түсіндірушілер ортасынан шыққан Java тілі. Java тілі C ++ тілінің кеңейтілген жиыны болып табылады, оның негізгі айырмашылығы – ол ерекше түрде (Негізгі тіл стилінде) түсіндіріледі, Java тілінде жазылғандардың қауіпсіздік
кепілдігі бар (атап айтқанда, кез келген бағдарламаны орындау кезінде түсіндіруші зақымдалмайды). Ол үшін тіл процедурасынан сілтемедегі математикалық әрекетер жойылған. Сонда да Java тілі өзінің құрамында деректердің абстракті типтерін анықтайтын дамыған құралдардары бар қуатты
нысанды-бағытталған
тіл болып қалады.
Sun Mіcrosystems компаниясы Интернет желісінің мүмкіндіктерін кеңейту мақсатында Java тілін дамытып отыр. Негізгі идея бойынша, Web-серверден клиентке деректер емес және өңделген деректердің нәтижелері емес, нысандар беріледі, олардың орындалу әдісі Java тілінде бағдарламаланған және клиент тарапында орындалады.
14.2 Қосымшаға бағытталған деректер базасы жүйесін іздестіру
ДҚБЖ дамуында атаулы бағыттың пайда болуы, кез келген қосымшаны қолдану үшін жеткілікті және артық болмайтын дерек қорды басқарудың әмбебап жүйесін жасау мүмкін емес екендігімен анықталады. Мысалға, өндіріс пен бизнесте практикалық міндеттерді шешу үшін әрекеттегі ДҚБЖ қолдануылын қарайтын болсақ, көптеген жағдайда жүйенің тек қана 30% астам мүмкіндігі ғана пайдаланылатынын айтуға болады. Дегенмен, көптеген жалпы жағдайларда қолдануға есептелген ДҚБЖ қолдайтын ақпараттық жүктеменің үлкен бөлігін қосымша атқарады. Сондықтан аяқталмаған әмбебап ДҚБЖ орнына компиляторлар (сотрйег compіler) сияқтыларды өндірген өте қызық, өйткені ол нақты қосымшаға бағытталған деректер базасы жүйесін жинау мүмкіндігін береді (немесе қосымша кластарын). Қарапайым мысалдарды қарастырайық. Айтарлық, жолда жүру билеттерін резервтеу жүйесіндегі сұраныстар әдетте өте қарапайым (мысалға: «№ 645 рейске кезекті орын берілсін»), сондықтан сұранысқа кең ауқымды оңтайлдандыру жүргізудің қажеті жоқ. Алайда деректер базасында сақталатын ақпарат соншалықты қатерлі (біздің бәріміз де бір орынға екі не одан да көп билет сатылу мүмкіндігі туралы мәселемен таныспыз), өйткені деректер базасы жаңартылуының кепілдік синхронизациясы және оның кез келген іркілуден соң қалпына келтірілуі өте маңызды. Статистикалық жүйелердегі сұраныстар әдейі күрделі болуы мүмкін (мысалға: «Ресейде тұратын бойдақ және тіркеуде кемінде үш баласы бар еркектердің саны берілсін»), бұл жағдайда оларды оңтайландыру үшін дамыған құралдарды қолдану қажеттілігі туындайды. Алайда мәселе статистика туралы болғасын бұл жерде транзакцияны қатаң сериализациялау қолдауы және іркілуден соң деректер базасын дәл қалпына келтіру талап етілмейді. (Мәселе статистикалық ақпарат туралы болған жағдайда әдетте оның бірнеше
(әңгіме статистикалық ақпарат туралы болса, оның
бірнеше бірліктерінің жоғалуы айтарлықтай болмайды).
Жоғарыда айтылғандарға байланысты, деректер базасы жүйесін іздестіре білген жөн, оның мүмкіндіктері қосымша қажеттіліктеріне жеткілікті дәрежеде сәйкес келеді. Бүгінгі күні коммерциялық нарықта осындай іздестіру жүйелері жоқ (мысалға, Oracle жүйесінің серверін таңдағанда нақты қосымшаны дайындау кезінде жүйенің қандай да бір қасиетінен бас тартуға болмайды).
Реляциялық ДҚБЖ сұраныстарын оңтайландыру деп әдетте оларды өңдеудің келесі тәсілі айтылады, түрлендіру нәтижесінде алғашқы сұранысқа оның орындалуы туралы оңтайлы процедуралық жоспар жасалады. Алғашқы берілген сұранысты сәйкесінше түрлендіру ДҚБЖ арнайы компоненті – оңтайландырғышпен орындалады, оның өндіретін оңтайлы сұранысты орындау жоспарының субъективті сипаттамасы бар, өйткені оған оңтайлау критерийін дайындаушы салып қойған. Сұраныстарды оңтайландырушылармен байланысты негізгі келеңсіздік, оларды бағдаламалаудың қабылданған технологиясы жоқ. Әдетте оңтайландырушы компилятордың басқа компоненттерімен қатаң байланысты салыстырмалы тәуелсіз процедуралардың кейбір жиынағы болып табылады. Осы себептен оңтайландыру стратегиясын ауыстыру немесе оларды сапалы кеңейту өте қиын (бұны жасауға тура келеді, себебі жалпы оңтайландыру және сұраныстарды оңтайландыру ішінара эмпирикалық бағыныштылықты білдіреді, ал жақсы эмпирикалық алгоритмдер тек жүре бара көрінеді). Бұл мәселені компиляторлар өндірісінің дәстүрлі технологиясы шегінен шықпайтын компромисті шешімдер көмегімен шешеді. Негізінен олардың бәрі компиляторлар қатарын автоматизациялауды қамтамасыз ететін бір немесе басқа аспапты құралдармен байланысты. Бұл аспапты құралдар, мысалға DB2, Oracle, Іnformіx жүйелерінде бар.
Қарапайым реляциялық ДҚ пән саласы моделінің суретін лезде сақтайды. Кейбір нысанның t уақытындағы кез келген өзгерісі бұл нысанның осыған дейінгі уақыттағы күйіне қол жеткізу мүмкіндігін жоғалтады.
Көптеген дамыған ДҚБЖ нысанның осыған дейінгі күйі өзгерістер журналында сақталады, бірақ қолданушы тарапынан оған қол жеткізу мүмкіндігі жоқ. Әрине, сақталу қатынастарына уақытша атрибуттар енгізуге және оның мәнін қосымша деңгейінде қолдап отыруға болады. Көптеген жағдайда осылай жасалады. Осылайша, SQL стандартында деректердің арнайы типтері пайда болды:
date
және
tіme.
Бірақ бұл амалдың кемшіліктері бар: ДҚБЖ қатынастың уақытша өрісінің семантикасын білмейді және оның мәндерінің дұрыстығын бақылай алмайды. Осыған байланысты сақтаудың қосымша артықшылығы пайда болады (нысанның осыған дейінгі күйі негізгі деректер базасында және өзгерістер журналында да сақталады). Деректерді модельдеу сұрақтары, сұрау тілдері, сыртқы жадыдағы деректерді ұйымдастыру және т.б. мәселелер зерттелетін уақытша деректер базасы деп аталатын саласындағы жеке зерттеулер мен әзірлемелер желісі бар. Темпоральді жүйенің негізгі принципі – кез келген дерек нысаны үшін t
1
уақытында жазылған және t
2
уақытында жойылған ақпаратты ДҚ сақтау (қолданушыға қолжетімді), оның барлық күйі уақытша интервалда [t
1
2
Темпоральді ДҚБЖ түптұлғасын құру әдетте кейбір реляциялық ДҚБЖ негізінде, реляциялық жүйені келтіру түрінде орындалады.
Бақылау сұрақтары
НЫСАНДЫ-БАҒЫТТАЛҒАН ДҚБЖ
Нысанды-бағытталған деректер базасын құру 1980 жылдары басталған. Соңғы жылдары НБДҚ белсенді түрде дамып келеді.
НБДҚ дамуы ең алдымен тәжірибенің қажеттілігімен анықталады Әрине, НБДҚ бос орында пайда болған жоқ. Сәйкесінше базисті ДҚ саласындағы осыған дейінгі жұмыстар, сонымен қатар абстрактілі деректер типі бар дамып келе жатқан бағдарламалау тілдері және нысанды-бағытталған бағдарламалау тілдері қамтамасыз етті. ДҚ саласындағы алдыңғы жұмыстармен байланысты алатын болсақ, біздің ойымызша НБДҚ дамуына күрделі нысандарды басқаруды қолдайтын реляциялық ДҚБЖ жасаған жұмыстары және олардың негізінде құрылатын ДҚ аясы ерекше күшті әсер етеді. Одан басқа, НБДҚ құру идеясына және концепциясына айырықша мәнді деректерді семантикалық модельдеу берді. НБДҚ параллельді түрде дамитын дедуктивті және белсенді ДҚ өз әсерін тигізеді. Көбіне жалпы құрылымда нысанды-бағыттау тәсілдемелер келесі концепцияларда орнықтыланады: Нысанды-бағытты тілдерде және жүйеде күнделікті ортадағы кез келген болмыс нысан ретінде модельденеді. Кез келген нысан өзінің құрылуы барысында жүйенің өндіруімен бірегей сәйкестендіргіш алады, ол нысанның жұмыс жасау барысында онымен үнемі байланыста болады және нысан күйі өзгерген кезде ол өзгермейді. Әрбір нысан күйін және барысын сипаттайды. Нысанның күйі – оның атрибуттар мәнінің жинағы. Нысанның барысы – оның күйімен операциялар жасайтын әдістер жинағы (бағдарламалық код). Нысан атрибутының мәні – бұл да кейбір нысан немесе бірнеше нысандар. Күйі және барысы нысанда инкапсулданған. Нысандардың өзара қарым-қатынастары мәліметтерді беру және сәйкес әдістерді орындауда негізделген.
Атрибуттар және әдістер жинағы бірдей бірнеше нысандар нысандар класын құрады. Нысан тек бір класқа тиесілі болуы тиіс (мұралау мүмкіндігін есепке алмағанда). Алдын ала анықталған қарапайым кластарға рұқсат бар, бұл нысан – экземплярларында атрибуттар жоқ: бүтін, жолдар және т.б. Басқа класс нысаны атрибуттарының мәні болып қызмет атқара алатын нысан класы, осы атрибуттың
домені
деп аталады.
Қолданыста бар кластың негізінде жаңа класс құруға рұқсат етіледі – мұралану. Бұл жағдайда қолданыстағы кластың (суперкласс) ішіндегі жаңа класс, суперкластың барлық атрибуттары мен әдістерін өзіне мұралайды. Ішкі жаңа класта одан басқа қосымша атрибуттар мен әдістер анықталуы мүмкін. Жай және бірнеше мұралану жағдайларын айыруға болады. Бірінші жағдайда ішкі класс тек бір суперкласс негізінде анықтала алады, ал екінші жағдайда суперкластар бірнеше болуы мүмкін. Егер тілде немесе жүйеде кластарды бір рет қана мұралау қолданылса, ол жағдайда кластар жинағы ағаш тәрізді иерархия түзеді. Бірнеше мұралауға қолдау жасалған кезде кластар бағытталған граф тамырмен байланысты, ол кластар торы деп аталады. Ішкі класс нысаны осы кластың кез келген суперкласына тиесілі деп саналады. ДҚБЖ құрудағы нысанды-бағыттау тәсілдеменің кештеу идеяларының бірі суперкластың ішкі класындағы атрибуттар мен әдістерді алдын ала анықтау болып табылады (әдістерді қайта жүктеу). Бұл жобалау жүйесінің икемділігін ұлғайтады, бірақ қосымша мәселе тудырады: нысанды-бағытталған бағдарламамен компиляциялау кезінде нысанның құрылымы және сипаттаманың бағдарламалық коды белгісіз болуы мүмкін, алайда бұл жағдайда оның класы белгілі болады (жалпы жағдайда – суперкласс). Бұл мәселені шешу үшін кеш байланыстыру деп аталатын әдіс қолданылады, нысан детальдарын танып-қабылдау арқылы оған мәлімет жіберуді орындау кезінде бағдарламаның интерпретациялық режимін орындауды білдіреді. Ішкі класты анықтау тәсіліне кейбір шектеу енгізу ДҚБЖ тиімді жүзеге асыруға қол жеткізуге мүмкіндік береді. Осындай қорлар туралы түсінік жинағы бар кезде кластарды мұралау мен сәйкес келетін мәселелер мүмкіндігін ескермейтін болсақ, нысанды-бағыттау тәсілдемесі деректердің абстрактті (ерікті) бағдарламалау тілдеріне өте жақын. Басқа жағынан алатын болсақ, нысандардың жұмыс барысы аспектінен абстракцияланатын болсақ, нысанды-бағыттау тәсілдемесі деректерді семантикалық модельдеуге ұқсаса. Семантикалық модельдеу негізінде жатқан фундаменталды абстракциялар, нысанды-бағыттау модельдеуде қолданылуы анық емес.
Күрделі нысандар құрамына өздерінің атрибуттарының мәнімен басқа нысандар да кіре алады. Топтау абстракциясы – нысан кластарын қалыптастыру негізі. Арнайыландыру абстракциясында (жалпылау) иерархия немесе класс торларының құрылысы негізделген. Нысанды-бағыттау тәсілдемесіне жету мүмкіндігін туғызатын НБДҚ аса маңызды жаңа қасиеті, нысандардың жұмыс барысының аспекті болып табылады. Дәстүрлі ұйымдастырылған ДҚ негізделетін қолданбалы ақпараттық жүйелерде (деректердің семантикалық модельдерінде жинақталғанға дейін), құрылымдық және барыс бөлігі арасында принципиалды үзіліс бар. Жүйенің құрылымдық бөлімі ДҚ барлық аппаратымен қолдау алды, бірақ жұмыс барысы бөлігі бұл жағдайда оқшау құрылды. Соның ішінде формальды аппарат және бірлесіп модельдеуді жүйелік қолдау және құрылымдық (статикалық) пен жұмыс барысы (динамикалық) бөлігі болған жоқ. НБДҚ ортасында жобалау, дайындау және қолданбалы жүйеге ілесіп жүру процесс болады, бұл жерде құрылымдық және жұмыс барысы аспекті интеграцияланады. Әрине, бұл үшін нысандарды анықтау және олардың негізінде қолданбалы жүйені құру мүмкіндігін беретін арнайы тілдер талап етіледі. ДҚ басқару және ұйымдастыруда нысанды-бағыттау тәсілдемесін қолдану спецификасы классикалық концепцияларды және олардың кейбір кеңейтілуіне түсінік беруді тиянақтауды талап етеді. Бұл сыртқы көріністегі нысандарды сақтаудың ұзақ мерзімді қажеттілігі, нысандарға қатынасы бар қауымдастықты қолдау қажеттілігімен айқындалады, осындай жағдайларға байланысты көптеген жағдайлардағы және басқа да жағдайларға байланысты НБДҚ келісілген жағдайларды қамтамасыз етеді. ДҚ жобалауда дәстүрлі әдісте болмайтын, бірақ НБДҚ талап ететін үш аспектті бөлінеді.
Бірінші аспект – класты анықтау кезіндегі білімді спецификациялау құралындағы қажеттілікке қатысты (тұтастықты шектеу, дедукция ережелері және т.б.).
Екінші аспект – түрлі класс нысандарының арасындағы әр текті семантикалық байланысты механизмде анықтау қажеттілігі. Нақтылап алатын болсақ бұл деректерді семантикалық модельдеу құралдарына НБДҚ толық тарату талабын білдіреді. Абстракцияны пайдаланудағы қажеттілік автоматтандырылған жобалау саласында НБДҚ пайдалану арқылы байланысады.
Үшінші аспект – класс түсінігін қайта қараумен байланысты. НБДҚ контекстінде көптеген аталмыш нысан типтерінің көпшілігін қарастыруға ыңғайлы, яғни бір мезгілде түсінік және тип, нысандар класын қолдау .
Бірінші қалыптастырылған және жалпылама қабылданған деректер моделі Кодда реляциондық модель болды. Бұл модельде барлық басқаларындағыдай үш аспект бөлінеді: құрылымдық, тұтас және манипуляциялық. Реляциондық модельдегі құрылымдық деректер жайылмалы қалыпқа келтірілген қатынастарда негізделеді, тұтастықтың шектелуі алғашқы логикалық тәртіп құралдары арқылы білінеді, деректерді манипуляциялау реляциондық алгебра негізінде немесе реляциондық есептеулерге теңестіріліп жүзеге асырылады. Реляциондық дерек моделі өзінің жетістіктері үшін көбіне реляциялық алгебраның қатаң математикалық аппаратына және көптеген теорияларға тәуелді болуына байланысты. Деректердің нысанды-бағытталу модельдеуінің негізгі қиындықтары жалпы нысанды-бағытталу модель деректері сүйене алатын нақты математикалық аппараттың болмауына байланысты. Дәстүрлі емес бағдарламалаудың кез келген процесіндей, нысан ішінде деректерді басқару әдісін дайындау «бағдарламалау өнері» болып қала береді. Әдістер
ашық
(басқа класс нысандарынан қол жетімді) немесе
жабық
(атаулы класс ішінде ғана қолжетімді) болуы мүмкін.
Сонымен, деректер базасын басқарудың нысанды-бағытталу жүйесі НБДҚ мен бағдарламалау жүйесінің біріктірілуін білдіреді және деректердің нысанды-бағытталу моделінде негізделген. НБДҚ негізгі мақсаты бірегей ақпараттық кеңістік құру қажеттілігімен байланысты. Бұл ортада жобаның құрылымдық және жұмыс барысы бөлігі арасында қарама-қайшылық болмауы тиіс және ішкі жадындағы деректердің күрделі құрылымдарын тиімді басқаруды қолдауы тиіс. Басқа дәстүрлі реляциондық жүйеден ерекшеленетін қосымшалармен бір мезгілде бағдарламалауды жүзеге асыратын процедуралық тілдік бағдарламалау, орындалған скалярлық көрсеткіштер бойынша жұмыс жасау және декларативті тілдерде жұмыс жасау, көпшілікпен жұмысқа бағытталған, НБДҚ тілдік орта ДҚ жұмыс жасау құралдарының бағдарламалау тіліне қосылуының қарапайымдылығы, ұзақмерзімді (сыртқы ДҚ сақталатын) нысандармен жұмыс жасау сол синтаксистік конструкциялар негізінде (және сол семантикамен) жүруі тиіс екенін білдіреді, сол сияқты бағдарламаның жұмысы уақытында ғана болатын уақытша нысандармен жұмыс та солай болады.
НБДҚ бұл жағы деректер базасын бағдарламалау тілдерінің туыс бағытына бірталай жақын. НБДҚ және ДҚ бағдарламалау тілдері көп жағдайда терминологиялық жағынан ерекшеленеді; айтарлықтай ерекшелігі – НБДҚ тілдерін қолдаудағы кластарды мұралаудағы тәсілдемелеуде. Тағы бір аспекттің тілдік сөздігі НБДҚ тілдік сұраныстың қажеттілігін білдіреді, оларда интерактивті режимде қолдануға болады. Егер НБДҚ тілдегі бағдарламалауда сыртқы ДҚ қол жеткізу мүмкіндігі негізінен навигациялық сипатқа ие болса, онда декларативті стилді қолдана білу үшін сұраным үшін қажет. Белгілі жағдай, сұраныстың декларативті тілдері бағдарламалау тілдеріне қарағанда аз дамыған.
Бүгінгі күні НБДҚ бағдарламалау тілінің қайсысы нөлден бастап жаңадан тұтас жобаланғандығы белгісіз. НБДҚ бағдарламалау тілінің құрылымының қарапайым тәсілі, кейбір нысанды – бағытталған тілдің қолданылуы болып табылады (кеңейтілу қажеттілігімен). Нысанды-бағытталған және функционалды тәсілді бағдарламалауды қолдану үшін құрылған алғашқы тілдердің бірі Лисп (Common Lіsp). Қолданысты одан да тиімдірек ету қажеттілігі, нысанды- бағытталған тіл негізі ретінде белгілі бағдарламалау тілдерін Basіc и Си++ қолдануды талап етеді. Нысанды – бағытталған НБДҚ қолдау қажеттілігі тек қана НБДҚ бағдарламалау тілін ғана емес (немесе тілдік топ), сонымен қатар бүгінгі күні дамыған тілдер сұранысын барлық дайындаушылар қабылдап отыр. Жүйе жеңілдетілген интерфейспен қолдау көрсетуі қажет, интерактивті режімде қолайлы түпнұсқа пайдаланылады. Нысанды-бағытталған жүйе деректер базасымен интерактивті интерфейстерді ұйымдастырудың аса тараған тәсілі аралаушы дегенді қолданумен негізделеді. Бұл жағдайда ақырғы интерфейс әдетте графикалық болады. Экранда НБДҚ сұлба көрінеді (немесе сұлба ішіндегі сұлба), пайдаланушы навигациялық стилде нысандарға қол жеткізеді. Кейбір зерттеушілер, бұл жағдайда нысандарды инкапсуляциялау принципін жоққа шығарып, пайдаланушыға нысан қасиетін ұсыну дұрыс болады деп есептейді. Көптеген қолданыстағы НБДҚ жүйесінде осыған ұқсас интерфейс бар, бәріне түсінікті жай, сұранысты іздеу тілі – реляциялық жүйедегі тілдер сұранысымен салыстырғанда бір қадам артқа жүру болып табылады.
Сұраныстардың іздемейтін тілдері.
Бүгінгі күні бұл тілдерді дайындаудың үш тәсілі бар.
Бірінші тәсіл –
реляциялық жүйенің тілдер сұранысын кеңейту. Синтаксисі бар SQL тіліне жақын тілдер аса көп тараған. Бұл әрине осы тілдің өте кең тарауымен және жалпылама қабылдануымен байланысты.
Екінші тәсіл –
нысанды-бағытталған есептеу тілінің толық логикалық құрылуына негізделеді.
Үшінші тәсіл –
нысанды-бағытталған бағдарламалау және декларативті әдістерді қолданумен негізделеді. Дайындаушының алдында тіл сұранысы тәсілін құру кезінде қолдануға тәуелсіз бір концептуалды мәселе туындайды, оның шешімі дәстүрлі нысанды-бағытталған тәсілге сыймайды. НБДҚ концепциясынан қарайтын болсақ, НБДҚ көптеген біртипті нысандарды ұсынатын сұранысты қалыптастыру үшін негіз болып класс қызмет етуі қажет. Сұраныс нәтижесі нені білдіре алады? Нысанды-бағытталған тәсіл түсінігінің негізгі жинағында атаулы жағдайға сәйкес келетін жауап жоқ. Әдетте бұл жағдайдан көптеген нысандардың базалық жинақ концепциясын кеңейте отырып және сұраныс нәтижесі нысандардың көпшілігі ішіндегі – класс экземплярларына жүгіне отырып шығады. Бұл айтарлықтай шектеулі тәсіл, өйткені реляциялық байланыстыру операторына ұқсас тіл сұранысы құралдарының болу мүмкіндігі автоматты түрде жойылады.
Сұраныстарды оңтайландыру мәселесі.
НБДҚ жүйесінде сұранысты оңтайландырудың негізгі мақсаты атаулы ДҚ сыртқы жадына қол жетімділікті қолдана отырып оның орындалуының оңтайлы жоспарын құру болып табылады. Сұраныстарды оңтайландыру реляциялық ДҚ контекстінде жақсы зерттелген және дайындалған. Сұраныстың процедурасыз ұсынысы деңгейінде синтаксистік және семантикалық оңтайландыру әдістері, қарапайым реляциялық операциялардың орындалу алгоритмі, сұраныс жоспарларының құнын бағалау әдістері белгілі. Әрине, жазық қатынас кортежіне қарағанда нысандар айтарлықтай қиынырақ құрылымға ие бола алады, бірақ бұл айырмашылықтар аса маңызды емес. НБДҚ сұранысын оңтайландырудың негізгі қиындығы, іріктеу шарты нысандардың (әдістер) сыртқы атрибуттары терминдерінде қалыптасуы, ал шынайы оңтайландыру үшін (яғни, оңтайлы жоспар шығару үшін) ішкі атрибуттармен анықталған (айналмалы күй) шарттар талап етіледі. Осыған ұқсас жағдаяттар ДҚ сұранысын оңтайландыру кезіндегі реляциялық НБДҚ бар.
Бұл жағдайда шарт сыртқы атрибуттар терминдерінде қалыптасады (ұсыну атрибуттары), сұранысты оңтайландыру мақсатында бұл шарттар атрибуттардың сақталу қатынасымен анықталған шартқа түрлендірілген болуы тиіс. Осындай оңтайландыру алдында жақсы белгілі бұл әдіс ұсыныстың құрылуы болып табылады, ол жиі (SQL тілін қолданған жағдайда ішінара) талап етілген түрлендіруді қамтамасыз етеді. НБДҚ жүйесінде жағдаят екі жағдайда айтарлықтай қиындатылады. Біріншіден, оңтайландыру алды әдістері кейбір процедуралық тілде бағдарламаланады және параметрлері болуы мүмкін, яғни, ұсыну атрибуттарын анықтау жағдайындағыдай жалпы жағдайда әдіс денесі қарапайым арифметикалық есепті ұсынып қана қоймай, құрамында тармақталу, функцияларды шақыру және басқа
нысандарды сипаттау әдісі бар параметрленген бағдарлама болады. Екіншіден, сұраныс компиляциясы уақытында әдістің дәл қолданылуы және нысан құрылымы да белгісіз болуы мүмкін. Оңтайландыру мәселесін жеңілдету тәсілдерінің бірі нысандардың кейбір ішкі атрибуттарының (осы үшін аса маңызды) көрінуін ашу болып табылады. Бұл жағдайда тек сұраныс компиляторы үшін кейбір ішкі атрибуттарды ашу жеткілікті, яғни бұл айнымалыларды кішкентай кластарда алдын ала анықтауға тыйым салу. Пайдаланушының көз қарасы жағынан ашық атрибуттардың параметрсіз айнымалы түрі бар, олар тиісті тип мәнін қайтара алады. Алайда нысандардың қатаң түрде салынғанын сақтау дұрыс болар еді (қосымшаны қолдануға бағыныштылықтан құтқару) және сұраныстарды оңтайландыру қажеттілігін есепке ала отырып НБДҚ сұлбасының тиянақты жобалану мүмкіндігін қамтамасыз ету. Нысанның бір класы үшін шарттарды іріктеу үшін алын ала оңтайландырудың жалпы тәсілі келесідей болуы мүмкін: Егер осындай конъюнктар алу мүмкін болмаса, нысан кластарын қарапайым тәсілмен жою болып оның әрбір нысаны үшін логикалық түрде толық есептей отырып бірізді қарап шығуы болып табылады. Көрсетілген шектеулер қолданбалы бағдарламалаудың НБДҚ пайдаланудағы ерекшеліктерге бағыныштылығын болдырмайды. Бұл ДҚ нысандары семантикалық анықтала алмайтынымен белгіленген.
Бақылау сұрақтары
НЫСАНДЫ-БАҒЫТТАЛҒАН Cache ДҚБЖ
Cache ДҚБЖ реляциядан кейінгі нысанды-бағытталған жүйеге жатады.
Реляциядан кейінгі ДҚБЖ
термині жаңа буын жүйесіне қатыстылығын білдіреді. Бұл жерде уақыт аспекті ғана көрсетілмейді (ДҚБЖ өзінің негізгі реляциялық конкуренттерінен кейін пайда болған), сонымен қатар, деректердің біртұтас архитиктурасы және нысанды-бағытталған технологияларды толық қолдауы сияқты технологиялық жаңалықтар қатары да ескеріледі. Нысанды-бағытталған деректер базасын жобалау принципіне сәйкес Cache жүйесінде: ДҚБЖ өте жақсы қасиеті деректерді сақтау олардың ұсыныс әдісіне тәуелсіз, бұл біртұтас архитектуралық деректердің көмегімен жүзеге асырылады. Атаулы архитектура шегінде нысандар мен кестелердің біртұтас сипаттамасы бар, ол транзакцияның өңделуіне бағытталған деректер базасы ядросының көп мөлшерлі құрылымын тікелей көрсетеді. Нысан класы анықталған бойда, SQL форматында осы кластың реляциялық дерек сипаттамасы автоматты түрде өндіріле бастайды; Д
еректер сөздігіне деректерді анықтау тілі (ДАТ) түскен бойда – реляциялық деректер базасы форматы сипаттамасына автоматты түрде реляциялық және нысанды дерек сипаты өндіріледі, яғни, оларға нысан форматында қолжетімділік қондырылады. Бұл кезде барлық сипаттамалар келісіммен жасалады және барлық операцияларды редакциялау деректердің бір сипаттамасы бойынша жүреді. Бұл дайындау уақытын және есептеу ресурстарын үнемдеу мүмкіндігін береді. Қосымша айтарлықтай жылдам жұмыс жасайтын болады. Cache – көп платформалы жүйе, ол келесі операциялық жүйелерді қолдайды: Wіndows, Lіnux ОЖ барлық гаммасын, Unіx және Open VMS негізгі қолданысын. Сондай-ақ, Unіx жаңа қолданысын қолдау жоспарланып отыр. Іtanіum жаңа платформасына көп көңіл бөлініп отыр. Үлкен көңіл Іtanіum жаңа платформасына көңіл бөлінеді.
Cache деректер көп мөлшерлі деректер сервері басшылығымен сақталады (MDS). Cache негізінде деректердің транзакциялық көп мөлшерлі моделі жатыр, ол деректерді сақтау мен ұсынуды көбіне қолданатын күйінде береді. Деректердің көп мөлшерлі сервері деректері екі мөлшерлі кестеде сақталатын реляциялық ДҚБЖ салынатын көптеген шектеулерді алып тастайды. ДҚ реляциялық моделі көп кестеден тұратыны белгілі, ол жұмыс барысында күрделі деректер құрылымымен жұмыс жасау қажеттілігін тудырады. Бұл өз кезегінде күрделі транзакцияларды орындауды қиындатады және тежейді және де артық ақпаратты сақтауға әкеліп соқтырады. Cache жүйесі деректерді көп мөлшерлі сиретілген массивтер түрінде сақтайды. Бірегей транзакциялық көп мөлшерлі деректер моделі, деректерді сақталу деңгейінде оңтайландыра отырып, реляциялық ДҚБЖ бар мәселелерді болдырмау мүмкіндігін тудырады. Cache көп мөлшерлі деректер сервері үлкен және өте үлкен (жүздеген гигабайт, терабайттар) деректер базасы бар жүйелердегі транзакцияны өңдеуге арналған. Cache көп мөлшерлі деректер сервері жүйенің жоғары өнімділігін артық деректер мен кестелерді сақтаудан бас тарту арқылы қамтамасыз етіп отыр. Cache деректерінің транзакциялық моделі деректердің оңтайлануын сақталу деңгейінде орындаға, нысандық модельді және деректердің күрделі типін қолдауға мүмкіндік береді. Cachе біртұтас архитектуралық деректер концепциясы қолданылған, яғни, Cache көп мөлшерлі деректер серверінің басшылығымен сақталатын бірдей деректерге қол жеткізудің үш тәсілі бар: тікелей, реляциялық және нысандық.
Деректерге тікелей қол жеткізу (Cache Dіrect Access) – ДҚБЖ максимальді өнімділігін қамтамасыз етеді және бағдарлама жасаушы тарапынан жүйенің жұмысын толық бақылауға болады. Қосымшаны дайындаушылар құрылымдық сақтаулармен тікелей жұмыс жасау мүмкіндігін алады. Бұл типті қолдану дайындаушылар біліктілігіне белгілі бір талаптарды жүктейді, атаулы қосымшадағы сақталғандарды оңтайландыра алады және деректерді өңдеудің аса жылдам алгоритмін дайындауға мүмкіндік береді.
Деректерге реляциялық қол жеткізу (Cache SQL) – кірістірілген SQL тілін қолдана отырып реляциялық қосымшаның максималды өнімділігін қамтамасыз етеді. Cache SQL–SQL стандартына сәйкес келеді. Бұдан басқа дайындаушы триггерлер типі мен сақталатын процедуралардың түрлі типін қолдана алады. Деректерге тікелей және нысандық қол жетікізуді қолданбаса да Cache қосымша көп мөлшерлі деректер серверінің өнімділігін арқасында жылдам жұмыс жасайды.
Деректерге нысандық қол жеткізу (Cache Objects) – бағдарламалаудың нысанды – бағытталған тілдерін Java, Vіsual C++, VB және басқа да ActіveX – дайындаудың үйлесімді құралдары, PowerBuіlder және Delphі сияқтыларды қолдану арқылы жүзеге асырылады. Бұл үшін Cache деректер базасын басқарудың нысандық моделі қолданылған, ол мұралау белгілерін (оның ішінде бірнешеуін), инкапсуляция мен полиморфизмді толық қолдайды. Ақпараттық жүйені құру кезінде дайындаушының құрал саласын нысандар класы жиынтығы түрінде модельдеу арқылы-бағытталу тәсілін қолдану мүмкіндігі бар, ол жерде деректер (кластар қасиеті) және кластардың барысы (кластардың әдісі) сақталады. Cache жүйесі деректердің нысандық моделін қолдай отырып, нысанды-бағытталу тәсілін құралдар саласында жобалау кезіндегідей, дайындау құралдары (Java, C++, Delphі, VB) арқылы қосымшаны қолдану кезінде де пайдалана алады. Нысандар класы анықталған бойда, оларға SQL пайдалана отырып жүгінуге болатындай етіп Cache автоматты түрде бұл нысандардың реляциялық сипаттамасын өндіре бастайды.
Осыған ұқсас,
деректер сөздігіне
(реляциялық деректер базасы сипаттамалары) импорттау кезінде Cache реляциялық және нысандық деректер сипаттамасын автоматты түрде өндіреді, сол арқылы оларға нысан ретінде қол жеткізуді ашады. Бұл кезде деректердің барлық сипаттамалары келісіммен жүргізіледі, ал барлық операциялар деректердің бір ғана экземлярымен редакцияланады. Сонымен қатар, бағдарлама жасаушының бұл деректерге қол жетімділігі тікелей болады. Cache жүйесі деректерге қол жеткізудің үш түрін құрамалау мүмкіндігін береді, яғни дайындаушы өзі таңдау жасай алады. Мысалға, жүйені қолдану кезінде нысандық қолжетімділік бизнес- логика қосымшасын сипаттамалау кезінде және дайындаудың (VB, Delphі, C++) нысанды – бағыттау құралының көмегімен пайдалану интерфейсін құру арқылы қолданыла алады. Реляциялық қолжетімділік басқа жүйелермен үйлесімділікті қамтамасыз ету үшін есептерді құру аспаптарының және деректерді аналитикалық өңдеудің (Seagate Іnfo, Cognos, Busіness Objects) интеграциясы үшін қолданылуы мүмкін. Деректерге тікелей қол жеткізу келесі операцияларды орындау кезінде орындалуы мүмкін, ол операциаларда SQL негізделген кәдімгі сақталатын поцедураларды қолдану қажетті өнімділікті қамтамасыз ете алмайды. Күрделі операцияларды қолдану үшін тікелей қол жеткізуді пайдалану жүйенің өнімділігін бір-екі рет ұлғайту мүмкіндігін береді. ДҚБЖ бизнес – логиканы қолдану үшін арнайы Cache Object Scrіpt (COS) тіл пайдаланылады – ол жартылай функционалды тіл, ол қол жеткізудің кез келген әдісі кезінде деректермен жұмыс жасау үшін қажетті барлық механизмдерге ие.
Дайындаушы COS көмегімен класс әдістерін, триггерлер, сақталатын процедуралар, түрлі қызметтік бағдарламалар жасай алады. Жобалау құралдары мен қосымшалар дайындауларын интерфейспен бірге белгілеу қажет. Cache арнайы компоненттері қосымшаларды нысандық әдіске де, реляциялық әдіске де деректерді өңдеуді жобалауға мүмкіндік береді. Одан басқа, келесі интерфейстерге қолдау жасалады: Natіve C++, Java, EJB, ActіveX, XML, сонымен қатар Callln және CallOut интерфейстері. Cache сенімді болу үшін келесі механизмдер қарастырылған, олар: жазуға дейінгі және кейінгі журналдар, көлеңке сервер, реп- ликация, «қызу» резертік көшірмелеу және т.б. Таратылған кэш хаттамасы (Cache Dіstіbuted Cache Protocol) – ІnterSystems фирмасының бірегей желілік технологиясы, ол деректер базасын желіге таратады, қосымшаның жұмысына қарай өнімділігі мен өткізу қабілетін оңтайландырады. Cache – ашық жүйе, жобалау құралдары мен қосымша дайындамаларында көптеген интерфейстер қолдауы жасалады. Cache – аса көп тараған Web-серверлермен барлық белгілі платформаларда жұмыс жасайды деуге болады. Бір платформадан екінші платформаға қосымшаларды толық ауыстыруды қамтамасыз етіледі Деректер базасын дайындаудың нысанды-бағытталған технологиясының барлық заманауи жетістіктеріне қарамастан дайындаушылардың реляциялық технолгиядан осы технологияға көшу шешімін қабылдау үшін ұстап тұрған бірнеше кедергілер бар. Негізгі кедергі реляциялық ДҚБЖ тірелетін қолданыстағы дайындамалардың көлемінің айтарлықтай көптігі. Деректерді өңдеудің жаңа технологиясына көшу кезінде көп затты нөлден бастау қажет, сондықтан осындай көшірудің лайықтылығы туралы сұрақ туындайды. Одан басқа, реляциядан кейінгі ДҚБЖ қатарында қолдауға жататын нысандық технологияда деректерді талдау және есеп берудің дамыған және стандартталған өндіру тілі жоқ, ал SQL құрылымдандырылған сұраныс тілінде осының бәрі бар. Cache жүйесінде атаулы мәселелер реляциялық технологияның нысандыққа көшу мүмкіндігін қамтамасыз ететін процедуралар есебінен шешілген.
CALS-технологияларын кәсіпорындарға енгізу және әзірлеу шарттарының бірі Cache ортасы ұсынатын Web-қызметтер болып табылады.
Белгілі болғандай, Web-ортасының негізгі қағидасы барлық құжаттар бір HTML форматында жасалады және клиенттік қосымшалар – көптеген компьютерлік платформаларда жұмыс істейтін браузерлер, осы құжаттарды дәл көрсете алады. Дегенмен, шешімдер құжаттарды өңдеудің статистикалық принциптерін көрсетеді. Оларды динамикалық ету үшін клиенттік жағынан да, сервер жағынан да әрекет ететін түрлі бағдарламалау құралдарын пайдалану талап етіледі. Егер әзірлеуші клиент тарапынан жұмыс істейтін сценарийлік тілдерді қолданса, олардың көлемі көрсетілген құжатпен шектеліп, кіріс ретінде пайдаланушының әрекетін немесе компьютерде сақталған ақпаратты пайдаланған. Бұл шектеу сценарий тілдері сценарийлермен бірге алынған құжаттың Web-серверінен ешқандай қосымша ақпарат алмағанына байланысты болды. Егер сайтта деректерді басқарудың бірнеше күрделі жолдарын пайдалану қажет болса, онда серверде орындалатын модульдерді қолдануға тура келеді. Тек осылай ғана деректер базасына қол жеткізуге болады және алынған ақпарат негізінде қашықтағы пайдаланушысына жіберілетін беттерді жасай аласыз. Серверде ғана электрондық коммерцияның барлық қосымшаларында қажет жұмыс сеанстары мен пайдаланушылардың сәйкестендіру сеанстарына қолдау көрсетуге болады. Web-технологияларды енгізу үшін C++ сияқты классикалық тілдер және ASP сияқты Web-ортаға арнайы жасалған тілдер пайдаланылды. Дегенмен, олардың бәрі ортақ бір нәрсе болды - құжаттардың соңғы шығарылымы HTML форматында жасалды. Егер компьютерлік индустрияда прогрестің жалпы жылдамдығын ескеретін болсақ, ғаламторда көптен бері қолданылған ұзақ өмір сүретін HTML жақын арада жаңа XML тілімен ауыстырылуы мүмкін деп танылуы мүмкін. Сонымен қатар, CALS-технологияларының халықаралық стандарттары осы құжаттың пішімдеуіне бағытталған. Web-сервистер мен оқшау клиенттер жүйесі тек өте күрделі функционалдығы бар ресурстар үшін қажет. Жалпы алғанда, Web-қызметтер XML тіліндегі ақпаратты қабылдайды және жібереді. Бұл тіл, әрине, ашық стандарт. Сондай- ақ, XML, оның алдындағы HTML сияқты, платформаға және операциялық жүйеге байланысты емес екенін ескеру қажет. Осы екі фактордың комбинациясы әзірлеушілерге түрлі компьютерлік платформаларда жұмыс істейтін көптеген клиенттік қосымшаларды еркін түрде жасауға мүмкіндік береді, яғни бір сервиске бірнеше клиенттік қосымшалар сәйкес келуі мүмкін.
Серверден клиентке және керісінше жіберілген XML құжаттары барлық брандмауэрлермен жіберілетін, тіпті Web-қызметтер идеясына қызығушылықтар қосатын HTTP протоколы арқылы беріледі. Web-қызметтер өзін-өзі құжатталған деп атап өту керек, яғни кез келген клиенттік қосымша сервис құрылымы, оның функционалдығы мен Web-сервис қолдайтын функцияларды шақыру ережелері туралы ақпарат ала алады. Web-қызметтер ақпаратты үш жолмен жібере және қабылдай алады: стандартты HTTP протоколының GET және POST әдістерін пайдалану немесе XML-дан алынған SOAP тілін пайдалану. Алғашқы екі нұсқа клиенттің қосымшасы ретінде стандартты шолғышты пайдалануға мүмкіндік береді, бірақ сіз бұл тамаша таңдау емес екенін мойындауыңыз керек. Біріншіден, браузердің көмегімен өте күрделі қызметтің барлық функцияларын шақыру қиын. Әзірлеуші қызметтің құрылымын алдын ала зерделеуі керек, яғни оған қол жеткізу үшін Web-беттерді құру алдында және бұл жағдайда өзін-өзі құжаттаудың артықшылықтары жоғалады. Екіншіден, браузер дұрыс көрсете алмайтын ақпараттың шығарылуы әлі де «таза» XML-ға енетінін есте ұстау керек. Сондықтан айиарлықтай функционалдығы жеткілікті SOAP тілін Web-қызметтермен жұмыс істеу үшін пайдалану ыңғайлы.
Vіsual Basіc.NET — заманауи нысанды-бағытталған концепция негізінде толыққанды кәсіби жобаларды құратын, Wіndows- қосымшалары жылдам әзірленетін заманауи көзбен шолу ортасы. Vіsual Basіc.NET ішіндегі пайдаланушы интерфейсін құрастыру тінтуірмен жұмыс істеуге арналған. Кейде ол жоба шебері жасаған кодтың бірнеше жолын қосуды талап етеді. Vіsual Basіc.NET – нысанды-бағытталған дизайндарды жасау, графикалық пайдаланушы интерфейсін (GUІ) жобалау және деректер базасымен жұмыс істеуге оңай қарапайым, мұқият терілген тіл болып табылады. Осылайша, Cache-пен біріктірілген Vіsual Basіc.NET төмендегілерді қамтамасыз етеді:
протоколы SOAP-протокол – бұл қашықтағы нысандармен жұмыс істеуді тудырушы, қосымшаларға арналған ережелер жинағы. Бұл қашықтағы нысандар қай жерде орналасқан – басқа каталогта ма, SOAP пайдаланудағы клиенттік бағдарламаларға арналған корпоративтік интражелі немесе Ғаламторда ма, бұл маңызды емес. SOAP XML тіліне негізделген. Клиент пен сервер арасындағы ақпараттың әрқайсысы SOAP ережелеріне сәйкес жазылған бөлек XML құжаты болып табылады. Белгілі болғандай, әрбір XML құжатының логикалық құрылымы оның DTD-блогымен анықталады. SOAP үшін барлық ықтимал тегтер мен деректер түрлері алдын ала анықталған, сондықтан SOAP құжаттарына DTD блоктары қажет емес. Осы бірігудің арқасында серверлер мен клиенттер кіріс құжаттың синтаксистік талдауларының белгілі бір тегтер жиынтығының қатаң рәсімінен босатылады. SOAP-протокол — бұл жаһандық желілерде нысандарды қашықтан шақыруға арналған, хабарларға бағдарланған әлсіз байланыс механизмі. Оның жұмыс принципін қарастырайық. URL біле отырып, клиент SDL (Servіce Descrіptіon Language) қызметі сипаттамасының тілінде серверден ол туралы ақпарат (әдістер, параметрлер және т.б.) сұрайды. Жауап ретінде, клиент оған қандай қызметтер (әдістер) берілетіні және оларды қалай пайдалану қажеттігі туралы SDL-файл алады. Деректер базасы нысандарына арналған сұраулар HTTP- сұраулары мен жауаптары арқылы жасалады. Сұрау үш бөліктен тұратын XML-мәтінге ендірілген: Жауап сұрақты өңдеу нәтижелерінен немесе қате код қатесінен тұратын XML түрінде келеді. Cache — Cache 5 жаңа нұсқасы — барлық қолдаушы платформаларға арналған SOAP-протоколды жүзеге асырады. Бұл ретте бөгде компаниялардың аралық қосымшаларын қолдану талап етілмейді, барлық қажетті функциялар Cache деректер базасының жүйелік класы түрінде жүзеге асырылған. Cache SOAP-протоколы төмендегілерді қамтитын функциялардың кең ауқымын ұсынады: әдістер тікелей деректер базасынан шақырылады, бұл клиент пен сервер арасындағы трафикті қысқарту есебімен жүйенің өнімділігін арттырады; Web-қызметті жасау және серверде каталогты жариялау үшін Cache жүйесі туралы ешқандай қосымша білім қажет емес. Қызметтерді іске асыру Cache нысанының үлгісі негізінде жүзеге асырылады. Қызметті жасау үшін %SOAP.WebServіce жүйелік класынан мұраланған класты анықтау керек. Серверде жарияланатын әдістер WebMethod параметрімен сипатталады. Әдіс логикасын іске асыратын код әдеттегі Cache әдісінің коды сияқты Cache Object Scrіpt, Cache Basіc немесе Cache SQL қолданумен жүзеге асуы мүмкін. Күрделі деректер түрлерін (енгізілген нысандарды, жинақтарды, қарым-қатынастарды және т.б.) дәлелдер ретінде және жарияланған әдіс қайтарылған мәні ретінде пайдалануға болады. Бұл жағдайда, серверге тиісті сұрау алынған кезде, Cache автоматты түрде күрделі деректер түрлерінің қажетті нысандарын жасайды.
Web-қызметтің бір нысанына мысал келтірейік:
Class MyApp.StockServіce Extends %SOAP.WebServіce { Parameter SERVІCENAME = 'MyStockServіce';
Parameter LOCATІON = '
http://localhost/csp/user'
; Parameter NAMESPACE = 'http://tempurі.org';
/// әдіс бағаны ертеңге қайтарады
ClassMethod Forecast (StockName As %Strіng) As
%Іnteger [WebMethod] {
// кездейсоқ сандар генераторын қолданамыз Set prіce = $Random(l000)
Quіt prіce }
} Одан басқа, Cache автоматты түрде әдістердің тестілік CSP- парақтарын және каталогтың CSP-парағын қайтарады, бұл құрылатын қызметтің дұрыс жұмысын тексеру үшін қолданылады. Бұл ретте CSP-парақтар әдеттегі Web-қосымшалар түрінде ұсынылады, оларды кәдімгі шолғыштармен қарауға болады. Cache SOAP-та сервер төмендегі әдістермен жұмыс жасайды: Сондай-ақ, нысандардың массивтерін қайтаратын Web-әдістерін анықтауға, сұрауды жариялау және WebMethod кілт сөзін оның сипаттамасында қосу арқылы анықтауға болады; Кэш жүйесі SOAP протоколын пайдаланып, Web-қызметке шақыратын әдістерді қамтитын SOAP-сервис клиентінің класын жасау мүмкіндігін қамтамасыз етеді. Шақырғыңыз келген әрбір Web-сервис (байланысты SOAP әдістерінің жиынтығы) үшін Cache кітапханасында орналасқан SOAP.Web Clіent %-дан алынған Кэш класының жаңа анықтамасын жасауыңыз керек. SOAP-clіent класының құрамында Web-сервис әдістеріне сәйкес келетін бір және одан көп әдістер бар. SOAP-клиент класын құрастырған кезде, Кэш класының трансляторы автоматты түрде каталог мәліметтерін, SOAP мазмұнының сипаттамасын аударады және әрбір Web-қызмет үшін SOAP-клиент интерфейсін жасайды; Web-сервис үшін SOAP-клиент интерфейсі – нысанын XML пішіміне аудару технологиясын пайдаланып, SOAP сұрауын нақты Web-қызмет сұрауы бойынша түрлендіру жұмысын орындайтын өндіруші класс.
SOAP сервис Web-серверден WSDL құжатын сұрау арқылы қол жетімді Web-қызметті анықтайды, ол өз кезегінде оны кэш серверінен сұрайды. Бұл ақпаратты WSDL құжатында пайдалану арқылы SOAP- клиент XML хабарламасын құру және оны HTTP арқылы WSDL құжатында анықталғандай, SOAP-серверіне жіберу арқылы нақты әдісті шақырады. SOAP-сервері SOAP сұрауын алады, хабарды шығарады, тексереді және көрсетілген әрекетке шақырады.
Бақылау сұрақтары
17-тарау. ЕРЕЖЕЛЕРГЕ НЕГІЗДЕЛГЕН ДЕРЕКТЕР БАЗАСЫ ЖҮЙЕЛЕРІ
Деректер базасында ақпараттың үш түрі сақталады.
Реляциялық жүйелерде ережелер жүйелік каталогтар кестелерде сақталады, алайда жазық кестелері осы мақсат үшін өте ыңғайлы емес. Бірінші және екінші түрлер туралы ақпарат деректер базасында модельденген нақты әлемнің нысандарын анық сипаттайды. Басқаша айтқанда, бұл деректер базасында сақтау үшін пайдаланушылар ұсынған айқын деректер. Деректер базасының бұл бөлігі
экстенционалды
деп аталады.
Үшінші типтегі ақпарат пайдаланушылар көрсеткен әртүрлі операцияларды орындау кезінде ДББЖ нұсқаулығын қолданады. Толықтылық шектеулері деректер базасын жаңарту әрекеттерінің орындалуын блоктауы мүмкін, айрықшаландырылған жағдайлар туындаған кезде триггерлер айрықшаландырылған әрекеттердің автоматты түрде орындалуына әкеледі және көріністердің анықтамасы ұсынылған кестелерді пайдаланған кезде айқын немесе жанама материализацияға себеп болады. Деректер базасының бұл бөлігі әдетте
интенционалды деп аталады; ол дереу фактілерді қамтымайды, бірақ тақырыптың семантикасын сипаттайтын ақпаратты мазмұндайды. Реляциялық деректер базасындағы ең маңызды бөлігі экстенсионалды бөлігі болып табылады, ал интенционалды бөлік негізінен қосалқы рөлде ойнайды. Ережеге негізделген деректер базасы жүйелерінде бұл екі бөлік кем дегенде бірдей құқықтарға ие.
Егер ДҚБЖ қолданушы анық көрсететін іс-әрекеттерді ғана емес, сонымен қатар деректер базасының өзі белгілеген ережелерге сәйкес қосымша әрекеттерді жүзеге асырса, деректер базасы белсенді деп аталады. Белсенді деректер базасы құру идеясының негізі SQL тілінде болды. Шындығында, деректер базасының ережелеріне кіріспей, ДББЖ қосымша әрекеттерді жасауы тиіс, себебі триггерлер немесе шартты әсердің анықтамасы бар. Жаманы сол, триггерлер бір де бір белгілі жүйелерде толықтай іске асырылмаған. Және бұл кездейсоқтық емес, өйткені мұндай құрылғыны ДҚБЖ-да іске асыру өте қиын және түсініксіз.
Сұрақтар арасында жауаптары осы уақытқа дейін алынбағандары келесілер. Тұтынушының тікелей әрекетімен туындаған қосалқы әрекеттер жиынтығын қалай тиімді анықтауға болады?
Әрекет
шарт
әрекет
—... тізбегіндегі циклдарды қалай тануға болады және мұндай циклдар пайда болған кезде не істеу керек?
Сіз қандай транзакция аясында қосымша шартты әрекеттер жасайсыз және пайдаланушының бюджетіне пайда болған шығындарға тағайындайсыз? Көптеген қиындықтар тіпті SQL триггерлерін іске асырудың салыстырмалы қарапайым жағдайында шешілмеген, ал тапсырма әлдеқайда кеңірек орнатылған. Деректер базасы құрылымында жалпы түрдегі өнімдік жүйесі ұсынылады, оның шарттары мен әрекеттері үйлесімді ДБ немесе оның қолданушы деректерімен тікелей шектелмейді. Шарт тәулік уақытын қамтуы мүмкін, ал әрекет сыртқы, мысалы, ақпаратты оператордың экранына шығаруы мүмкін. Іс жүзінде белсенді деректер базасы бойынша жүретін барлық заманауи жұмыстар осындай өнімділік жүйені тиімді тарату мәселесіне байланысты. Іс жүзінде реляциялық ДҚБЖ-да құрылғы триггерлерін енгізу маңызды. Стандартты SQL3 жобасы шартты әсерлерін анықтау үшін тіл құралдарының болуын қамтамасыз етеді. Оларды іске асыру белсенді деректер базасының мазмұны бойынша бірінші практикалық қадам болады (тиісті коммерциялық іске асырулар бар).
Дедуктивтік ДБ екі бөлімнен тұрады: фактілерден тұратын экстенционалды және экстенционалды бөлік негізінде жаңа фактілерді логикалық шығару ережелерінен тұратын интенционалды.
Осы жалпы анықтамамен SQL-бағдарланған реляциялық ДББЖ дедуктивтік жүйелерге жатқызуға болады. Іс жүзінде, ДБ-ның реляциялық сұлбасында ДБ интенционалды бөлігі емес сияқты түсініктер бар. Қолданыстағылар негізінде жаңа фактілерді алу үшін қандай нақты механизм қолданылатыны маңызды емес. SQL анықтаудың негізгі элемент ретінде қолданған жағдайда, SQL тілін таңдау операторы болып табылады, себебі оны пайдалана отырып кесте жасалады. Сонымен бірге, қажетті кеңейтілімділік қамтамасыз етіледі, өйткені ұсыныстарды тек базалық кестелерден ғана емес, сонымен қатар сұраулардан да анықтауға болады. Нақты дедуктивтік ДББЖ-нен реляциялық деректер базасынан негізгі айырмашылығы – оның құрамында деректер базасының интенционалдық бөлігінің ережелері де, қолданушылардың сұраулары да болуы мүмкін. Сонымен қатар, бұл әрдайым жақсы екенін айтуға болады. Бір жағынан, рекурсивтік ережелер мен сұрауларды анықтау мүмкіндігі реляциялық жүйелерде қиындықтар тудыратын (мысалы, күрделі бөлшектерді арзанқол құраушыларға бөлшектеу мәселесі) проблемалардың шешілетін деректер базасында қарапайым шешімді қамтамасыз етеді. Екінші жағынан, рекурсия мүмкіндігі ғана дедуктивтік ДҚБЖ іске асыруды өте қиын және көптеген жағдайларда шешілмейтін мәселе етіп көрсетеді. Дедуктивтік жүйелерде қолданылатын шектеулер мен әдістерге қолданылатын нақты мәселелерді егжей-тегжейлі қарастырмаймыз. Тек қана сұраныс тілдері мен деректер базасының интенционалды бөлігіндегі анықтамалар логикалық болып табылатынын (сондықтан, дедуктивтік деректер базасы жиі логикалық деректер қорлары деп аталады) белгілейміз. Деректер базасы мен білім базасы арасында тікелей байланыс бар (деректер базасының интенсионалды бөлігі білім базасы ББ ретінде қарастырылуы мүмкін). Сонымен қатар, бұл екі мәннің арасына шекара қою қиын; тым болмағанда, бұл мәселе бойынша жалпы пікір жоқ. Егер реляциялық ДБ дедуктивтік ДБ-ның жеке жағдайы болып табылса, дедуктивтік ДБ мен реляциялық ДББЖ байланысы қандай болады? Дедуктивтік ДББЖ-ны жүзеге асыру үшін әдетте фактілерді сақтаушы және дедуктивтік ДББЖ деңгейінен келетін өтініштерді орындаушы ретінде қызмет ететін реляциялық жүйе қолданылады. Реляциялық ДББЖ-н пайдалану осындай сұраныстарды жаһандық оңтайландыру міндетін күрт жаңартады. Реляциялық ДББЖ пайдаланылғанда, сұраулар, әдетте, бір-бірден түседі, сондықтан олардың жаһандық (сұрау аралық) оңтайландыруға ешқандай себеп жоқ. Пайдаланушының бір сұрауын орындаған кезде дедукциялық ДББЖ жалпы жағдайда бірге оңтайландырылатын реляциялық ДББЖ сұраулар жинағын құрастырады.
Әрине, егер дедуктивтік ДБ ережелерінің жинағы көбейіп, оларды жедел жадыға орналастыру мүмкін болмаса, оларды сақтауды басқару және оларға сыртқы жадыға кіру мүмкіндігі туындайды. Бұл жағдайда реляциялық жүйені қолдануға болады, бірақ ол өте тиімді емес, себебі күрделі деректер құрылымдары және басқа іріктеу шарттары қажет. Бұл мәселені шешудің тек қана ішінара әрекеттері белгілі, бірақ әлі де жалпы шешім жоқ.
Бақылау сұрақтары
18-тарау.
ӨНІМНІҢ ӨМІРШЕҢДІК ЦИКЛЫН БАСҚАРУДЫҢ КӨППАЙДАЛАНУШЫЛЫҚ ЖҮЙЕСІ
ортасы
2.1-тақырыпта заманауи өндіріс және CALS-технологиясы бизнесі жағдайында ақпараттық жүйелерді дамытудың жаңа бағыты және осыған байланысты таратылған көп пайдаланылатын деректер базасын мекемелерде ұйымдастыруға көшіру қажеттілігі қарастырылды. Кез келген мекемеде бірыңғай ақпараттық кеңістікті құру бойынша жұмыстарды ұйымдастырудың негізгі бағыттарын қарастырайық. Осындай бағыттағы жұмыстардың тұжырымдамалық үлгісінен CALS-технологияларының негізі болып және осы құрылатын автоматтандырылған жүйелер негізі интеграцияланған ақпараттық орта болып табылады. ИАО ұғымы CALS-технологиялар пайда болғанға дейін ұзақ уақыт бойы ғылыми қолданысқа енгізілді. 1983 жылы жапон ғалымы Н. Окино материалдық нысандар мен оған ілеспе жобалау, технологиялық оқыту және басқарудың ілеспелі процестерін өндіру, адам қызметінің басқа түрлерінен өте ерекшеленетінін жариялады, оған бағдарламалық әдістемелік, математикалық және ақпараттық қамтамасыз етудің ерекше архитектурасы жауапты болуы керек екенін дәлелдеді. Оның пікірінше, өндіріс жүйесінде ақпараттарды өңдеу және есептеуіш техниканы басқа жағдайларда қолдану арасындағы негізгі айырмашылық негізінен екі ережеге апарады. Өндірістік проблемаларды шешуге бұл тәсіл іс жүзінде жүзеге асырылмайды, себебі олардың күрделілігі мен алуантүрлілігіне байланысты бірыңғай модель құрылу мүмкін емес. Сонымен қатар, егер Н. Окино зерттеген өндіріс мәселелеріне өнімнің жеткізілуін, пайдалануын, күтуін және жөндеуін, яғни өнімнің өмірлік циклының барлық өндірістік сатыларын ескеруді қарастырсақ, жағдай одан да күрделене түседі. Мұнда жүйе ядросының рөлін модель емес, жалпыға бірдей (интеграцияланған) деректер базасы (ЖДБ) жүзеге асырады, оған бағдарламалық қосымшалар түрінде жүзеге асырылған түрлі проблемалық-бағдарланған үлгілерге қол жеткізуге болады. ЖДБ- нда ақпараттық әлемде физикалық әлемнің мәндерін дәлме-дәл бейнелейтін – заттар, материалдар, бұйымдар, процестер және технологиялар, түрлі құжаттар, финанстық қорлар, бөлімше персоналы және өндіруші-кәсіпорын жабдығы, бұйымды тапсырыс берушіде пайдалану шарттары, сервистік және жөндеу жұмыстары және т.б. ақпараттық нысандар (АО) сақталады деп болжанады. Көрсетілген қосымшалар деректер базасының жалпы базасына жүгінеді, қажетті ақпараттық нысандарды табады, оларды өңдейді және өңдеу нәтижелерін ЖДБ орналастырады.
Пән саласы
Үлгі
Қосымша
Пән саласы
Үлгі
Қосымша
Пән саласы
Үлгі
Қосымша
Пән саласы
Үлгі
Қосымша
Белгілі бір шамада Н. Окино объективті операциялық дуализм негізінде ақпараттық әлемде болып жатқан барлық нәрселерді қарауды ұсынып, ДББЖ құруға нысанды-бағдарлы көзқарастың пайда болуын болжап білді.
Н. Окино ойларын дамыту мәні төмендегі көрсетілген.
Физикалық әлемнің кез келген мәні дектердің белгілі бір жиынтығы болып табылатын ақпараттық нысанға сәйкес келеді. Ақпараттық әлемде кез келген физикалық мәнді пайдалану, оның басқа мәнге (немесе сол мәнге, бірақ параметр мәндері басқа) түрленуі өңдеу, дайындау, өлшеу, жобалау операциясы (команда, бағдарлама және т.б.) арқылы көрсетіледі). Ақпараттық технологияларды одан әрі дамыту ДБЖЖ нысанды- бағдарлы амалдың пайда болуына әкелді, бұл кәсіпорында орын алған көптеген процестерді виртуалды ақпараттық кеңістікке аударуға және CALS-технологияларын қолдана отырып жүзеге асыруға мүмкіндік берді. Аталғандар әртүрлі типтегі техникалық құжаттардың жасалуы мен қолданылуы жүретін конструкторлық және технологиялық процестерге, сондай-ақ түрлі ақпараттардың үлкен көлемімен жұмыс жасауға тура келетін өндіріс пен бизнесті барлық деңгейде басқару процестеріне көбірек қатысты болады. Қазіргі уақытта бұл процестер негізінен интеграцияланған ақпараттық орта аясында ақпараттық нысандарды құру, қайта құру, тасымалдау және сақтау операцияларынан тұрады.
КАО өнімнің өмірлік циклінің қатысушылары – олардың өндірістік қызметінің барысында кәсіпорынның барлық бөлімшелері мен қызметтері пайдаланатын және пайдаланатын барлық ақпаратты қамтитын деректер қоймасы. Бұл қойма сыртқы және ішкі байланыстарды көрсететін күрделі құрылымға ие. КАО кем дегенде екі негізгі деректер базасын қамтуы керек: Өнімдердің өмірлік циклі бойынша процестермен өзара әрекеттесуі ұсынылған КАО құрылымы көрсетілген 18.2-суретте берілген, бұл процестерде КАО қамтылған ақпарат пайдаланылады және процестер кезінде пайда болатын ақпараттық нысандар КАО сақтау үшін қайтарылады және кейіннен басқа процестерде пайдаланылады.
Өнімнің жалпы деректер базасымен оның өмірлік циклінің барлық кезеңдеріндегі процестер байланысты болады. Кәсіпорын туралы жалпы деректер базасы өндірістің технологиялық және ұйымдастырушылық-экономикалық дайындығына және өндірістің өзіне (дайын өнімдерді тасымалдау және тасымалдау процестерін қоса алғанда) қатысты. Жаңа өнімді жасау және оны құрастырмалы және технологиялық АЖЖ (CAE/CAD/CAM) құралдары арқылы технологиялық дайындау кезінде КАО-да өнімнің құрылымын, оның құрамы мен барлық кіріс компоненттерін: бөлшектер, түйіндер, агрегаттар, жиынтықтағы материалдар және т.б. сипаттайтын ақпараттық нысандар құрылады. Әрбір ақпараттық нысан физикалық нысан қасиеттерін: техникалық талаптары мен шарттарды, геометриялық (өлшемді) параметрлерді, салмақтық-габариттік көрсеткіштер, беріктік, сенімділік, қор сипаттамасы және басқа да қасиеттері мен компоненттерін иеленеді. Жалпы деректер базасындағы ақпараттық нысандар кәсіпорын шығаратын барлық өнімдер үшін өндірістік процестің барлық кезеңдерінде талап етілетін техникалық құжаттаманы іске қосу және қолдау үшін қажет ақпараттың еркін форматында болады. Әрбір ақпараттық нысан бірегей кодпен анықталады және онымен әрекеттерді орындау үшін деректер базасынан алынуы мүмкін. Өнім туралы жалпы деректер базасы ақпараттық қызметтер мен қолдау қызметтерін ұсынады: БЖДБ кіретін ақпараттық нысандарды (18.3-сурет), шартты түрде үш бөлімге бөлуге болады:
БЖДБ
нормативтік-анықтамалық бөлімінің мазмұны жаңартылып отырады және қолданыстағы нормативтік құжаттарды кері қайтарады.
Ұзақ уақыттық бөлімде кәсіпорынның жеке тәжірибесін жинақтайтын деректерді қамтитын АО сақталуы керек. БЖДБ ұзақ уақыттық бөлімі типтік деп танылған және одан әрі қолдануға жарамды жаңа техникалық шешімдердің пайда болуына қарай толықтырылады және жаңартылады. Өзекті бөлімде (шамасы, көлемі бойынша ең үлкен және құрылымы бойынша ең күрделі), ӨЦ әртүрлі кезеңдерінде орналасқан бұйымдар туралы деректерді қамтитын АО сақталуы керек.
(СГ
Нормативтік- анықтамалық
бөлім
Ұзақ уақыттық бөлім _
Өзекті
СГ
т
Дайын жобалар
_ (мұрағат) _
Типтік түйіндер
Нормалы
Стандарттық
(сатып алынатын)
^ жиынтықталатын^
Өзі дайындаған стандарттық бөлшектер және түйіндер
бөлімМатериалдар
Техникалық _
талаптар ^
1
Тұжырымдамалық шешім _ г
- Типтік бөлшектер
Өнімнің
құрылымы мен құрамы
Типтік
конс лық
Өзі дайындаған стандарттық және типтік бөлшектердің
труктор технологиялық э
ЗБ-модельдері, тексеру есептерінің
Басқа фирмаларды жиынтықтаушы
лементтер
^ процестер ^
k
ЗБ-модельдер; жинау технологи
результаты проект- ных расчетов
и испытаний
Дайын және математикалық
модельдер
----------- 1
Басқа да типтік шешімдер
Типтік және топтық технологиялық
нәтижелері, технологиялық процестер,
бақылау нәтижелері
Стандарттық есептеу әдістері
Басқа да нормативтер мен стандарттар
ЗБ-модели ориги- нальных деталей,
результаты прове- Қалыпты,
стандартты және
сатып алынатын элементтердің ЗБ- модельдері,
кіріс бақылауының нәтижесі
Осы бөлімнің құрылымы өте жақын және қосымша бөліктерге (классификация деңгейлері) бөлуді қоса алғанда, даму және нақтылауды талап етеді. Жоғарыда айтылғандай, өнімдерге қатысты (тікелей немесе жанама) ақпараттық нысандардан басқа КАО кәсіпорын туралы ақпарат бар: оны өндіру және басқару құрылымы, технологиялық және көмекші жабдықтар, қызметкерлер, қаржы және т.б. Бұл деректердің жиынтығы КЖДБ құрайды, ол бірнеше бөлімдерден тұрады: экономика және қаржы, кәсіпорынның сыртқы байланыстары, кәсіпорынның өндірістік және технологиялық ортасы, сапа жүйесі. Экономика және қаржыға арналған бөлімде төмендегі мәліметтерді құрайтын ақпараттық нысандар сақталуы тиіс: Кәсіпорынның сыртқы байланыстары бөлімінде нақты және ықтимал жеткізушілер мен тұтынушылар (тұтынушылар) туралы ақпаратты қамтитын АО сақталуы тиіс. Бұл бөлім маркетингтік зерттеулер барысында құрылады және пайдаланылады. Өндірістік-технологиялық ортаға арналған бөлімде төмендегілерді қамтитын ақпараттық нысандар сақталады:
Сапа жүйесіне арналған бөлімде төмендегі мәліметтер сақталады: КАО-дан кәсіпорынның жұмыс істеуі үшін түрлі құжаттар алынуы мүмкін. Құжаттар
электронды түрде қалай берілсе, дәстүрлі қағаз түрінде де солай беріледі. CAE/CAD/CAM жүйелері арқылы электронды жобалауды орындау кезінде ИСО 10303-203 стандарт талаптарына жауап беретін, конфигурациялық басқарудың электронды құралдары да қолданылуы қажет.
басқару
Кәсіпорынның интеграцияланған ақпараттық ортасын басқару ондағы барлық процестер басқарылады деп болжайды, яғни оларға уәкілетті тұлғалардың (әкімшіліктердің) және тиісті бағдарламалық жасақтаманың әсер етуі мүмкін. Осындай құралдардың жиынтығы әдетте деректер базасын басқару жүйесі деп аталады. ДББЖ функциялары мынадай: КАО дәстүрлі деректер базасынан айырмашылығы, өнімнің ӨЦ қызығушы барлық қатысушылары арасында деректерді жинақтау, сақтау және беруді көздейтін арнайы инфрақұрылымды құруды талап етеді. Мұндай инфрақұрылым аталған міндеттерді шешуге мүмкіндік беретін бағдарламалық және аппараттық кешен болуы керек. Бірыңғай (тек) өндіріс алаңында орналасқан дәстүрлі кәсіпорын шеңберінде осындай инфрақұрылым жергілікті компьютерлік желі және тиісті жүйелік және қолданбалы бағдарламалық қамтамасыз ету негізінде құрылады. Географиялық бөлінген өндірістік құрылымы бар кәсіпорындар үшін, әсіресе, виртуалды кәсіпорындар үшін бұл мәселе өте маңызды. Телекоммуникация құралдарының және жүйелерінің жай-күйін талдау қазіргі уақытта виртуалды кәсіпорынның жаһандық инфрақұрылымы, сондай-ақ географиялық жағынан таралған құрылымы бар кәсіпорын ғаламдық Интернет болуы мүмкін, бұл деректер TCP / ІP протоколы арқылы берілетінін айтуға мүмкіндік береді.
Интернеттің сыртқы қарапайымдылығы мен қол жетімділігіне қарамастан, оны құрылымдау құралы ретінде пайдалану бірқатар нақты мәселелерге байланысты.
Бірінші мәселе КАК (кіріктірілген ақпараттық кәсіпорын) технологиясына сәйкес ақпарат алмасудың барлық қатысушыларының деректерді тиімді жинақтау, сақтау және пайдалану үшін Интернет технологиясында әдетте портал деп аталатын деректерді сақтау журналын логикалық түрде оқшаулау керек. Басқаша айтқанда, кәсіпорынның, виртуалды кәсіпорынның немесе корпорацияның ақпараттық қызметі үшін арнайы Интернет торабын жасау керек.
Екінші мәселе Интернеттің бұл торабы және тиісті ақпарат алмасудың қатысушылары зиянды ниеттер немесе қаскөйлік мүдделер болмаса да, рұқсат етілмеген адамдар мен ұйымдар тарапынан араласудан қорғалуы керек.
Үшінші мәселе бұл ақпаратты қаскөйлік мақсаттарда пайдалануды мақсат еткен тұлға және ұйымдардан санкцияланбаған қолжетімді ақпаратты қорғаудан тұрады (мемлекеттік және (немесе) коммерциялық құпияны құрайтын мәліметтерді ұрлау, деректерінің тұтастығын және (немесе) ақпарат алмасуға қатысушылардың жіберген деректердің нақтылығын бұзылған және т.б.).
Өнімнің сапасын басқару жүйесі кәсіпорынның басқару қызметінің элементі болып табылады. ИСО 9000: 2000 халықаралық стандартына сәйкес, сапа менеджменті ЖЦ өнімінің барлық сатыларында деректерді автоматтандырылған өңдеуді және сапаны қамтамасыз ету процедураларының құжаттамасын қолдайтын ақпараттық жүйеге, сондай-ақ осы процестерді, деректерді және құжаттарды автоматтандырылған басқаруды негізге алуы керек. Бұл тұрғыда сапа менеджменті кәсіпорындарды басқарудың автоматтандырылған жүйесінің ажырамас бөлігі болып табылады және CALS-технологияларына жатқызылуы мүмкін. Бұл сапа менеджменті жүйесі туралы ақпарат CALS-технологияларының стандарттарымен реттелетін форматтарда ұсынылуы керек және КАК кәсіпорнына енгізілген ақпараттық нысандардың жиынтығынан тұруы керек дегенді білдіреді. Сапаны басқару жүйесінің кеңейтілген құрылымы 18.4-суретте келтірілген, жүйенің басқару нысанымен (өнімдердің ӨЦ процестері) байланысын, сондай-ақ қарастырылып отырған жүйедегі қоршаған орта жағдайын көрсетеді, бұл жағдайда өз қажеттіліктеріне және өніммен қанағаттану дәрежесіне ие жалпылама тұтынушы болып табылады.
242
Төмендетілген жүйенің құрамында болған фактілерге негізделген мақсаттар мен шешімдерді әзірлеу және түзету блоктары ИСO 9000: 2000 стандарты бойынша басқару және жоспарлау жауапкершілігі деп аталады (бұл жағдайда стратегиялық). Тұтынушылардан деректер жинау және талдау блоктары және процестер туралы ақпарат стандартта анықталған процестерді өлшеу және талдау ретінде көрсетеді. Шешімдерді іске асырумен байланысты (ресурстарды бөлу және қайта бөлу, мақсаттарға қол жеткізуге бағытталған іс-әрекеттер мен әрекеттер бойынша нұсқаулар) блоктар тобы стандартта ресурстарды басқару, жоспарлау (осы жағдайда – жедел) және жақсарту процестерін бейнелейді. Жоғарыда айтылғандай, жаңа бұйымды конструкторлық және технологиялық АЖЖ (CAD/CAM) құралдарымен құру және технологиялық дайындау кезінде, КАО-да бұйым құрылымы, құрамы және оған кіретін барлық комполненттер: бөлшектер, түйіндер, агрегаттар, жиынтықтағы материалдар және т.б. сипаттайтын АО құрылады. Әрбір АО нақты нысанның қасиеттерін сипаттайтын сипаттамалар (атрибуттар) жинағына ие болады. Сапаны басқару процесіндегі техникалық талаптар және нақты нысан сәйкес келетін техникалық шарттар осындай сипаттар болып табылады. КАО-да өнім туралы ақпаратқа қосымша сапаны басқаруға қатысты деректер енгізілген кәсіпорынның өндірістік ортасы туралы ақпарат та болады.
Жұмыс ағыны (workflow) туралы ұғым — заманауи басқару практикасындағы және БАҚ саласындағы негізгілердің бірі. Бұл ұғым кәсіпорынның бизнес-процестерін формализациялау мен басқару тәсілдерін, сондай-ақ осы тәсілдерді іске асыратын бағдарламалық қамтамасыз етуді біріктіреді. Жұмыс технологиясын енгізудің танымалдылығы мен алуан түрлілігі 1990 жылдардың ортасында workflow жүйелері мен оларды жүзеге асыру құралдары талаптарын реттеу стандарттарымен айналысатын Wf MC (Workflow Management Coalіtіon – WfMC) халықаралық бірлестігінің құрылуына әкелді. WfMC глоссарийіне сәйкес, бизнес процесі – белгілі бір іскерлік тапсырманы немесе кәсіпорынның саяси мақсатын ереже бойынша, функционалдық рөлі мен қатынасын сипаттайтын, ұйымдастыру құрылымы аясында бірлесіп жүзеге асыратын бір немесе бірнеше өзара байланысты процедуралар немесе операциялар (функциялар). Бизнес- процесс толықтай бір ұйымдық бөлімше шегінде жүзеге асырылуы мүмкін, ұйым ішіндегі бірнеше бөлімшелерді немесе бірнеше түрлі нұсқаларды қамтиды,
мысалы, клиент-жеткізуші қатынас жүйесінде. Іскерлік процесс қатысушылар арасында ресми және бейресми қарым-қатынастарды қамтуы мүмкін; оның ұзақтығы әртүрлі болуы мүмкін. Жұмыс ағыны – бұл жұмыскерлерге уақытқа белгіленіп берілген жұмыс тапсырмаларының жиынтығы. Олар тапсырмаларды қолмен немесе механикаландыру (автоматтандыру) көмегімен және осы бизнес процесі үшін анықталған ережелерге сәйкес өндіреді. Бизнес- процесс – өз ережелері және технологияларына сәйкес жұмыс істейтін конвейердің түрі, ал жұмыс ағыны (тапсырмалар) осы конвейермен қозғалатын өнімдерінің (түйіндер, бөлшектер) ағынына ұқсас. Бизнес-процесс жұмыс ағыны мен функцияларды осы тапсырманы іске асыратын адамдар мен жабдықтардың элементтері (міндеттері), сондай-ақ олардың орындалуын реттейтін ережелермен орындалуы тиіс тапсырмалар мен функцияларды біріктіреді. Технологиялық жұмыс бәрін автоматтандыруға арналған.
WfMC глоссарийінен екі анықтама келтірейік.
Мұндай жүйе функцияны емес, процесті автоматтандырады. Жұмыс үрдісін басқару жүйелерінің және тиісті бағдарламалық құралдардың пайда болуы ақпараттық технологиялар нарығының жаңа кәсіпорындарды басқару принциптерін енгізуіне реакциясы болып табылады. Бүгінде бұл қағидалар функционалдық бағдардан (1776 жылы Адам Смит ойлап шығарған және екі ғасырдан астам уақыт бойы жұмыс істеген) процестік бағдарлау бағытында дамиды. Бұрынғы барлық дерлік шешімдер (көбіне жергілікті ДҚБЖ технологиясында енгізілген) процестен гөрі кейбір операцияларды және функцияларды тиімді автоматтандыруға мүмкіндік берді. Осы шешімдердің бір бөлігі ретінде, қызметкерлер өз компьютерлерінде (немесе терминалдарында) отырғанда, мәліметтер базасымен және өздерімен бірге ақпарат алмасып, деректер, сертификаттар, құжаттар, формалар туралы есептерді алады. Сонымен қатар, қызметкерлердің іс-қимыл тәртібі және олардың өзара әрекеттесу ережелері нұсқаулықтармен анықталады, сондай-ақ оларды орындау дұрыстығы мен мерзімдерін жоғарыдағы басшылары қадағалап отырады. Ақпараттық жүйе мұны ешқандай жолмен қолдамайды.
Процесті амал кәсіпорын басшыларын процеске қатысушылардың өзара әрекет етуін ережелерге бағындыруға мәжбүр етті, себебі өзара әрекет ету өзінің көмескі болуы және жеткіліксіз анық болмауынан дәлелсіз шығын және жоғалудың негізгі көзі болып табылады. Жекелеген функцияларды (операцияларды), құжат маршруттарын, процестің әртүрлі кезеңдерінде қызметкерлерді жұмысқа орналастыру тәртібін және уақытын автоматты түрде қадағалау қажеттілігі жұмыс процесін басқарудың түрлі жүйелерін құруға және осы тұжырымдаманы БАҚ концепциясының негізгі нұсқаларының бірі ретінде бекітуге әкелді.
Бақылау сұрақтары
ӘДЕБИЕТТЕР ТІЗІМІ
— СПб. : Питер, 2001. — 304 б.
— М. : Эком, 2002.
«Вильямс» баспа үйі, 2003. — 1440 б.
«Академия» баспа орталығы, 2005. — 320 б.
МАЗМҰНЫ
Алғы сөз 3
Кіріспе 5
І БӨЛІМ
Қашықтан деректер базасын жобалаудың теориялық негіздері
1-тарау. Қашықтағы деректер базасының архитектуралары
12
2-тарау. Қашықтағы деректер базасын басқару жүйелерін әзірлеу
және пайдалану тәртіптері
31
әзірлеу тәртібі 33
ІІ БӨЛІМ
Қашықтатан деректер базасын әзірлеу және басқару жүйелері 3-тарау. SQL тілі құралдарымен деректер базасын әзірлеу және басқару технологиялары
47
4-тарау. SQL Server 2000 жүйесінде қашықтағы деректер базасын басқару
53
5-тарау. Oracle жүйесіндегі қашықтағы деректер базасын басқару 65
6-тарау. Қашықтан деректер базасына қолжетімділік технологиясы 80
ұйымдастыру құрылымы 80
ІІІ БӨЛІМ
Деректер базасы қосымшасының серверлік бөлімін жобалау
7-тарау. Қосымшаның серверлік бөлімін жобалаудың
әдістемелік негіздері 102
8-тарау. Қосымшаның серверлік бөлімін жобалау технологиялары 109
Access ДББЖ қолдану 109
форматына түрлендірумен серверлік қосымша құру 111
ІV БӨЛІМ
Деректер базасы қосымшасының клиенттік бөлімін жобалау
9-тарау. Деректер базасының клиенттік бөлімін жобалаудың
жалпы тәртіптері 132
10-тарау. SQL операторларын қолданумен қашықтан деректер базасын басқару бағдарламасын әзірлеу 150
біржолды және көпжолды сұрауларды орындау 151
153
11-тарау. Қашықтан деректер базасын әзірлеудегі Web-технологиялар 157
мен кіріктіруге қойылатын талаптар 162
кіріктіру әдістері 163
V БӨЛІМ
Қашықтан деректер базасын басқару және пайдалану
12-тарау. Ақпаратты қорғау және деректерге қолжетімді басқару 168
дискіде құруға арналған бағдарлама 186
13-тарау. Дағдарысты жағдаятта деректерді қалпына келтіру 199
VІ БӨЛІМ
Қашықтан деректер базасын басқарудың реляциядан кейінгі жүйелері
14-тарау. Кеңейтілген реляциялық модельге ДББЖ дамуын бағдарлау
....................................................................................................................... 206
бағыттары 206
жүйесін генерациялау 208
оңтайландыру 209
темпоральді сұрауларды қолдау 209
15-тарау. Нысанды-бағдарланған ДББЖ
211
амалдардың жалпы ұғымы 211
бағдарламалау тілдері 215
16-тарау. Нысанды-бағдарланған Cache ДББЖ
219
17-тарау. Ережелерге негізделген деректер базасының жүйелері
229
18-тарау. Өнімнің өмірлік циклын басқарудың көп пайдаланушылық жүйелері ..................................................................................................................233
ортасының құрылымы мен құрамы 236
ортасын басқару 240
Әдебиеттер тізімі 246
Оқу баспасы
Фуфаев Эдуард Валентинович, Фуфаев Дмитрий Эдуардович
Қашықтан деректер базасын әзірлеу және пайдалану
Оқулық
4 рет басылған, стереотипті
Редакторы
В. Н. Махова
Техникалық редакторы
Н. И. Горбачева
Компьютерлік беттеуші:
Р.Ю. Волкова
Түзетушілер
Т. В. Кузьмина, Н.Л.Котелина
Баспа № 104108336. Басуға қол қойылды 09.09.2013. Формат 60x90/16. Қағаз офс. № 1. Гарнитура «Таймс». Басу офсет. басу б. 16,0.
Тиражы 1 000 дана. Тапсырыс №
«Академия» баспа орталығы» ҚБҰ.
www.academіa-moscow.ru
129085, Мәскеу, Бейбітшілік д., 101В, стр. 1.
Тел./факс: (495) 648-0507, 616-00-29.
Санитарлық-эпидемиологиялық қорытынды № РОСС RU. AE51. H 16476 05.04.2013. Баспамен ұсынылған электронды тасығыштардан басылды, «Саратовский полиграфкомбинат» баспасында.
www.sarpk.ru
410004, Саратов қ., Чернышевский к., 59.
Пікірлер (0)
Пікір жазу үшін аккаунтқа кіріңіз. Кіру