Основи на съвременните бази данни Предговор


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



страница4/17
Дата17.08.2018
Размер1.71 Mb.
#80209
1   2   3   4   5   6   7   8   9   ...   17

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


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

Някои от най-общите характеристики на ранните системи са:



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

  2. Всички ранни системи не са се основавали на някакви абстрактни модели. Както беше споменато, понятието модел на данни фактически се използва от специалистите в областта на БД само заедно с релационния подход. Абстрактните представяния на ранните системи се появяват по-късно, на основата на анализа и извеждането на общите признаци на различните конкретни системи.

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

  4. Можем да смятаме, че нивото на средствата на ранните СУБД се съотнася с нивото на файловите системи примерно така, както нивото на езика Кобол се съотнася с нивото на езика Ассемблер. При такъв поглед нивото на релационните системи съответствува на нивото на езиците Аda или APL.

  5. Навигационната природа на ранните системи и достъпът до данните на ниво записи заставят потребителя сам да извършва цялата оптимизация на достъпа до БД, без каква да е поддръжка от системата.

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

3.1. Основни особености на системите, основани на инвертирани списъци


Към най-известните и типични представители на такива системи спадат Datacom/DB на компанията Applied Data Research, Inc. (ADR), ориентирана към използването в машини от основния клас на фирмата IBM, и Adabas на компанията Software AG.

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


3.1.1. Структури от данни

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

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

  2. Физическата подреденост на редовете на всички таблици може да се определя и за цялата БД (така се прави, например, в Datacom/DB).

  3. За всяка таблица може да се определи произволен брой ключове за търсене, за които да се построят индекси. Тези индекси автоматически се поддържат от системата, но явно са видими за потребителите.
3.1.2. Манипулиране с данни

Поддържат се два класа оператори:

  1. Оператори, устанавяващи адрес на записа, сред които:

  • преки търсещи оператори (например, да се намери първия запис на таблица по някакъв път за достъп);

  • оператори, намиращи запис в термините на относителната позиция от предишен запис по някакъв път на достъп.

Оператори над адресируеми записи

Типичен набор оператори:



  • LOCATE FIRST - намери първия запис в таблица T във физически порядък; връща адреса на записа;

  • LOCATE FIRST WITH SEARCH KEY EQUAL - намери първия запис в таблица T със зададена стойност на ключа за търсене K; връща адреса на записа;

  • LOCATE NEXT - намери първия запис, следващ след запис със зададен адрес в зададения път за достъп; връща адреса на записа;

  • LOCATE NEXT WITH SEARCH KEY EQUAL - намери cледващия запис в таблица T по реда на пътя за търсене със зададена стойност на K; трябва да има съответствие между използвания способ за сканиране и ключа K; връща адреса на записа;

  • LOCATE FIRST WITH SEARCH KEY GREATER - намери първия запис в таблица T по реда на ключа за търсене K cъс стойност на ключовото поле, по-голяма от зададената стойност на K; връща адреса на записа;

  • RETRIVE - избери записа с указания адрес;

  • UPDATE - обнови записа с указания адрес;

  • DELETE - изтрий записа с указания адрес;

  • STORE - включи записа в указаната таблица; операцията генерира адрес на записа.
3.1.3. Ограничения за цялостност

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

3.2. Йерархически системи


Типичен представител (най-известен и разпространен) е Information Management System (IMS) на фирмата IBM. Първата версия се появява през 1968 г. Досега се поддържат много бази от данни, което създава съществени проблеми с прехода както към нова технология на БД, така и към нова техника.
3.2.1. Йерархически структури от данни

Йерархическата БД се състои от подреден набор дървета; по-точно, от подреден набор от няколко екземпляра от един тип дървета.

Типът на дървото се състои от един "коренов" тип запис и подреден набор от нула или повече типове поддървета (всяко от които е някакъв тип дърво). Типът на дървото като цяло представлява йерархически организиран набор от типове записи.

Пример за тип дърво (схема на йерархическа БД):

Тук Отдел е родител на Началник и Сътрудници, а Началник и Сътрудници – наследници на Отдел. Между типовете запис се поддържат връзки.

Базата от данни с такава схема би могла да изглежда по следния начин (на схемата е показан един екземпляр от дървото):


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

В IMS е използвана оригинална и нестандартна терминология: "сегмент" вместо "запис", а под "запис на БД" се разбира цялото дърво сегменти.


3.2.2. Манипулиране с данни

Примери за типични оператори за манипулиране на йерархически организирани данни могат да бъдат следните:

  • Намери указаното дърво на БД (например, отдел 310);

  • Премини от едно дърво към друго;

  • Премини от един запис към друг вътре в дървото (например, от отдела - към първия сътрудник);

  • Премини от един запис към друг по реда на обхождане на йерархията;

  • Вмъкни нов запис в указаната позиция;

  • Изтрий текущия запис.
3.2.3. Ограничения за цялостност

Автоматично се поддържа цялостност на указателите между предците и наследниците. Основно правило: никой потомък не може да съществуват без своя родител. Аналогичното поддържане на цялостността по иказателите между записите, невлизащи в една йерархия, не се поддържа (пример за такъв "външен" указател може да бъде съдържимото на полето Кат_Номер в екземпляра на тип запис Куратор).

В йерархическите системи се поддържала някаква форма на представяния на БД на основата на ограничение на йерархията. Пример за представяне на приведената по-горе БД може да бъде йерархията:





