Presentation is loading. Please wait.

Presentation is loading. Please wait.

N:\DOC\4M\lekcii\3_5Бази от данни.ppt

Similar presentations


Presentation on theme: "N:\DOC\4M\lekcii\3_5Бази от данни.ppt"— Presentation transcript:

1 N:\DOC\4M\lekcii\3_5Бази от данни.ppt
3.5. Бази от данни N:\DOC\4M\lekcii\3_5Бази от данни.ppt

2 Определение: БД е интегрирана съвкупност от данни, които са взаимно свързани, съхраняват се съвместно и са с минимално дублиране. Такава БД осигурява оптимално използване на данни от много потребители отделно или едновременно.

3 Базите от данни (БД) са основен компонент при изграждането на автоматизираните информационни системи. В информатиката понятието БД се появява през 1959 година и с него се означава съвкупност от свързани данни, които могат да се използват едновременно от много потребители. В исторически аспект БД се създавани такива БД, съдържащи само текстова и цифрова информация и се наричат текстови или семантични. По-късно се създават графични БД, които включват графични данни и информация. Те са в основата на системите за автоматизирано проектиране - CAD/САМ системи. Теорията на БД се усъвършенства и утвърждава паралелно с развитието на електронно- изчислителната техника и алгоритмичните езици от високо ниво. Заедно с това се създават и Системи за Управление на База от Данни (СУБД). СУБД са компютърно базирани системи, които осигуряват връзка на потребителя с БД.

4 Според принципа на създаване, поддържане и използване, БД могат да бъдат централизирани и разпределени. Централизирани БД са тези, които се създават, поддържат на едно място и се управляват от една институция. Централизираните БД се използват от много потребители, често наричани "клиенти". Те получават достъп до БД по определени правила. Разпределени БД са такива, които се създават, управляват и поддържат на различни места и от различни институции, но имат връзка по между си. Всяка от институциите поддържа в актуално състояние само своята БД, но ползва както своята, така и БД на останалите институции. Достъпът на една институция до БД на друга институция е на принципа на достъпа на "клиент" до централизирана БД.

5 Проектирането и създаването на една БД са процеси на моделиране на дадена област от реалния свят.
Областта от реалния свят, за който се създава БД, се нарича предметна област и е съвкупност от предметите, явленията, процесите в нея (обекти). Обектите притежават определени свойства (атрибути на обекта). Между обектите или техни атрибути съществуват връзки (релации). Обектите, атрибутите и релациите се описват с абстрактни данни (думи, графика, алгоритми, музика, картини, посредством таблици с цифрова и/или буквена информация).

6 Етапи на създаване на БД:
Външното ниво е началният етап на проектирането на БД. При него се определя областта от реалния свят, които трябва да намерят отражение в БД. На концептуалното ниво се създават концепции за схематичното моделиране и проектиране на предметната област, отразена във външноото ниво. Логическото ниво включва подробно логическо проектиране на създадената концепция за БД. Детайлно се проектират обектите и техните свойства от предметната област, установяват се всички връзки между обектите, начина на описание с данни, възможните стойности на всяко свойство, което характеризира обектите и релациите между тях.. Вътрешното ниво включва физическото създаване и съхраняване на БД в ЕИМ.

7 Релации Всяка предметната област се дефинира чрез обекти, класове от обекти, атрибути и релации. Нека A и B са два класа от обекти от една предметна област, a R e двучленна релация между тях. Обектите на А нека са аi (i=1, m), а на В - bj (j =1, n). Тогава двучленната релация ще бъде R AxB . Връзките между обектите могат да бъдат 1 :1,1 : n, и m : n: еднозначни (1: 1), когато те се определят от релацията R(a, b) и обратната й релация R-1 (b, а). Релациите R и R-1 са функционални, защото обект от класа А има връзка само с един обект от класа B (фиг.26.2-а). Всяко отношение (1 : 1) е функционално и графически се означава с ↔. Такава релация се нарича едно-към-едно;

8 релация (1: n). Ако релацията R не е функционална, a R-1 - функционална, е налице релация на един обект към много обекти. Графически тези релации се означава с <—>> и се наричат едно-към-много. На фиг. ( ) обектът а1 от клас А има 2 релации: <a1,bl>, <a1,b4> с обектите от клас В. Обратните релации обаче са функционални, защото обектите от клас В имат еднозначни връзки с обектите от клас А. релация (m : n). Ако релацията R и R-1 не са функционални е налице релация на много обекти към много обекти. Графически тази релация се означава с «—» и се нарича много- към-много. На фиг. (26.2-в) обектите a1, а4, от класа А имат релации с b2, а а2 - с b1; b3 и bi от класа В. Обратните релации са също в отношение много към много. Този тип релации се наричат още комплексни релации.

