RSS    

   Курсовая работа: Створення бази відеофільмів

Мережева структура баз даних з’явилася як розвиток ієрархічної. Треба підкреслити, що термін «мережева» уживається тут в зовсім незвичному для епохи интернета значенні. Це слово підкреслює модель зв'язків даних в базі, коли кожен запис може знаходитися у відносинах «багато до багатьох» з іншими записами, що робить графічну модель бази схожою на рибальську мережу. Розробляти серйозні додатки в рамках мережевої моделі бази даних досить важко, причому складність розробки при ускладненні задач зростає в геометричній прогресії.

Справжній прорив в розвитку баз даних відбувся тоді, коли збільшена потужність комп'ютерів дозволила повною мірою реалізувати реляційну модель даних. Теорія реляційних баз даних була розроблена доктором Коддом на початку 70-х років 20 століття. У реляційних базах дані зберігаються у вигляді таблиць, що складаються з рядків і стовпців. Стовпці таблиць реляційної бази можуть містити скалярні дані фіксованого типу - числа, рядка, дати... Таблиці в реляційній базі даних можуть бути зв'язані відносинами "один до одного" або "один до багатьох".

Реляційні бази даних займають зараз домінуюче становище. Не буде великим перебільшенням сказати, що ієрархічна і мережева структури баз даних пішли в минуле, поступившися своїм місцем реляційним базам. MS SQL Server і MS Access, InterBase і FoxPro, PostgreSQL і Paradox... Всі вони побудовані на реляційній моделі даних. Реляційною базою в чистому вигляді є і MySQL.

Об'єктно-орієнтовані бази даних з’явилися зовсім нещодавно як природний розвиток об'єктно-орієнтованих мов програмування. На сьогоднішній день ООБД поки не мають широкого розповсюдження, але, поза сумнівом, вони найближчим часом бурхливо розвиватимуться. Це підтверджує і той факт, що розробники багатьох реляційних БД включають в свої бази засоби роботи з об'єктними типами даних. Такі бази даних одержали назву об'єктно-реляційних. Таким же чином, зокрема, розвивається і Oracle. Що була раніше чисто реляційною базою, Oracle починаючи з 8 версії підтримує можливість зберігання і обробки об'єктів і без жодної натяжки може бути віднесена до об'єктно-реляційного класу баз даних.

2.1.3 Етапи проектування БД

I. Концептуальне проектування - збирання, аналіз і редагування вимог до даних. Для цього здійснюються слідуючі заходи:

1.  обстеження предметної області, вивчення її інформаційної структури.

2.  виявлення всіх фрагментів, кожний з яких характеризується призначеним для користувача представленням, інформаційними об'єктами і зв'язками між ними, процесами над інформаційними об'єктами.

3.  моделювання і інтеграція всіх представлень.

Після закінчення даного етапу одержуємо концептуальну модель, інваріантну до структури бази даних. Часто вона представляється у вигляді моделі «сутність-зв'язок».

II. Логічне проектування - перетворення вимог до даних в структури даних. На виході одержуємо СУБД-орієнтовану структуру бази даних і специфікації прикладних програм. На цьому етапі часто моделюють бази даних стосовно різних СУБД і проводять порівняльний аналіз моделей.

III. Фізичне проектування - визначення особливостей зберігання даних, методів доступу і т.д.

Відмінність рівнів представлення даних на кожному етапі проектування реляційної бази даних:

