БізнесСпытайце ў эксперта

Асноўныя функцыі СКБД

Сучасныя сістэмы кіравання базамі дадзеных прымяняюцца на многіх аб'ектах, але пры гэтым далёка не ўсе ведаюць, што яны сабой уяўляюць і як можна выкарыстоўваць функцыі СКБД. Такія інструменты адрозніваюцца вялікай колькасцю магчымасцяў, таму для паўнацэннага іх выкарыстання варта разабрацца ў тым, што яны могуць рабіць і чым карысныя для карыстальніка.

кіраванне дадзенымі

У першую чаргу, у функцыі СКБД ўваходзіць апрацоўка інфармацыі ў знешняй памяці, і дадзеная функцыя ўяўляе сабой забеспячэнне асноўных структур УП, якія патрэбныя не толькі для захоўвання інфармацыі, непасрэдна уключанай у базу дадзеных, але і для выканання розных службовых задач, такіх як атрыманне паскоранага доступу да якіх-небудзь файлаў у розных выпадках. У пэўных мадыфікацыях актыўна прымяняюцца магчымасці розных файлавых сістэм, у той час як іншыя прадугледжваюць правядзенне работ нават на ўзроўні прылад вонкавай памяці. Але ў дадзеным выпадку варта адзначыць, што ў функцыі СКБД, якія маюць высокую ступень развіцця, карыстач у любым выпадку не інфармуецца аб тым, ці выкарыстоўваецца якая-небудзь сістэма, і калі так, то як арганізуюцца файлы. У прыватнасці сістэма займаецца падтрымкай ўласнай парадку наймення аб'ектаў, уключаных у базу дадзеных.

Кіраванне буферамі АЗП

У пераважнай большасці выпадкаў функцыі СКБД прынята выкарыстоўваць у досыць аб'ёмных базах дадзеных, і гэты памер як мінімум часцяком значна больш даступнага аб'ёму АЗП. Вядома, калі ў выпадку звароту да кожнага элементу дадзеных будзе ажыццяўляцца абмен з вонкавай памяццю, хуткасць апошняй будзе адпавядаць хуткасці самой сістэмы, таму практычна адзіным варыянтам рэальнага яе павелічэння з'яўляецца буферызацыя інфармацыі ў АЗП. Пры гэтым нават калі АС ажыццяўляе Агульнасістэмныя буферызацыю, напрыклад з UNIX, гэтага не будзе дастаткова для таго, каб забяспечваць у СКБД прызначэнне і асноўныя функцыі, так як яна размяшчае значна вялікім аб'ёмам дадзеных аб карысных уласцівасцях буферызацыі кожнай канкрэтнай часткі выкарыстоўванай базы дадзеных. За кошт гэтага развітыя сістэмы падтрымліваюць уласны камплект буфераў, а таксама ўнікальную дысцыпліну іх замены.

Варта адзначыць той факт, што існуе асобны кірунак сістэм кіравання, арыентаванае на бесперапыннае прысутнасць у АЗП ўсёй базы дадзеных. Такі кірунак грунтуецца на дапушчэнні аб тым, што ў недалёкай будучыні аб'ём АЗП кампутараў змогуць пашырыць настолькі, што аб якой-небудзь буферызацыі ўжо не будуць турбавацца, і асноўныя функцыі СКБД такога тыпу тут прыйдуцца як раз дарэчы. На дадзены момант усе гэтыя працы застаюцца на этапе тэставання.

Упраўленне транзакцыямі

Транзакцыя з'яўляецца паслядоўнасцю аперацый з якая выкарыстоўваецца базай дадзеных, якія сістэма кіравання разглядае ў якасці адзінага цэлага. Калі транзакцыя цалкам паспяхова выконваецца, сістэмай фіксуюцца змены, якія былі ёю зроблены, у знешняй памяці або ніякія з названых змяненняў не будуць адбівацца на стане БД. Дадзеная аперацыя патрабуецца для таго, каб забяспечыць падтрымку лагічнай цэласнасці выкарыстоўванай БД. Варта адзначыць, што падтрыманне правільнага ходу механізму транзакцый з'яўляецца абавязковай умовай нават пры ўжыванні аднакарыстальніцкіх СКБД, прызначэнне і функцыі якіх значна адрозніваюцца ад іншых тыпаў сістэм.