3.3. Мрежови системи


Типичен представител е Integrated Database Management System (IDMS) на компанията Cullinet Software, Inc., предназначена за използване в машините на основния клас на фирмата IBM под управлението на болшинството операционни системи. Архитектурата на системата се базира на предложенията на Data Base Task Group (DBTG) на Комитета по езиците за програмиране Conference on Data Systems Languages (CODASYL), на организацията, отговаряща за определението на езика за програмиране Кобол. Отчетът на DBTG е публикуван през 1971 г., а през 70-те години се появяват няколко системи, сред които IDMS.
3.3.1. Мрежови структури от данни

Мрежовият подход за организация на данни е разширение на йерархическия. В йерархическите структури запис-наследник трябва да има точно един родител; в мрежовата структура на данни наследникът може да има произволен брой предци.

Мрежовата БД се състои от набор записи и набор връзки между тези записи, а по-точно, от набора екземпляри на всеки тип от зададения в схемата на БД набор типове записи и набор екземпляри от всеки тип от зададен набор типове връзка.



Типът на връзката се определя за два типа записи: родител и наследник. Екземпляр на тип връзка се състои от един екземпляр на тип запис родител и подреден набор екземпляри от тип запис потомък. За даден тип връзка L с тип запис родител P и тип запис потомък C трябва да се изпълняват следните две условия:

  • Всеки екземпляр тип P е родител само в един екземпляр L;

  • Всеки екземпляр C е потомък в не повече, от един екземпляр L.

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

  1. Тип запис потомък в един тип връзка L1 може да бъде тип запис родител в друг тип връзка L2 (както в йерархията).

  2. Даден тип запис P може да бъде тип запис родител в произволен брой типове връзка.

  3. Даден тип запис P може да бъде тип запис потомък в произволен брой типове връзка.

  4. Може да съществуват произволен брой типове връзка с един и същ тип запис родител и един и същи тип запис потомък; и ако L1 и L2 са два типа връзка с един и същи тип запис родител P и един и същи тип запис потомък C, то правилата, по които се образува родство, в различните връзки може да се различават.

  5. Типовете записи X и Y могат да бъдат родител и потомък в една връзка и потомък и родител - в друга.

  6. Родител и потомък могат да бъдат от един тип запис.

Прост пример на мрежова схема на БД:


3.3.2. Манипулиране с данни

Примерен набор операции може да бъде следният:

  • Намери конкретния запис в набора еднотипни записи (инженер Сидоров);

  • Премини от родителя към първия потомък по някоя връзка (към първия сътрудник на отдел 310);

  • Премини към следващия потомък в дадена връзка (от Сидоров към Иванов);

  • Премини от потомък към родител по дадена връзка (намери отдела на Сидоров);

  • Създай нов запис;

  • Унищожи запис;

  • Модифицирай запис;

  • Включи във връзка;

  • Изключи от връзка;

  • Премести в друга връзка и т.н.
3.3.3. Ограничения за цялостност

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

3.4. Предимства и недостатъции


Силни места на ранните СУБД:

  • Развити средства за управление на данните във външната памет на ниско ниво;

  • Възможност за ръчно построяване на ефективни приложни системи;

  • Възможност за икономия на памет за сметка на разделяне на подобекти (в мрежовите системи).

Недостатъци:

  • Твърде сложно е използването;

  • Фактически са необходими знания за физическата организация;

  • Приложните системи зависят от тази организация;

  • Тяхната логика е претоварена с подробности за организацията на достъпа до БД.

Теоретични основи

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



  • наличие на неголям набор абстракции, които позволяват сравнително просто да се моделира голяма част от разпространените предметни области и допускат точни формални определения, оставайки интуитивно разбираеми;

  • наличие на прост и в същото време мощен математически апарат, опиращ се най-вече на теорията на множествата и математическата логика и осигуряващ теоретичния базис на релационния подход към организацията на базите от данни;

  • възможност за ненавигационно манипулиране с данните без необходимост от знания за конкретната физическа организация на базите от данни във външната памет.

Релационните системи съвсем не получават широко разпространение веднага. В същото време, когато основните теоретични резултати в тази област са получени още през 70-те години, и тогава се появяват первите прототипи на релационни СУБД, дълго време се смятало, че е невъзможно да постигне ефективна реализация на такива системи. Но отбелязаните по-горе предимства и постепенното натрупване на методи и алгоритми за организация на релационни бази от данни и управлението им водят до това, че вече в средата на 80-те години релационните системи практически изместват от световния пазар ранните СУБД.

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



Каталог: tadmin -> upload -> storage
storage -> Литература на факта. Аналитизъм. Интерпретативни стратегии. Въпроси и задачи
storage -> Лекция №2 Същност на цифровите изображения Въпрос. Основни положения от теория на сигналите
storage -> Лекция 5 система за вторична радиолокация
storage -> Толерантност и етничност в медийния дискурс
storage -> Ethnicity and tolerance in media discourse revisited Desislava St. Cheshmedzhieva-Stoycheva abstract
storage -> Тест №1 Отбележете невярното твърдение за подчертаните думи
storage -> Лекции по Въведение в статистиката
storage -> Търсене на живот във вселената увод
storage -> Еп. Константинови четения – 2010 г някои аспекти на концептуализация на богатството в руски и турски език


Сподели с приятели:
1   2   3   4   5   6   7   8   9   ...   17




©obuch.info 2024
отнасят до администрацията

    Начална страница