КОНЦЕПТУАЛЬНИЙ РІВЕНЬ - Представлення аналітика (використовується інфологічна модель «сутність-зв'язок»)

·  сутність

·  атрибути

·  зв'язки

ЛОГІЧНИЙ РІВЕНЬ - Представлення програміста

·  записи

·  елементи даних

·  зв'язки між записами

ФІЗИЧНИЙ РІВЕНЬ - Представлення адміністратора

·  групування даних

·  індекси

·  методи доступу

 

2.1.4 Використання БД

Одним з найбільш розроблених напрямів в інформатиці сьогодні можна назвати створення баз даних (БД). Дійсно, будь-яке дослідження базується на використанні інформації і у кожного фахівця існує свій, персональний архів довідкової інформації, який зберігається звичайно у вигляді картотеки з різних вирізок, заміток або публікацій. Природно, що першою перевагою при знайомстві з комп'ютером, предстає можливість систематизації своїх матеріалів в базу даних, електронний варіант якої буде набагато зручнішим. Крім того, тут є і інша перевага – можливість використати чужу БД як вторинне джерело і заощадити таким чином масу часу і зусиль, які були б витрачені на дублювання, по суті, однієї і тієї ж роботи. Систематизований і проаналізований розробником БД матеріал, система посилань і пошуку інформації дозволяють, минувши трудомісткий етап чисто механічної роботи, зосередитися безпосередньо на рішенні поставлених задач.

Створення бази даних передбачає рішення цілого комплексу проблем, в т.ч. розробку програмних, мовних, організаційних і технічних засобів, призначених для централізованого зберігання і колективного використання інформації. Проте заздалегідь слід здійснити відбір цієї самої інформації (яка і складе фонд БД), структурувати її. Тут і починаються основні складнощі. Фактично БД повинна бути інформаційною моделлю проблеми, яка розв’язується за допомогою БД. Визначення об'єкту бази даних принципово важливе, оскільки впливає як на відбір джерел, так і на способи зберігання.

З одного боку, більшість БД створюється в ході рішення конкретних задач. Це проблемно-орієнтовані БД. Але є і такі бази, метою створення яких є збереження інформації, що міститься в джерелі, і велика доступність її для дослідника. Ці напрями розвиваються в руслі відповідно методико- і источнико-орієнтованих підходів.

Ідеальною була б БД, що суміщає обидва принципи. Дослідник у такому разі дістає можливість не просто доступу до великого масиву структурованих даних у вигляді, доступному машині для зчитування, але і може створити в цій структурі свої власні моделі, орієнтовані на рішення конкретних історичних задач.

На даний момент можна констатувати значну роль БД в дослідженні будь-якого фахівця, що використовує в своїй роботі комп'ютер. Важливим досягненням представляється все більший перехід останніми роками з рішення чисто практичних задач до осмислення теоретичних і методологічних проблем.

2.2 Структури даних

В обчислювальній техніці структура даних - це програмна одиниця, що дозволяє зберігати і обробляти безліч однотипних і/або логічно зв'язаних даних. Для додававння, пошуку, зміни і видалення даних структура даних надає деякий набір функцій, що становлять інтерфейс структури даних. Структура даних часто є реалізацією якого-небудь абстрактного типу даних .

При розробці програмного забезпечення велику роль виконує проектування сховища даних, і представлення всіх даних у вигляді безлічі зв'язаних структур даних. Добре спроектоване сховище даних оптимізує використання ресурсів (таких як час виконання операцій, використовуваний обсяг оперативної пам'яті, число звернень до дискових накопичувачів), що вимагаються для виконання найкритичніших операцій.

Структури даних формуються за допомогою типів даних посилань і операцій над ними у вибраній мові програмування .

Різні види структур даних підходять для різних додатків; деякі з них мають вузьку спеціалізацію для певних задач. Наприклад, Б-деревья звичайно підходять для створення баз даних, тоді як хэш-таблиці використовуються повсюдно для створення різного роду словників, наприклад, для відображення доменних імен в інтернет адреси комп'ютерів.

При розробці програмного забезпечення складність реалізації і якість роботи програм істотно залежить від правильного вибору структур даних. Це розуміння дало початок формальним методам розробки і мовам програмування, в яких саме структури даних, а не алгоритми, ставляться в розділ архітектури програмного засобу. Велика частина таких мов володіє певним типом модульної, дозволяючим структурам даних безпечно перевикористовуватися в різних додатках. Об'єктно-орієнтовані мови, такі як Java, C# і C++, є прикладами такого підходу.

Багато класичних структур даних представлені в стандартних бібліотеках мов програмування або безпосередньо вбудоване в мови програмування. Наприклад, структура даних хэш-таблиця вбудована в мови програмування Lua, Perl, Python, Ruby, Tcl і ін. Широко використовується стандартна бібліотека шаблонів STL мови C++. Фундаментальними будівельними блоками для більшої частини структур даних є масиви, записи (конструкція struct в мові С і конструкція record в мові Паскаль ), розмічені об'єднання (конструкція union в мові С) і посилання.

2.3 Функції

Функція - в програмуванні - один з видів підпрограми . Особливість, що відрізняє її від іншого виду підпрограм - процедури, полягає в тому, що функція повертає значення, а її виклик може використовуватися в програмі як вираження.

З погляду теорії систем, функція в програмуванні - окрема система (підсистема, підпрограма), на вхід якої поступають управляючі дії у вигляді значень аргументів . На виході системи одержуємо результат виконання програми. По ходу виконання функції можуть виконуватися також деякі зміни в керованій системі, причому як зворотні, так і незворотні.

У деяких мовах програмування (наприклад, в Паскалі) функції існують разом з процедурами (підпрограмами, що не повертають значення), в інших, наприклад, в С, є єдиним реалізованим видом підпрограми (тобто всі підпрограми є функціями і можуть повертати значення).

Побічним ефектом функції називається будь-яка зміна функцією стану програмного середовища, окрім повернення результату (зміна значень глобальних змінних, виділення і звільнення пам'яті, введення-виведення і так далі). Теоретично найправильнішимє використання функцій, що не мають побічного ефекту (тобто таких, в результаті виклику яких повертається обчислене значення, і лише), хоча на практиці доводиться використовувати функції з побічним ефектом, хоча б для забезпечення введення-виведення і відображення результатів роботи програми. Існує специфічна парадигма програмування - функціональне програмування, в якій будь-яка програма є набором вкладених викликів функцій, що не викликають побічних ефектів. Найвідоміша мова програмування, реалізовуюча цю парадигму - Лісп. У ньому будь-яка операція, будь-яка конструкція мови, будь-яке вираження, окрім константи, є викликами функцій.

Страницы: 1, 2, 3, 4, 5


Новости


Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

                   

Новости

© 2010.