9 Модели на данни Моделът на данни е такава организация на данни, която посредством типовете и структури на данни, които се обработват от компютър, позволява логическа и физическа реализация на БД за каквато и да е предметна област. Напр. таблица, в която са записани данните за даден обект, е модел на данни. Под моделиране на данни се разбира намиране на концептуално решение за организация на данните. Структурата на данни е детайлно описание на данните чрез списъци, масиви, файлове и тяхното съхраняване в компютър.

10 Модели на данни Най-често се използват информационните структури дърво, мрежа и таблица, на които съответстват три известни модели на данни - йерархичен, мрежови и релационен. Базите данни, които използват тези модели се наричат съответно йерархични, мрежови и релационни. Съществуващите връзки между обектите се описват графически като се използват елементи от теорията на графите. На върховете на графа отговаря определен тип запис, а на дъгата между два върха на графа отговаря тип релация.

11 Йерархичен модел на данни
Йерархичният модел на данни е дървовидна структура, която се състои от йерархия на възли с двустранни връзки. Всеки възел има само една връзка към възел от по-високо йерархично ниво и една или повече връзки към възли от по-ниско йерархично ниво (фиг. а). Най-горното ниво А се състои само от един възел и се нарича корен. Следващите йерархични нива, на които се намират обектите Bi, Cj, Dk, имат неограничен брой възли, следователно с йерархичния модел на данни се представят връзки от типа едно-към-много. Когато всеки възел на едно ниво има само две връзки към възли от следващо ниво се получава двоично дърво (фиг. б).

12 Мрежови модел на данни Когато между елементите на БД от едно ниво има повече от една релация към елементи от следващото, по-ниско ниво, създаването на йерархичен модел се усложнява. По тази причина е разработен мрежовия модел на данни, при който освен релация от вида едно-към-много, която е в основата на йерархичния модел на данни, има и релации от вида много-към-много. Всяка сложна релация от вида m : n може да се приведе в проста релация от вида 1 : 1 чрез указатели, но трябва да се дублират елементи в схемата. Това означава, че всеки мрежови модел на данни може да се приведе в йерархичен модел чрез дублиране на елементи и връзките между тях.

13 За мрежовите модели важат следните постулати: - мрежовият модел се изразява чрез типове записи {R1, R2,..., Rn}; - релациите между елементите на Ri и Rj се представят от именувани типове връзки Lij. Всяка от тези връзки е функционална поне в едната посока, напр. елемент на по-ниско ниво зависи от елемент от по-високото ниво; - връзки от вида Lii не съществуват.

14 Релационен модел на данни
Този модел е въведен от Codd. Данните за обектите, атрибутите им и релациите от предметната област се представят в специално организирани таблици. Използват се основните понятия домен, атрибут и релация, както и всички оператори от релационната алгебра, откъдето идва и името на този логически модел на данни. За един клас обекти се отделя една таблица (табл. 26.1). Таблица 26.1

15 Релационен модел на данни
Обектите са подредени по редове (записи) в таблицата. В колоните (полета) се съдържат стойностите ai, bi,...,ki на атрибутите А, В,..., К. В една от колоните се записват идентификаторите на обектите О1, O2, ..., On. Мястото на пресичане на ред (обект) с колона (атрибут) се нарича клетка. Тя съдържа конкретна стойност на атрибута за съответния обект. Таблица 26.1

16 Релациите между класовете обекти в релационния модел се изразяват в логическо свързване на две и повече таблици чрез атрибутите на класовете обекти, както е показано на фиг. По този начин се създава релационна схема, в която съществуват релации от вида 1:1, 1 : n и m : n.

17 Обектно ориентирани бази данни
Обектно-ориентираната структура на данни е по- нататъшно развитие на йерархичния и мрежовия модел. Идеята за обектно-ориентираната структура на БД идва като аналог на обектно-ориентираното програмиране. В релационната структура, както вече е известно, всеки обект се дефинира чрез запис от данни за него и логическите релации могат да бъдат направени чрез атрибутите и техните стойности. Когато се проектира релационна БД се създават релационни схеми. Поради сложният характер на схемите, те се нормализират докато се реализират функционални връзки от типа едно-към-едно. По този начин първоначалната информация се разкъсва на порции във взаимно свързани таблици.

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

19 За избягване на тези проблеми се разработва обектно ориентирания подход, при който се прилага нов модел на данните. При този модел всички данни за обекта са събрани на едно място. Разликата между релационния модел и обектно ориентирания модел на данни е показана на фиг.

