Лекция №14 - разпределени бази данни, платформа съдържание

Появата на компютърни системи с бази данни, е довело до промяна на предишните методи за обработка на данни, в които всяко приложение се определят и поддържат свои собствени масиви от данни, нови, в които всички данни, е с централно определени и поддържани. А напоследък има бързо развитие на мрежата комуникационни технологии и обмен на данни, причинена от създаването на Интернет. появата на мобилни и безжични компютърни ресурси, както и "умни" устройства. Сега, под влиянието на тези две противоположни тенденции разпределена база данни, технология улеснява обратен преход от централизирана към децентрализирана обработка на данни. Разработване на технология на разпределени системи за управление на бази данни е един от най-големите постижения в областта на базите данни.

В момента основно се счита за централизирана система за база данни, т.е.. Д. система, в която само един логичен база данни, поместен в един възел, и се контролира от СУБД. Сега нека да обсъдят принципите и проблемите, свързани с разпределена база данни, което позволява на крайните потребители да имат достъп не само до данните, съхранени в своя сайт, но също така и до данни, разположени на различни отдалечени обекти. Пресата многократно е направил изявления в смисъл, че във връзка с процеса на отглеждане на преход към технологични компании разпределени бази данни, централизирана база данни, само за няколко години се превърне в античен рядкост.

Основна предпоставка за развитието на системи, използващи базата данни, е желанието да обедини всички преработени в тези организации заедно и да осигури контролиран достъп до тях. Въпреки, че интеграцията и предоставянето на контролиран достъп може да допринесе за централизация, че последният не е самоцел. На практика, създаването на компютърни мрежи води до децентрализация на обработка на данни. Децентрализиран подход, в действителност, е отражение на организационната структура на много компании, логично, съставен от отделни сектори, отдели и екипи по проекти, и така нататък. Н., които физически се разпределят в различни офиси, офиси, фирми или филиали, както и всяка отделна производствена единица се занимава със собствен набор обработени данни. Разработване на разпределени бази данни, отразяващи организационната структура на предприятието позволява да се направи публично достъпни данни, поддържани от всяка една от съществуващите звена, като същевременно се гарантира, че тяхното съхранение в тези места, където те са най-често се използва. Такъв подход засилва споделянето на информация, като същевременно увеличаване на ефективността на достъпа до него.

Разпределени системи са предназначени за решаване на проблема на информационните острови. Ако фирмата Ви има няколко бази данни, те понякога се разглежда като един вид разпръснати територии, които са изолирани и недостъпни за много места като отдалечени едно от други острови. Тази ситуация може да възникне от географски дисперсия, несъвместимост използват компютърни архитектури, комуникационни протоколи, използвани несъвместимост и т. Г. Това положение може да се промени интегрирането на отделни бази данни в една единствена логическа единица.

За да започне обсъждането на проблемите, свързани с разпределена база данни, първо трябва да се разбере какво е разпределена база данни.

Разпределена база данни: Набор от логически свързани групи от общи данни (и техните описания), които са физически разпределени в компютърна мрежа.

Това означава следното определение за разпределена база данни:

Разпределена база данни: софтуерен пакет, предназначен да управлява разпределена база данни и предоставяне на прозрачна потребителския достъп до разпределени информация.

разпределена система (СУБД разпределени) за управление на база данни се състои от един логичен база данни разделена на няколко по-фрагменти. Всяка база данни фрагмент съхранява на един или повече компютри, изпълняващи база данни отделно и свързани помежду си чрез комуникационна мрежа. Всеки възел може самостоятелно да се справят с искания потребителски изискват достъп до данни, съхранявани локално (т. Е., всеки възел има определена степен на автономия) и също така в състояние да обработва данните, съхранявани в други компютри в мрежата.

Потребителите взаимодействат с базата данни чрез приложение в разпределена. Приложенията могат да бъдат разделени на не трябва да има достъп до данни за други възли (местни приложения) и изискват такъв достъп (глобално приложение). най-малко един глобален кандидатстване трябва да съществува в разпределена база данни, така че всяка такава база данни има следните характеристики:

§ Има набор от логически свързани споделени данни.

§ съхранените данни са разделени на множество фрагменти.

§ репликация може да бъде предоставена парчета от данни.

§ Фрагменти и техните копия се намират в различни възли.

§ точки, взаимно мрежовите връзки.

достъп § данни се извършва на всеки възел под контрола на СУБД.

§ СУБД на всеки възел е в състояние да поддържа автономна работа на местни приложения.

§ база данни за всеки възел поддържа най-малко един глобален приложение.

Но не е необходимо да се във всеки един от възлите в системата там има своя локална база данни, както е показано в пример топологията на разпределена база данни, показан на фигура:

Разпределена база данни топология

Базата данни на дефиниция означава, че тя трябва да направи данните за разпределение по себе си е прозрачен (невидим) на крайния потребител. С други думи, от потребителите трябва да бъдат напълно скрити от факта, че разпределена база данни се състои от няколко части, които могат да бъдат разположени на различни компютри, и за кого, може би дори и организираната репликация на данните. Целта на прозрачност е разпределена система да изглежда външно като централизирана. Понякога това изискване е посочена като основен принцип на разпределени бази данни. Този принцип изисква предоставянето на широка гама от крайния потребител функционалност, но, за съжаление, в същото време определя софтуерни разпределени СУБД много допълнителни задачи.

