1 / 71

Релационни бази от данни (преговор)

Релационни бази от данни (преговор). Интегриране на бази от данни във web среда. Системи за работа с файлове. Програма за работа с данни на клиенти. Файл с данни за клиенти. Програма за работа със сметки на клиенти. Файл с данни за сметки. Обслужване на сметки.

morrison
Download Presentation

Релационни бази от данни (преговор)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Релационни бази от данни (преговор) Интегриране на бази от данни във web среда

  2. Системи за работа с файлове Програма за работа с данни на клиенти Файл с данни за клиенти Програма за работа със сметки на клиенти Файл с данни за сметки Обслужване на сметки

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

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

  5. Системи за работа с бази от данни • Разлика между двата вида системи: • Системи за работа с файлове • Системи за работа с бази от данни Файлове с данни Програма СУБД

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

  7. Системи за работа с бази от данни Програма за работа с данни на клиенти СУБД Обслужване на клиенти Данни за клиенти Данни за сметки Програма за работа със сметки на клиенти Обслужване на сметки

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

  9. Основни понятия Една база данни съдържа: • Съдържателни (оперативните) данни • Описание на собствената си структура Това описание се среща под различни наименования: • Речник на данните • Каталог на данните • Метаданни (всички те означават едно и също – данни за данните)

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

  11. Основни понятия Потребителите на такива системи обикновено могат да извършват следните операции с данните: • добавяне на нови данни в БД • променяне на съществуващи данни • извличане на съществуващи данни • отстраняване на ненужни данни

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

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

  14. Система за управление на база данни • Потребители - потребителите са последният компонент от една СУБД. Съществуват различни видове потребители: • Крайни потребители - използват системата за извършване на различни информационни дейности • Приложни програмисти – разработчиците на приложения за работа с базата данни • Администратори - поддържат функционирането на БД

  15. Режими на работа Спрямо режимите на работа БД могат да бъдат: • Еднопотребителски - във всеки момент със системата може да работи само един потребител; • Многопотребителски - във всеки момент със системата могат да работят повече от един потребители, конкурирайки се за ресурсите на машината

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

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

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

  19. Модели СУБД Съществуват различни модели СУБД – основните са следните: • Релационен - базиращ се на релационната алгебра • Йерархични- данните се представят като множества от дървовидни структури • Инвертирани списъци • Мрежови структури- данните се представят в мрежови структури • Дедуктивни- комбинация между релационна БД и логически компонент • Обектно-ориентирани • Обектно-релационни

  20. Релационни системи Повечето от БД, разработени в последните години са релационни - релационният модел е една от най-съществените разработки в цялата история на БД. Какво означава една система да е релационна?

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

  22. Обща характеристика на релационните СУБД

  23. Основни понятия Релация BOOK

  24. Основни понятия Релация Подредени множества • релация (relation) - съответства на познатото ни понятие “таблица” • подредено множество (tuple) - съответства на ред

  25. Основни понятия Области BOOK_ISBN TITLE AUTHOR YEAR_PUBL Първичен ключ Атрибут

  26. първичен ключ (primary key) - уникален идентификатор на таблица, т.е. поле (или комбинация от полета), който (която) притежава следното свойство: във всеки момент няма повече от един ред с една и съща стойност в това поле (комбинация) • област (domain) - множество от стойности, които могат да бъдат присвоявани като актуални стойности на атрибутите • атрибут (attribute) - колона

  27. Основни понятия • кардиналност – броят редове на релацията; • степен – броят колони (атрибути) на релацията.

  28. Обща характеристика на РСУБД Основата на модерните технологии за БД безспорно е релационният модел: • Релационният модел (РМ) не е нещо статично • Разработен първоначално през 1970 год. от д‑р E.F.Codd • Развива се непрекъснато

  29. Обща характеристика на РСУБД Код определя следните (13) правила за модела на релационните бази данни: • Релационните СУБД трябва да могат да управляват напълно базите данни с техните релационни възможности • Правило за информацията – цялата информация в дадена релационна база данни, включително имената на таблиците и колоните, се представят явно като стойности в таблиците

  30. Обща характеристика на РСУБД • Гарантиран достъп – всяка стойност в релационните бази данни задължително трябва да е достъпна чрез име на таблица, име на колона и стойност на първичен ключ • Систематична поддръжка на нулеви стойности – СУБД трябва да осигури систематична поддръжка за нулевите стойности (непознати или неприложими данни), която е различна от стойностите по подразбиране и да е независима от който и да е домейн

  31. Обща характеристика на РСУБД • Активен онлайн релационен каталог – описанието на базата данни и нейното съдържание се представя на логическо ниво като таблици, достъпът до които се осъществява чрез езика на базата данни • Пълен подезик за данните – поне един от поддържаните езици трябва да има добре дефиниран синтаксис и да бъде пълен. Той трябва да поддържа дефиниране на данни, манипулацията им, правила за интегритет на данните, упълномощаване и транзакции.

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

  33. Обща характеристика на РСУБД • Физическа независимост на данните – физически достъп или структурите за съхранение на данните не влияят върху логиката на приложенията • Логическа независимост на данните – бизнес-логиката на приложенията не трябва да влияе върху структурата на таблиците

  34. Обща характеристика на РСУБД • Независимост на целостта на данните – езикът на базата данни трябва да може да дефинира правила за цялостност. Те трябва да бъдат записани в онлайн каталога и да не могат да бъдат заобикаляни. • Независимост на разпространението – приложенията и техните заявки не трябва да се влияят логически от това дали данните се разпространяват за първи път или се репликират

  35. Обща характеристика на РСУБД • Невъзможност за намеса – не трябва да има възможност да се заобикалят правилата за цялостност с помощта на езици от по-ниско ниво

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

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

  38. Обща характеристика на РСУБД • Чрез математическите концепции за операции върху множества: • Обединение • Сечение от релационните бази данни могат бързо да извлечат отделни елементи от различни множества (таблици) • Извлечената информация може да бъде агрегирана и върната като резултат на потребителите на БД • Възможността за интегриране на информацията позволява на проектантите на бази данни да съхранява множества от информация в различни таблици - по този начин може да се оптимира излишеството на информацията

  39. Компоненти на релационния модел Релационният модел има три основни аспекта: • релационни обекти • цялостност на данните • релационни оператори за опериране с данните.

  40. Компоненти на релационния модел РМ е една теория със своя специфична терминология Различните релационни СУБД (РСУБД) трябва да се разглеждат като конкретни реализации на този модел (теория) Болшинството от тях поддържат SQL: • първоначално предложен от Chamberlin IBM • прототип на езика под името System R - в лабораториите на IBM • един от продуктите на IBM - IBM Database 2 или съкратено DB2 - и днес в системата OS/2 - 95 год. • ANSDB - American National Standards Database Commitee - SQL стандартен език за релационни БД - релационен език.

  41. Първични ключове

  42. Първични ключове Това е компонентът на релационния модел, който през последните години е променян най-много. Забележки: • Във всеки момент всяка БД съдържа определена конфигурация от стойности на данните - тази конфигурация отразява (е модел) на една реална ситуация • Определени конфигурации нямат реален смисъл - те не представляват някакво възможно състояние на реалния свят

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

  44. Първични ключове БД са субект на многобройни правила за цялостност – обикновено те са зависими от приложната област на БД. Пример за таблицата с книгите от библиотеката: • Не е реално цената да е отрицателно число - т.е. стойността й трябва да е по‑голяма от нула • Годината на публикуване не може да е по-голяма от текущата година • ISBN (BOOK_ISBN) номерът не се формира по произволен начин – генерира се по определени международни правила и е уникален за всяка книга.

  45. Първични ключове Някои правила за цялостност са специфични за точно определена БД Освен специфични правила за цялостност релационният модел включва две общовалидни правила за цялостност - валидни за всяка релационна БД: • Концепцията за първични ключове • Концепцията за външни ключове.

  46. Ключове-кандидати Първичните ключове са специален случай на по-общата конструкция, наречена ключове-кандидати(candidate keys). Ключ-кандидат (неформална дефиниция): ключ-кандидат е уникален идентификатор.

  47. Ключове-кандидати По дефиниция всяка една релация има най-малко един ключ-кандидат – на практика, обаче, много релации имат повече от един ключ-кандидати. За дадена релация разрабитчиците избират един от ключовете-кандидати за първичен и всички останали стават (ако съществуват) алтернативни ключове.

  48. Ключове-кандидати Ключ-кандидат (формална дефиниция):нека R е релация с атрибути { A1, A2,..., An } - множеството на атрибутите K = (Ai, Aj,..., Ak) от R е ключ-кандидат (candidate key) на R, ако то удовлетворява следните две, независещи от времето условия: • уникалност (uniqueness) - в един и същ момент не съществуват два различни записа на R с еднаква стойност за Ai , за Aj,...., за Ak • достатъчност (minimality) - никой от Ai, Aj,..., Ak не може да бъде премахнат, без това данаруши уникалността.

  49. Ключове-кандидати Един ключ-кандидат, който се състои от повече от един атрибут, се нарича съставен С един атрибут - прост

  50. Защо са важни ключовете-кандидати? Те поддържат единствения адресен механизъм на ниво записи в релационния модел – единственият гарантиран от системата начин за определяне точно положението на даден запис е посредством комбинацията (R,k), където R е името на релацията, съдържаща записа, а к е стойността на ключа-кандидат. Стойностите на ключа-кандидат се използват другаде в БД да служат като референции към записите, които се идентифицират чрез тези стойности.

More Related