СТРУКТУРА НА РЕЛАЦИОННИТЕ ДАННИ
МОДЕЛИ НА ДАННИ
В класическата теория на базата данни моделът на данни се характеризира като формална теория за представяне и обработка на данни в система за управление на база данни, която включва най-малко три аспекта:
структурен аспект (методи за описание на типове и логически структури от данни),
манипулационен аспект (операции за манипулиране на данни),
аспект на целостта (методи за описание и поддържане на целостта на базата данни).
Аспектът на структуратаопределя логически какво представлява базата данни,Аспектът на целосттаопределя начините за описване на правилните състояния на базата данни,Аспектът на манипулиранеопределя как да се преминава между състояния на базата данни и как да се извличат данни от базата данни.
Моделите на данни, поддържани от СУБД, се разделят на йерархични, мрежови, релационни, релационни, многомерни и обектно-ориентирани. Всяка СУБД поддържа един, но понякога няколко модела данни едновременно. Ранните СУБД се характеризираха с мрежов модел и неговия специален случай, йерархичен модел. Мрежовите СУБД използват модел за представяне на данни под формата на произволна графика, докато йерархичните СУБД използват дървовидна структура. Повечето от СУБД в момента на пазара са СУБД от релационен или обектно-релационен тип. Въпреки това, поради ограниченията на релационния модел и невъзможността за използването му във всички области на човешката дейност, се използват и пострелационни СУБД.
ЙЕРАРХИЧЕН МОДЕЛ
Вйерархичен модел връзките между данните могат да бъдат описани с помощта на подредена графика (или дърво). .
За да се опише структурата на йерархична база данни в езиците за програмиране се използва дървовидният тип данни, който от своя страна е съставенструктурен тип, който позволява влагане на типове, всеки от които е на някакво ниво. Основният тип е тип, който има подчинени типове и сам по себе си не е подтип. Подчинен тип (подтип) е потомък на типа, който действа като предшественик (родител) за него. Потомците от един и същи тип са близнаци един спрямо друг.
Основните операции за манипулиране на йерархично организирани данни включват:
• търсене на посочения екземпляр;
• преход от едно дърво към друго;
• преход от един запис към друг в дървото;
• вмъкване на нов запис на посочената позиция;
• изтриване на текущия запис и др.
В съответствие с дефиницията на типа „дърво“ може да се заключи, че контролът върху целостта на връзките се поддържа автоматично между предци и потомци. Основното правило за контрол на интегритета е формулирано по следния начин: едно дете не може да съществува без родител, а някои родители може да нямат деца. Няма механизми за поддържане на целостта на връзките между записите на различни дървета.
Предимствата на йерархичния модел на данни включват ефективно използване на компютърната памет и добри показатели за времето, необходимо за извършване на основни операции с данни. Йерархичният модел на данни е удобен за работа с йерархично подредена информация. Недостатъкът на йерархичния модел е неговата тромавост за обработка на информация с доста сложни логически връзки, както и сложността на разбиране за средния потребител. Сравнително ограничен брой СУБД са базирани на йерархичен модел на данни, включително чужди системи IMS, PC/Focus, Team-Up и Data Edge, както и вътрешни системи Oka, INES и MIRIS.
МРЕЖОВ МОДЕЛ
Мрежовият модел на данниви позволява да показвате различни връзки на елементи от данни под формата на произволна графика, като по този начин обобщавате йерархичния модел на данни. Концепцията за мрежови бази данни беше най-пълно описана за първи път в предложенията на групата CODASYL (CODASYL). Мрежовата база данни се състои от набор от записи и набор от съответните връзки. Няма специални ограничения за формиране на връзка. Ако в йерархичните структури наследственият запис може да има само един предшестващ запис, тогава в мрежовия модел на данни наследственият запис може да има произволен брой предшестващи записи (доведени родители).
В различни СУБД от мрежов тип често се използват различни термини за обозначаване на едни и същи понятия, например като елементи от данни и агрегати, записи, набори, области и т.н. Физическото разполагане на данни в бази данни от мрежов тип може да се организира по почти същите методи, както в йерархичните бази данни. Най-важните операции за манипулиране на данни в бази данни от мрежов тип включват:
• търсене на запис в базата данни;
• преход от прародител към първи потомък;
• преход от потомък към прародител;
• създаване на нов запис;
• изтриване на текущия запис;
• актуализиране на текущия запис;
• включване на запис в комуникацията;
• изключване на запис от връзката;
• промяна на връзки и др.
Предимството на мрежовия модел на данни е възможността за ефективно внедряване по отношение на разходите за памет и ефективността. В сравнение с йерархичния модел, мрежовият модел предоставя големи възможностипо отношение на допустимостта на формирането на произволни връзки. Недостатъкът на мрежовия модел на данни е високата сложност и твърдост на схемата на базата данни, изградена на негова основа, исъщо и трудността за разбиране и извършване на обработка на информация в базата данни от обикновен потребител. Освен това в мрежовия модел на данни контролът върху целостта на връзките е отслабен поради допустимостта на установяване на произволни връзки между записите. Системите, базирани на мрежовия модел, не се използват широко в практиката. Най-известните мрежови СУБД саIDMS, db Vistalll, “NET”, “SETOR”и“KOMPAS”.
РЕЛАЦИОНЕН МОДЕЛ
Релационна е база данни, в която всички данни, достъпни за потребителя, са организирани под формата на таблици и всички операции с данни се свеждат до операции върху тези таблици.
Основните понятия на релационните бази данни са тип данни, релация, обект, атрибут, домейн, кортеж, първичен ключ.
СТРУКТУРА НА РЕЛАЦИОННИТЕ ДАННИ
Концепцията зарелационен модел(Relation Data Model)е предложена през 70-те години. 20-ти век Служител на IBM Едгар Код. Базира се на концепцията за връзка (relation). Отношениетое представено като двумерна таблица, предмет на определени ограничителни условия. Такъв набор от таблици, както е показано от Koda, може да се използва за съхраняване на информация за обекти от реалния свят и моделиране на връзки между тях. По-нататък ще използваме думите „връзка“ и „таблица“ като синоними. Всяка таблица (релация) има име и се състои от много редове и колони. Колоните също имат имена. Имената на колоните са атрибутите на релацията. Списъкът с атрибути на връзката се наричасхема на връзката.Например схемата на връзката Студент има формата: Студент (пълно име, дата на раждане, курс, специалност), а самата връзка в определен момент от време може да има формата, показана в Таблица. 1.
Отношение на студент
Пълно име | Дата на раждане | добре | Специалност |
Жук Ф.А. | 01.09.95 г | ТАКА ЛИ | |
Лис П.П. | 09.12.96 г | POIT | |
Харе С.С. | 07.10.97 г | ТАКА ЛИ | |
Соловей С.С. | 07.10.95 г | POIT |
Физическото разполагане на данни в релационни бази данни на външен носител се извършва лесно с помощта на обикновени файлове. Предимството на релационния модел на данни е в простотата, яснотата и удобството на физическата реализация. Най-известните релационни СУБДParadoxиDbase за Windows, Visual FoxPro, Access, Clarion, Oracle.
Важен аспект на традиционния релационен модел на данни е условието за неделимост и уникалност на елементите от данни, които се съхраняват в пресечната точка на редове и колони на таблица. Това означава, че данните не могат да бъдат разширени по време на по-нататъшна обработка. Такова правило беше включено в основата на релационната алгебра, когато беше разработена като математически модел на данни. Допълнителни изследвания показват, че има редица случаи, при които ограниченията на класическия релационен модел значително пречат на ефективното внедряване на приложения.
6 ВРЪЗКИ: ОПРЕДЕЛЕНИЕ, СВОЙСТВА
Връзката е най-важната концепция и представлява двумерна таблица, съдържаща някои данни.
Обект–е някакъв изолиран обект или събитие, информацията за което трябва да се съхранява в базата данни и което има определен набор от свойства - атрибути. Обектите се разграничават между тип и екземпляр. Типът се характеризира с име и списък от свойства, докато екземплярът се характеризира със специфични стойности на свойства.
Атрибутите са свойства, които характеризират обект. В структурата на таблицата всеки атрибут е именуван ито съответства на заглавието на някаква колона на таблицата. Атрибутите на обекта са:
1)идентифициращи и описателни.Идентифициращите атрибути имат уникална стойност за обекти от даден тип и са потенциални ключове. Те ви позволяват да разпознавате уникално екземпляри на обект. От кандидат ключовете се избира единпървичен ключ.Като първичен ключ обикновено се избира кандидат ключ, чрез който екземплярите на запис се осъществяват по-често. Първичният ключ трябва да включва минималния брой атрибути, необходими за идентификация. Останалите атрибути се наричат описателни;
3)еднозначни и многозначни.Атрибутите могат да имат съответно една или много стойности за всеки екземпляр на обект;
4)основен и производен.Стойността на основния атрибут не зависи от други атрибути. Стойността на производен атрибут се изчислява от стойностите на други атрибути (например възрастта на дадено лице се изчислява от неговата дата на раждане и текущата дата).
Спецификацията на атрибута се състои от неговото име, тип данни и описание на ограниченията за интегритет - наборът от стойности (или домейн), които атрибутът може да приеме.
Домейне набор от всички възможни стойности за определен атрибут на релация.
Схема на релация (заглавка на релация)е списък от имена на атрибути с имена на домейни.
Кортежът, съответстващ на тази релационна схема, е набор от двойки (име на атрибут, стойност>, което съдържа едно срещане на всяко име на атрибут. Аргументът стойност е валидна стойност на домейн за този атрибут.
Първичен ключ(ключ за връзка, атрибут на ключ)извиква се атрибут или набор от атрибути на релация, която уникално идентифицира всеки от нейните кортежи. Първичният ключ е уникален по дефиниция: една връзка не може да има два различни кортежа с еднакви стойности на първичен ключ. Атрибутите, които съставляват първичния ключ, не могат да имат стойностNULL.Концепцията заNULLв теорията на релационните бази данни има за цел да обозначи липсата на каквато и да е стойност на атрибута. Може да има само един първичен ключ за всяка връзка.
Външните ключове са основният механизъм за организиране на връзки между таблици и поддържане на целостта и съгласуваността на информацията в база данни.
Външен ключе набор от атрибути на една релация, който е възможен ключ на друга релация.