Важно е да се разбере разликата между разпределена база данни и разпределени средства за обработка на данни.

Разпределена обработка на: Обработка с помощта на централизирана база данни, достъп до които може да се извършва с различни компютри в мрежата.

Ключовият момент в определянето на разпределена база данни, е твърдението, че системата работи с данни, които физически се разпространяват в мрежата. Бели данни се съхраняват централизирано, дори и в случаите, когато се предоставя достъп за всеки потребител на мрежата, системата само Поддържа обработка, но не може да се разглежда като разпределена база данни. Схематично, като разпределена обработка топология е показано на фиг. Сравнете това изпълнение, включващ централна база данни на възела 2, едно изпълнение, показан на предишната фигура, където има множество възли, всеки от които има собствена база данни:

Топологията на системата с разпределена обработка

Също така трябва да бъде ясно разбиране на различията, които съществуват между разпространени и паралелните DBMS.

Паралелно СУБД: Система за управление на база данни, която работи с множество процесори и твърди дискове, тя позволява (ако е възможно), за да паралелизация изпълнението на определени операции, с цел подобряване на общата производителност на обработка.

Появата на паралелен база данни се дължи на факта, че една система с един процесор, който не бяхме в състояние да отговори на нарастващите изисквания за данни скалируемост, надеждност и ефективност. Един ефективен и икономически ефективна алтернатива на база данни с един процесор СУБД стане паралелно, функциониращи едновременно на няколко процесора. Прилагане на паралелните DBMS съчетава множество маломощни машини, за да се получи същото ниво на производителност, както в случая на един, но по-мощна машина с допълнителна печалба в скалируемост и надеждност на системата, в сравнение с единичен процесор база данни.

За да се осигури множество процесори, които споделят една и съща основа на паралелен СУБД трябва да гарантират, съвместно контрол на достъпа до ресурси. Тогава какви ресурси са разделени и как това разделение се осъществява на практика има пряко влияние върху производителността и скалируемостта на системата е, че от своя страна определя годността на определена база данни за условията на дадена компютърна среда и условията за кандидатстване. Три основни типа паралелен СУБД архитектура представени по-долу. Те включват:

§ система разделяне памет;

§ Раздел системи дискове;

§ система без отделяне на изчислителни ресурси.

Въпреки че паралелно система, без отделяне на изчислителни ресурси понякога се гледа като на разпределена база данни, в такава система, разпространение на данни е причинено само от желанието да се подобри производителността. Освен това, разпределени обекти на базата данни обикновено географски разделени, са под контрола на различни администратори и са свързани помежду си с относително бавно мрежови връзки, като възли на паралелен база данни често се намират на същия компютър или в рамките на една и съща производствена площадка.

Споделени памет системи се състоят от тясно свързани компоненти, които включват множество процесори с обща системна памет. Тази архитектура, наричана още многопроцесорни архитектура (SMP), сега е широко разпространена и се използва за най-различни компютърни платформи, от лични работни станции, съдържащи множество процесори, работещи паралелно, големи системи и RISC-нагоре до най-големия мейнфрейм. Тази архитектура осигурява бърз достъп до данните за ограничен брой процесори, размерът на които обикновено не надвишава 64. В противен случай, взаимодействието на мрежата става пречка на цялата система.

Системи с разделителни дискове са на по-малко тясно свързани компоненти. Те са най-добрият вариант за приложения, които сме наследили силно централизиран процес и трябва да се гарантира, че най-високите нива на достъпност и производителност. Всеки един от процесорите има пряк достъп до цялата обща диск устройството, но има своя собствена памет. Както в случая на машини без разделяне на архитектура изчислителни ресурси с разделителни дискове елиминира затрудненията, свързани с общата памет. Въпреки това, за разлика от архитектурата, без отделяне на изчислителни ресурси, тази архитектура премахва затрудненията, посочени без никакви допълнителни разходи, свързани с физическото разпространение на данни за отделните устройства. Споделени дискови системи понякога се наричат ​​клъстери.

Архитектурата на системи за бази данни с паралелна обработка на информацията: а) със споделена памет; б) разделяне на дискове; в) без отделяне

Системи без разделяне на изчислителни ресурси (тази структура се нарича също масова паралелна обработка архитектура) използва схема, в която всеки процесор, който е част от системата има своя собствена памет и запаметяващ диск. Базата данни се разпределя между всички дискови устройства, които са свързани с личността, свързани с тази база данни компютърни подсистеми, в резултат на всички данни, прозрачно достъпни за потребителите във всяка една от тези подсистеми. Тази архитектура осигурява високо ниво на мащабируемост от системи с обща памет и може лесно да се поддържа голям брой процесори. Въпреки това, оптимална производителност може да се постигне само ако необходимите данни се съхраняват локално.

Предимства и недостатъци на разпределени бази данни

Разпределени системи за бази данни имат допълнителното предимство пред традиционните системи за централизирана база данни За съжаление, тази технология не е без някои недостатъци. Този раздел описва предимствата и недостатъците, присъщи на разпределена база данни.