То ўласцівасць, што любая транзакцыя пачынаецца толькі пры цэласным стане базы дадзеных і пры гэтым пакідае яе ў такім жа стане пасля заканчэння правядзення працэдуры, робіць яе выкарыстанне вельмі зручным у якасці адзінкі актыўнасці датычна БД. Пры належным кіраванні паралельна спаўняецца транзакцыямі з боку сістэмы кіравання кожны асобны карыстальнік, у прынцыпе, можа адчуваць сябе часткай цэлага. Аднак гэта ў нейкай меры ідэалізаванае ўяўленне, так як у многіх сітуацыях пры працы людзі ўсё-ткі будуць адчуваць прысутнасць сваіх калегаў, калі імі ўжываецца многопользовательская сістэма, але на самой справе гэта прадугледжвае і само паняцце СКБД. Функцыі СКБД шматкарыстальніцкага тыпу звязваюць таксама з кіраваннем транзакцыямі такія паняцці, як серыяльны план выканання і серыялізацыя.

Што яны азначаюць?

Серыялізацыя паралельна выконваюцца транзакцый прадугледжвае пабудову спецыяльнага плана іх працы, пры якім сумарна якi дасягаецца эфект сумесі эквівалентны атрыманага выніку з прычыны іх паслядоўнага выканання.

Серыяльны план выканання ўяўляе сабой пэўную структуру дзеянняў, якая прыводзіць да серыялізацыі. Вядома, калі ў сістэме атрымліваецца забяспечыць сапраўды Серыяльная выкананне сумесі транзакцый, то для любога карыстальніка, якім утвараецца транзакцыя, прысутнасць іншых будзе абсалютна незаўважна, за выключэннем таго, што працаваць ён будзе трохі павольней у параўнанні з аднакарыстальніцкім рэжыме.

Ёсць некалькі асноўных алгарытмаў серыялізацыі. У цэнтралізаваных сістэмах найбольш папулярнымі на сённяшні дзень з'яўляюцца алгарытмы, якія грунтуюцца на сінхранізацыйнае захопах розных аб'ектаў базы дадзеных. У выпадку прымянення якіх-небудзь алгарытмаў серыялізацыі прадугледжваецца магчымасць ўзнікнення канфліктаў паміж двума або вялікай колькасцю транзакцый па доступе да пэўных аб'ектах базы. У такой сітуацыі, каб забяспечыць падтрымку дадзенай працэдуры, трэба выканаць адкат, то ёсць ліквідаваць любыя вырабленыя ў БД змены праз адзін або большая колькасць працэсаў. Гэта толькі адна з сітуацый, калі ў шматкарыстальніцкай сістэме чалавек адчувае прысутнасць іншых.

Журнализация

Адным з асноўных патрабаванняў да сучасных сістэм з'яўляецца забеспячэнне надзейнасці захоўвання інфармацыі ў знешняй памяці. У прыватнасці гэта прадугледжвае, што ў лік асноўных функцый СКБД ўваходзіць магчымасць аднаўлення апошняга ўзгодненага стану базы дадзеных пасля ўзнікнення якіх-небудзь праграмных або апаратных збояў. У пераважнай большасці выпадкаў прынята разглядаць два варыянты апаратных збояў:

  • мяккія, якія могуць трактавацца як нечаканая прыпынак працы кампутара (самы распаўсюджаны выпадак - аварыйнае адключэнне харчавання);
  • жорсткія, якія характарызуюцца частковай або поўнай стратай дадзеных, якія захоўваюцца на вонкавых носьбітах.

У якасці прыкладаў праграмных збояў можна прывесці аварыйнае завяршэнне працы сістэмы пры спробе выкарыстання якой-небудзь магчымасці, якая ў лік асноўных функцый СКБД не ўваходзіць ці аварыйнае завяршэнне працы якой-небудзь карыстацкай утыліты, з прычыны чаго пэўная транзакцыя не была завершана. Першая сітуацыя можа разглядацца ў якасці адмысловага выгляду мяккага збою, у той час як пры ўзнікненні апошняй трэба ліквідацыю наступстваў адзінай транзакцыі.

