КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Загальне поняття про базу даних.Стр 1 из 14Следующая ⇒ Лекція № 15 Поняття бази даних. Реляційні моделі баз даних. Типи звязків у реляційній моделі БД. Ефективне опрацювання великих масивів інформації ставить перед розробниками програм ряд складних проблем: як організувати інформацію в пам'яті комп’ютера, які операції по її опрацюванню найбільш зручні й ефективні, яка організувати роботи з опрацювання великих обсягів інформації, яке загальносистемне і спеціальне програмне забезпечення є необхідне і т.д. Загальне поняття про базу даних. Під базою даних (БД) розуміється сукупність взаємозалежних даних деякої предметної області, збережених у пам'яті комп’ютера і організованих у такий спосіб, що ці дані можуть бути використані для рішення багатьох задач багатьма користувачами. Успішне функціонування БД може бути здійснено тільки при виконанні ряду вимог до її організації. До таких вимог можна віднести: Ненадлишковість даних. Ненадлишковість даних припускає, що в ідеалі будь-які дані будуть зберігатися в БД в одному примірнику. Дублювання даних не тільки збільшує обсяг необхідної пам'яті, але і, саме головне, може легко призвести до «суперечливості» даних і, отже, зрадливій роботі СОД. Спільне використання даних. Ті самі дані бази можуть використовуватися декількома користувачами (задачами). При цьому бажано, щоб кожний користувач (задача) одержував ці дані в зручному для нього виді. У випадку одночасного використання тих самих даних різними користувачами (задачами) повинний бути забезпечений мультидоступ до даних бази. Розширюваність бази даних. База даних повинна мати спроможність до розширення, що може бути за рахунок: 1) збільшення числа примірників однотипних даних; 2) введення в БД нових типів об'єктів або нових типів взаємозв'язків. Необхідно, щоб введення нових типів об'єктів або зв'язків не потребувало яких–небудь змін у вже існуючих у БД даних. Простота роботи з базою даних. В умовах розробки й експлуатації значної системи опрацювання даних важливе значення одержує простота роботи з даними БД, тобто необхідно, щоб: 1) структура даних була логічної і ясної як для програмістів, так і для користувачів: 2) операції доступу до даного мали ясні і чітко обкреслені функції; 3) без великих трудовитрат виконувалися різноманітні обслуговуючі операції (копіювання, перепис із носія на носій, розширення бази й ін.). Простота (із погляду прикладного програміста) роботи з БД дозволяє скоротити трудовитрати на програмування, налагодження й експлуатацію систем опрацювання даних, а також залучити для їхнього створення менше кваліфікований персонал. У цей час виконання даної вимоги не повинно здійснюватися за рахунок скорочення функціональних можливостей роботи з базою. Ефективність доступу до бази даних. Під ефективністю тут розуміється швидкість доступу до даного при обмеженнях на об’єм, що займається при цьому оперативною пам'яттю. Зрозуміло, ефективність доступу до БД дуже важлива. Проте цей чинник для систем опрацювання даних не є вирішальним. В даний час загальновизнано, що найбільше важливими для БД є обговорювані нижче вимоги цілісності і незалежності. Цілісність бази даних. Під цілісністю бази даних у загальному випадку розуміється її готовність до роботи. Цілісність бази даних – складне поняття, що має багато аспектів. Зазначимо такі з них: 1) фізична цілісність, тобто цілість інформації на магнітних носіях і коректність форматів даних; 2) логічна цілісність, під якою розуміється непротиріччя даних у базі; 3) актуальність даних, тобто відповідність даних реальному положенню речей. Втрата цілісності бази даних може відбутися від збоїв апаратури ЕОМ, помилок у програмному забезпеченні, зрадливої технології запровадження і коригування даних, низкою достовірності самих даних, і т.д. Тому забезпечити цілісність бази реального обсягу дуже складно. У той же час втрата цілісності даних веде до самих серйозних наслідків аж до повного перезавантаження даних бази. Якщо врахувати, що звичайно бази даних накопичуються роками або навіть десятками років, то втрата цілісності БД найчастіше спричиняє дуже важкі наслідки. Таємність даних. Під цим терміном розуміється в загальному випадку захист даних від несанкціонованого доступу. Різняться власне таємність даних, що полягає в тому, що користувачу, що не володіє паролем доступу, цілком закритий доступ до БД або якоїсь її частини, і захист даних від модифікації, що припускає для осіб, що не володіють паролем, тільки читання із БД. Перераховані вище вимоги багато в чому суперечливі. Тому звичайно перед розроблювачами конкретної бази даних виникає проблема вибору компромісного варіанту, що враховує найбільш істотні для даної СОД вимоги. Поняття та елементи реляційної бази даних Дані в БД розташовуються не безсистемно, а мають строго визначену організацію або, іншими словами, структуру. Ця структура залежить від того, яку модель даних підтримує СКБД. Модель даних визначає, які структури даних можна використовувати, які операції можна виконувати над цими структурами та які обмеження накладаються на ці структури. Більшість сучасних СКБД підтримують реляційну модель даних. Основною та єдиною структурою у цій моделі є реляційна таблиця, яку ще називають відношенням (relation – в перекладі з англійської означає відношення, звідки і походить назва цієї моделі). Реляційна таблиця – це двомірна (плоска) таблиця, яка складається з рядків та стовпців. У таблицях зберігається інформація про об’єкт визначеного типу. Таким об’єктом, наприклад, може бути інформація про студентів певного вузу, заробітну плату працівників деякої установи, рух товарів на складі за певний період часу, розклад екзаменаційної сесії, тощо. При цьому рядок таблиці містить дані про один екземпляр об'єкта цього типу (дані конкретного студента, заробітну плату певного працівника, прихід та розхід деякого товару, рядок у розкладі сесії), а стовпці таблиці містять різні характеристики цих об'єктів — атрибути. У наведених прикладах у ролі атрибутів можуть виступати прізвища, імена та по батькові студентів, дати їх народження, домашні адреси, розмір нарахованої та розмір виплаченої зарплати, дата приходу товару та його кількість, номер аудиторії, в якій проходитиме іспит. Рядки таблиці називають ще кортежами. Усі кортежі однієї таблиці мають однакову будову – вони складаються з полів, у яких зберігаються значення атрибутів об’єкта. Кожне поле в рядку містить лише одну характеристику об'єкта і має строго визначений тип даних – число у певному форматі, текст (рядок символів), дата і/або час, логічні значення, графічні об'єкти і т. п. Таблиця вважається реляційною, якщо: вона має унікальне ім’я в межах даної БД; кожний стовпець таблиці має унікальне ім’я в межах даної таблиці; порядок розташування рядків і стовпців у таблиці довільний; усі стовпці в таблиці однорідні, тобто їхні елементи мають один і той же тип даних; кожне поле таблиці може містити лише атомарне (неподільне) значення; всі рядки таблиці мають однаковий склад полів, поля можуть мати різний тип значень; у таблиці немає однакових рядків; кожен рядок таблиці ідентифікується первинним ключем. Первинний ключ – це одне чи декілька полів, значення в яких однозначно ідентифікує кожен рядок серед інших рядків таблиці. Значення первинного ключа має бути унікальним (тобто не може повторюватись) в межах даної таблиці. Якщо первинний ключ складається з одного поля, то він називається простим, якщо з декількох полів, то складеним. Поля, які утворюють первинний ключ, називаються ключовими. Вторинний ключ – це такий стовпець, значення у якому може повторюватися в декількох рядках, тобто він не є унікальним. У реляційні БД об'єкти представляються за допомогою записів, властивості – за допомогою атрибутів, а взаємозв'язки – за допомогою зв'язків. Записи, атрибути і зв'язки є трьома основними формами представлення даних у БД. Атрибут являє собою елементарне дане – число, символьний рядок і т.д. Запис складається зі значень декількох атрибутів. Зв'язки, як і атрибути, є елементарними даними. Проте їх функція— безпосередньо зв'язувати два записи. У БД зв'язки реалізуються таким чином, що СУБД, використовуючи зв'язок, може швидко перейти від одного зв'язку до іншого. Варто відразу відзначити, що взаємозв'язки реального світу в БД можуть рекомендуватися не тільки у вигляді зв'язків, але й у вигляді атрибутів або записів. Часто (але не завжди) БД проектується таким чином, щоб один або декілька атрибутів однозначно ідентифікували запис. Сукупність значень цих атрибутів називається ключем запису, а самі атрибути—ключовими атрибутами. Ключ запису можна розглядати як унікальне ім'я запису, по якому СУБД завжди може знайти цей запис. При роботі з базою даних виділяють такі етапи роботи: проектування, реалізація, експлуатація. Проектування реляційної бази даних полягає в проектуванні таблиць, які відображають предметну область, та у визначенні зв’язків між ними. Проектування БД відбувається на домашинному рівні, для цього потрібні, грубо кажучи, лише папір та ручка. При проектуванні бази даних необхідно визначати склад і структуру таблиць. Визначення структури таблиць означає не тільки опис імен стовпців та типів даних у них, первинних ключів, але і встановлення ряду інших характеристик, таких як, довжина і формат даних, критерії перевірки даних, що вводяться, допустимість дублювання даних та ін. Ця інформація отримується як результат вивчення і дослідження предметної області, аналізу процесів (задач), які в ній відбуваються. Проект повинен передбачати створення графічної схеми даних та вибір СКБД, за допомогою якої БД буде реалізовуватись. Реалізація БД полягає у матеріалізації розробленого проекту, тобто у перенесенні його на ЕОМ у середовище вибраної СКБД. За допомогою засобів СКБД описуються та створюються таблиці БД, які мають склад, структуру і властивості, передбачені розробленим проектом. Після створення таблиць встановлюються зв’язки між таблицями та вказуються характеристики цих зв’язків, тобто реалізується схема даних. Вона забезпечить використання зв’язків при обробці даних та захистить від деяких помилкових дій користувачів БД при цьому (це називається захист цілісності зв’язків). Після цього починають заповнювати таблиці даними (реальними або тестовими) з метою перевірки правильності роботи БД. Експлуатація полягає у використанні БД для тих цілей, для яких вона створювалась
|