20 При релационният подход обектите се разлагат на атомарни, прости обекти с релационна връзка между тях (фиг а). Така един сложен обект се разпада на N прости обекти. Когато се прилага обектно ориентирания подход, обектите от предметната област се съхраняват компактно в модела такива, каквито са фиг. (31.1-б). По този начин се спазва релацията едно-към-едно, която беше цел на нормализацията при релационния модел. Достъпът до данните за един обект при релационния подход е до атомарните части на обекта, а при обектния подход - до обекта като цяло. Обектите съществуват в реалния свят и могат да бъдат описани с избран тип данни и по определени правила. Данните за обекта определят неговото състояние и са в съответствие с неговите атрибути.

21 Множеството от процедури, функции, с които се описва състоянието на обекта, определят неговото поведение. Те са неразделни, "капсуловани" с обекта. Обектът в БД се дефинира чрез уникален идентификатор. Това означава, че всяка промяна на обекта засяга стойностите на неговите атрибути, но не променя идентификатора му. Трите компонента - данни, функции и поведение на обекта са в основата на обектно-ориентираните БД.

22 Един обект в теорията на обектно-ориентираните БД като базисна единица се състои от идентификатор, тяло и поведение: Идентификаторът се използва за разграничаване на един обект от останалите обекта в реалния свят; Тялото се представя от всички именувани атрибути на обекта; поведението му се реализира и управлява от множество от правила. Обектите могат да бъдат прости и сложни (съставни), като сложните обекти са йерархично съчетание на прости обекти.

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

24 Концептуален модел на БД
Концептуалният модел се създава на логическо ниво. Той не зависи както от операционната системата на компютъра, така и от неговите параметри. През 1976 год. Peter Chen предлага методология за концептуално проектиране на БД, която е известна като Entity Relation Model (ER) - модел обект-връзка. В следващите години тази методология се развива на основата на релационния модел и така се получава обектно-ориентиран релационен подход, в които се съчетават предимствата на йерархичните и мрежови модели с гъвкавостта на релационните модели.

25 На фиг. е показан принципа на ER- диаграма за моделиране на данни за два обекта - обект А с атрибути Ai и обект В с атрибути Вi. Понятието връзка, асоциация изразява физическото състояние между двата обекта. Това състояние има атрибути така, както обектите имат атрибути.

26 Логическите компоненти, които се използват при ER - моделирането са:
Обекти; Класове обекти; Релации между обектите или класовете обекти; Атрибути на обектите и релациите; Степен (отношение) на релациите. Изразява се с две числа (0 - n), които показват минималното и максимално число връзки между обектите или класовете обекти. В класове обекти тези две числа изразяват най-малкия и най-големия брой на обекти от класа, които участват в релацията; Ограничение за интегриране. Това е предикат (число или символ), с което се поддържа целостта на модела. По-често се прилага за ограничаване на стойностите на атрибутите или самите атрибути.

27 Концептуалното проектиране включва:
Определяне на обсега на предметната област, обект на създаване на БД; Дефиниране на възможностите, които БД трябва да има -въвеждане, редактиране, изтриване, създаване на справки, форми, отчети, баланси и др. приложения, които общо се наричат транзакции; Определяне на правилата, изискванията и ограниченията; Идентифициране и именуване на обектите в предметната област. Дефиниране на класове обекти; Определяне на идентификатор за всеки обект; Създаване на ER-диаграми, графическа схема на модела и схематично означаване на релациите - 1:1, 1: n, m : n; Дефиниране на атрибутите на обектите. Определяне на възможните стойности (обхвата) на атрибутите. Броят на атрибутите е решаващ, както за цената на БД, така и за ефективността на работата й.;

28 Проектирането на концептуален модел на графиката на предметна област се характеризират със следните особености: Графичните обекти в цялото си разнообразие са с точково, линейно и площно разпределение и ефективно може да се използва теорията на графите и свойствата на топологията. За непрекъснатите области и повърхнини се има предвид математическия апарат за прави, криви и повърхнини; Графичните обекти се моделират с графични примитиви, които имат графични и пространствени атрибути и релации. Графичните примитиви имат и непространствени атрибути; Съществува релация между графичната и текстова БД. При описанието на графичните обекти и класове трябва да се има предвид, че един графичен обект може да е сложен и да включва няколко други графични обекти.

29 Логически модел на БД Логическият модел на БД е първата стъпка към софтуерното осигуряване на БД и включва: Създаване на математическа основа или множество от математически концепции за реализиране на БД; Създаване на предпоставки за трансформиране на концептуалния модел на БД в конкретни приложения посредством логическо моделиране. Реализира се един модел на данните посредством процедури за въвеждане, поддържане и приложения с данните. Най-често използван е релационния модел за описание на данни, но в зависимост от конкретната предметна област се прилагат и другите видове модели на данни.

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

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