Вядома, у любым выпадку для нармальнага аднаўлення базы дадзеных трэба мець пэўны аб'ём дадатковых звестак. Іншымі словамі, для нармальнага падтрымання надзейнасці захоўвання дадзеных у БД трэба забяспечваць надмернасць захоўвання інфармацыі, прычым частка дадзеных, якая выкарыстоўваецца пры аднаўленні, павінна засцерагацца асабліва старанна. Самым распаўсюджаным метадам, што забяспечваюць падтрыманне такіх залішніх дадзеных, лічыцца вядзенне часопіса змяненняў.

Што гэта і як выкарыстоўваецца?

Часопіс ўяўляе сабой асаблівую частку базы дадзеных, доступ да якой у лік функцый СКБД не ўваходзіць, і падтрымліваецца яна асабліва старанна. У некаторых сітуацыях нават прадугледжваецца падтрымка адначасова двух копій часопіса, якія знаходзяцца на розных фізічных носьбітах. У гэтыя сховішчы паступае інфармацыя аб любых зменах, якія адбываюцца ў асноўнай часткі БД, і ў розных сістэмах кіравання змены могуць журнализироваться на самых розных узроўнях. У некаторых сітуацыях запіс у часопісе цалкам адпавядае нейкай канкрэтнай лагічнай аперацыі змены, дзесьці - мінімальнай ўнутранай аперацыі, звязанай з мадыфікацыяй старонкі вонкавай памяці, у той час як некаторыя СКБД прадугледжваюць выкарыстанне камбінацыі двух падыходаў.

У любым выпадку выкарыстоўваецца так званая "стратэгія папераджальнай запісу" у часопіс. Пры яе ўжыванні запіс, якая сведчыць аб змене якіх-небудзь аб'ектаў базы дадзеных, трапляе ў навакольнае памяць часопіса раней змянянага аб'екта. Вядома, што калі функцыі СКБД Access прадугледжваюць нармальнае захаванне дадзенага пратаколу, з дапамогай часопіса вырашаюцца любыя праблемы, звязаныя з аднаўленнем базы дадзеных пры ўзнікненні якіх-небудзь збояў.

адкат

Найбольш просты сітуацыяй аднаўлення з'яўляецца індывідуальны адкат транзакцыі. Для гэтай працэдуры не трэба выкарыстоўваць агульнасістэмны часопіс змяненняў, і цалкам дастаткова выкарыстоўваць для кожнай транзакцыі лакальны часопіс аперацый мадыфікацыі, пасля чаго адкатваць транзакцыі з дапамогай выканання зваротных аперацый, пачынаючы ад канца кожнай з запісаў. Структура функцыі СКБД часта прадугледжвае выкарыстанне менавіта такой структуры, але ў большасці выпадкаў лакальныя часопісы ўсё ж такі не падтрымліваюцца, а індывідуальны адкат нават па асобных транзакцыях праводзіцца па Агульнасістэмныя, і для гэтага ўсе запісы кожнай з транзакцый аб'ядноўваюцца зваротным спісам.

Пры ўзнікненні мяккага збою вонкавая памяць базы дадзеных можа ўключаць у сябе розныя аб'екты, якія былі мадыфікаваны транзакцыямі, не скончаныя да моманту ўзнікнення збою, а таксама могуць адсутнічаць розныя аб'екты, мадэрнізаваныя тымі, якія паспяхова завяршыліся да няспраўнасці за кошт выкарыстання буфераў аператыўнай памяці, змесціва якіх цалкам знікае пры ўзнікненні падобныя да праблем. Калі будзе выконвацца пратакол, які прадугледжвае выкарыстанне лакальных часопісаў, у знешняй памяці абавязкова застаюцца запісы, якія адносяцца да мадыфікацыі любых такіх аб'ектаў.

Галоўнай мэтай працэдуры аднаўлення пасля ўзнікнення мяккіх збояў з'яўляецца такі стан вонкавай памяці асноўнай базы дадзеных, якое ўзнікла б у выпадку фіксацыі ў УП змяненняў любых закончаных транзакцый і пры гэтым не ўтрымлівала б слядоў няскончаных працэдур. Каб дамагчыся такога эфекту, асноўнымі функцыямі СКБД з'яўляюцца ў гэтым выпадку адкат незавершаных транзакцый і паўторнае прайграванне тых аперацый, вынікі якіх у канчатковым выніку не адлюстраваліся ў знешняй памяці. Дадзены працэс прадугледжвае досыць вялікая колькасць тонкасцяў, якія галоўным чынам ставяцца да арганізацыі кіравання часопісам і буферамі.

жорсткія збоі

Пры неабходнасці аднаўлення базы дадзеных пасля ўзнікнення жорсткіх збояў выкарыстоўваецца не толькі часопіс, але яшчэ і архіўная копія базы дадзеных. Апошняя ўяўляе сабой поўную копію БД да таго моманту, як пачалося запаўненне часопіса. Вядома, для правядзення нармальнай працэдуры аднаўлення патрабуецца захаванасць часопіса, таму, як гаварылася раней, да яго захаванасці ў знешняй памяці прад'яўляюцца вельмі сур'ёзныя патрабаванні. У такім выпадку аднаўленне базы дадзеных складаецца ў тым, што, грунтуючыся на архіўнай копіі, па часопісу прайграваюцца ўсе праведзеныя транзакцыі, завершаныя да моманту ўзнікнення збою. Пры неабходнасці можа нават прайгравацца праца незавершаных транзакцый і працяг іх нармальнай працы пасля заканчэння працэдуры аднаўлення, але ў большасці рэальных сістэм такая працэдура не праводзіцца па той прычыне, што само па сабе аднаўленне пасля жорсткіх збояў ўяўляе сабой даволі працяглую працэдуру.

падтрымка моў

Для працы з сучаснымі базамі дадзеных выкарыстоўваюцца розныя мовы, і ў ранніх СКБД, прызначэнне, функцыі і іншыя асаблівасці якіх значна адрозніваліся ад сучасных сістэм, прадугледжвалася падтрымка некалькіх вузкаспецыялізаваных моў. У асноўным гэта былі SDL і DML, прызначаныя для вызначэння схемы БД і маніпулявання дадзеных адпаведна.

SDL выкарыстоўваўся для таго, каб вызначаць лагічнае будынак базы дадзеных, гэта значыць пазнаваць канкрэтную структуру БД, якая прадстаўлена карыстальнікам. DML жа уключаў у сябе цэлы комплекс аператараў маніпуляцыі звесткамі, які дазваляе ўносіць інфармацыю ў БД, а таксама выдаляць, мадыфікаваць або выкарыстоўваць ужо існуючыя дадзеныя.

Да функцый СКБД ставяцца розныя віды падтрымкі адзінага інтэграванага мовы, які прадугледжвае наяўнасць любых сродкаў, неабходных для нармальнай працы з базамі дадзеных, пачынаючы ад яе першапачатковага стварэння, і які забяспечвае стандартны карыстацкі інтэрфейс. У якасці стандартнага мовы, які забяспечвае асноўныя функцыі СКБД самых распаўсюджаных у нашы дні рэляцыйных сістэм, выкарыстоўваецца SQL.

Што ён сабой уяўляе?

У першую чаргу гэтая мова аб'ядноўвае ў сабе асноўныя функцыі DML і SDL, гэта значыць забяспечвае магчымасць вызначэння канкрэтнай семантыкі рэляцыйнай базы дадзеных і маніпулявання патрэбнай інфармацыяй. Пры гэтым найменне розных аб'ектаў БД падтрымліваецца непасрэдна на моўным узроўні ў тым сэнсе, што кампілятарам ажыццяўляецца пераўтварэнне імёнаў аб'ектаў у іх унутраныя ідэнтыфікатары, заснаванае на спецыяльна падтрымоўваных службовых табліцах-каталогах. Ядро жа сістэм кіравання ў прынцыпе ніяк не ўзаемадзейнічае з табліцамі або іх асобнымі слупкамі.

Мова SQL ўключае ў сябе цэлы пералік спецыяльных сродкаў, якія дазваляюць вызначыць абмежаванні цэласнасці базы дадзеных. Зноў жа, любыя такія абмежаванні ўключаюцца ў спецыяльныя табліцы-каталогі, і кантроль цэласнасці ажыццяўляецца непасрэдна на моўным узроўні, гэта значыць у працэсе счытвання асобных аператараў мадыфікацыі БД кампілятар, грунтуючыся на наяўных у базе абмежаваннях цэласнасці, праводзіць генераванне адпаведнага праграмнага кода.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 be.birmiss.com. Theme powered by WordPress.