32 Физически модел на базата от данни
Физическият модел на БД е последния етап от проектирането на БД. На този етап се преминава към проектиране на начина на записване на данните за всеки обект и всяка релация в паметта на ЕИМ. Тази част зависи изключително от конкретната изчислителна техника, операционна система, организация на дисково пространство, методи за търсене на данни, сортиране, архивиране, защита на данните и други.

33 Основни изисквания и задачи на физическия модел
Намиране на данните от всеки запис за минимално време. Докато логическият запис се идентифицира със своя ключ, то физическия запис се идентифицира с машинния си адрес; Да се осигури възможност за търсене на информация по няколко ключа; Да са създадени условия за описание на релационни структури на данни; Да е възможно редактиране на данни - добавяне на нови записи, изтриване на стари без нарушаване на системата за адресация, търсене и промяна на структурата на данните; Данните на физическият носител да са максимално уплътнени, което е много актуално за големи БД.

34 Физическата организация на данните се характеризира с:
Икономия на памет. Тази особено важна характеристика може да сеосъществи чрез различни решения. Тук ще се разгледат две от тях: Чрез блокуване. Това означава данните да се обединяват в блокове с няколко логически записа в един физически; Чрез уплътняване на данните в компактен вид. Това зависи както от прилаганата система, така и от начина на вътрешното представяне на данните вЕИМ. Минимално дублиране на информация. При логическото описание се дублира информация, което се прави за яснота. При физическата реализация дублирането трябва да се минимизира посредством полета за връзка или чрез указатели.

35 Активност на файла. Активността се характеризира с реалното използване на записите в един файл. Когато активността е голяма, достъпът до данните във файла трябва да е пряк, иначе файлът се записва на диск като последователен. Честота на обръщение към записите. Когато към определени записи се извършва по-често обръщение и се чете или записва информация от/в тях по-често, се казва, че тези записи са с по-голяма честота на ползване. Такива записи физически се организират така, че те да се намират по-бързо от СУБД или от процедурите за търсене на информация; Условия за бърза промяна на данни във файловете;

36 Готовност на БД. Тази характеристика означава основните файлове на БД да бъдат дублирани. При физически отказ на един диск или едно устройство, мигновено СУБД трябва да премине към работа с дублираните файлове с данни от другия диск или устройство. Това естествено означава, че в активно състояние се намират едновременно дисковете или устройствата, които съхраняват БД и нейното последно копие; Периодично архивиране на части от БД или цялата БД. Когато по технически причини се разруши или изгуби информация, тя може да се възстанови от копието.

37 Сортиране на информация в масиви
Сортирането е метод за подреждане на елементите в масиви по възходящ или низходящ ред. Методите за сортиране на информация в масиви може да се извърши по два основни начина: Чрез прехвърляне на подредените елементи от изходния масив в друг масив; Чрез сортиране на елементите на масива в същия масив. Този начин е по-ефективен. В зависимост от начина на реализация на сортирането на масивите, методите се делят на прости и сложни,

38 Сортиране на информация в масиви
а в зависимост от бързината и необходимата оперативна памет за сортирането, се различават следните методи: Методи, които изискват минимална оперативна памет; Методи, които използват минимален брой операции. За мяра за ефективността на методите се използват критериите: Брой на необходимите сравнения на елементите в масива преди тяхната размяна; Брой на необходимите размествания на елементите до тяхното сортиране.

39 Метод за достъп до данни във файл.
Начинът, по който се търсят и избират записи в произволен файл с данни се нарича метод за достъп до данни. Прилагат се следните методи: Последователен метод на достъп. Състои се в последователно сравнение на ключа на всеки запис от файла с търсения, започвайки винаги от първия запис. В този случай не е необходимо ключовете на записите да са задължително сортирани;

40 Непоследователен метод за достъп
Непоследователен метод за достъп. В тази група методи се изисква ключовете на записите във файла да са задължително подредени, сортирани. Тук спадат: Блоково търсене. Изисква файлът да бъде сортиран по възходящ ред на ключовете на записите. Записите се групират по блокове. За намиране на определен запис не се "преглеждат" всички записи, а само последния запис от всеки блок, докато се установи номера на блока, в който се намира търсения ключ на записа.; Двоично търсене. Файлът е сортиран по възходящ ред на ключа. Файлът се разделя на две части. Проверява се в коя от двете половини е записа. Тя се дели на две и процедурата се повтаря до намиране на търсения запис.

41 Чрез индексни файлове. Файлът със записи е сортиран по възходящ номер на ключа. Файлът се разделя на т групи от последователни записи. От всяка група се извлича ключа на последния запис, които се съхраняват в нов файл, наречен индексен файл.; Чрез хеширане. Това е пряк метод на достъп, при който ключът на всеки запис се трансформира в адрес, при което се използва определена трансформационна функция.


Download ppt "N:\DOC\4M\lekcii\3_5Бази от данни.ppt"

Similar presentations


Ads by Google