База даних
Визначення з міжнародних стандартів:
- База даних - сукупність даних, що зберігаються у відповідності зі схемою даних, маніпулювання якими виконують відповідно до правил засобів моделювання даних. [3]
- База даних - сукупність даних, організованих відповідно до концептуальної структурою, яка описує характеристики цих даних і взаємини між ними, причому такі збори даних, яке підтримує одну або більше областей застосування [4].
- База даних - організована відповідно до певних правил і підтримувана в пам'яті комп'ютера сукупність даних. характеризує актуальний стан деякої предметної області і використовувана для задоволення інформаційних потреб користувачів. [5]
- База даних - деякий набір перманентних (постійно зберігаються) даних, що використовуються прикладними програмними системами будь-якого підприємства. [6]
- База даних - спільно використовуваний набір логічно пов'язаних даних (і опис цих даних), призначений для задоволення інформаційних потреб організації. [7]
У визначеннях найбільш часто (явно або неявно) присутні такі відмінні ознаки [8]:
З перерахованих ознак тільки перший є строгим, а інші допускають різні трактування і різні ступені оцінки. Можна лише встановити певний рівень відповідності вимогам до БД.
У такій ситуації не останню роль відіграє загальноприйнята практика. Відповідно до неї, наприклад, не називають базами даних файлові архіви. Інтернет-портали або електронні таблиці. незважаючи на те, що вони в деякій мірі мають ознаки БД. Прийнято вважати, що ця ступінь в більшості випадків недостатня (хоча можливі виключення).
Історія виникнення і розвитку технологій баз даних може розглядатися як в широкому, так і у вузькому аспекті.
У широкому розумінні поняття історії баз даних узагальнюється до історії будь-яких засобів, за допомогою яких людство зберігало і обробляли дані. У такому контексті згадуються, наприклад, засоби обліку царської скарбниці і податків в стародавньому Шумері (4000 р. До н.е. е.), [10] вузликова писемність інків - стос. клинопису. містять документи асирійського царства і т. п. Слід пам'ятати, що недоліком цього підходу є розмивання поняття «база даних» і фактичне його злиття з поняттями «архів» і навіть «писемність».
Історія баз даних у вузькому сенсі розглядає бази даних в традиційному (сучасному) розумінні. Ця історія починається з 1955 року. коли з'явилося програмований обладнання обробки записів. Програмне забезпечення цього часу підтримувало модель обробки записів на основі файлів. Для зберігання даних використовувалися перфокарти. [10]
Оперативні мережеві бази даних з'явилися в середині 1960-х. Операції над оперативними базами даних оброблялися в інтерактивному режимі за допомогою терміналів. Прості індексного-послідовні організації записів швидко розвинулися до більш потужної моделі записів, орієнтованої на набори. За керівництво роботою Data Base Task Group (DBTG), яка розробила стандартну мову опису даних і маніпулювання даними. Чарльз Бахман отримав Тьюрінговскую премію.
В цей же час в співтоваристві баз даних COBOL була опрацьована концепція схем баз даних і концепція незалежності даних.
Наступний важливий етап пов'язаний з появою на початку 1970-х реляційної моделі даних. завдяки роботам Едгара Ф. Кодда. Роботи Кодда відкрили шлях до тісного зв'язку прикладної технології баз даних з математикою і логікою. За свій внесок в теорію і практику Едгар Ф. Кодд також отримав премію Тьюринга.
Сам термін база даних (англ. Database) з'явився на початку 1960-х років, і був введений у вжиток на симпозіумах, організованих компанією SDC в 1964 і 1965 роках. хоча цей бачили спочатку в досить вузькому сенсі, в контексті систем штучного інтелекту. У широкий вжиток в сучасному розумінні термін увійшов лише в 1970-і роки. [11]
Види баз даних
Існує величезна кількість різновидів баз даних, що відрізняються за різними критеріями. Наприклад, в «Енциклопедії технологій баз даних», [5] за матеріалами якої написаний цей розділ, визначаються понад 50 видів БД.
Основні класифікації наведені нижче.
Класифікація за моделлю даних
Класифікація за середовищі постійного зберігання
- У вторинній пам'яті, або традиційна (англ. Conventional database): середовищем постійного зберігання є периферійна незалежна пам'ять (вторинна пам'ять) - як правило жорсткий диск.
В оперативну пам'ять СУБД поміщає лише кеш і дані для поточної обробки. - В оперативній пам'яті (англ. In-memory database, memory-resident database, main memory database): всі дані на стадії виконання знаходяться в оперативній пам'яті.
- У третинної пам'яті (англ. Tertiary database): середовищем постійного зберігання є від'єднується від сервера пристрій масового зберігання (третинна пам'ять), як правило на основі магнітних стрічок або оптичних дисків.
У вторинній пам'яті сервера зберігається лише каталог даних третинної пам'яті, файловий кеш і дані для поточної обробки; завантаження же самих даних вимагає спеціальної процедури.
Класифікація за вмістом
Класифікація за ступенем розподіленості
- Централізована, або зосереджена (англ. Centralized database): БД, повністю підтримувана на одному комп'ютері.
- Розподілена БД (англ. Distributed database) - складові частини якої розміщуються в різних вузлах комп'ютерної мережі відповідно до будь-яким критерієм.
- Неоднорідна (англ. Heterogeneous distributed database): фрагменти розподіленої БД в різних вузлах мережі підтримуються засобами більше однієї СУБД.
- Однорідна (англ. Homogeneous distributed database): фрагменти розподіленої БД в різних вузлах мережі підтримуються засобами однієї і тієї ж СУБД.
- Фрагментована, або секціонірованная (англ. Partitioned database): методом розподілу даних є фрагментованість (партіціонірованіе, секціонування), вертикальне чи горизонтальне.
- Тиражована (англ. Replicated database): методом розподілу даних є тиражування (реплікація).
Інші види БД
- Просторова (англ. Spatial database): БД, в якій підтримуються просторові властивості сутностей предметної області. Такі БД широко використовуються в геоінформаційних системах.
- Тимчасова. або темпоральна (англ. temporal database): БД, в якій підтримується будь-який аспект часу. беручи до уваги часу, який визначається користувачем.
- Просторово-часова (англ. Spatial-temporal database) БД: БД, в якій одночасно підтримується одне або більше вимірів в аспектах як простору, так і часу.
- Циклічна (англ. Round-robin database): БД, обсяг збережених даних якої не змінюється з часом, оскільки в процесі збереження нових даних вони замінюють більш старі дані. Одні і ті ж осередки для даних використовуються циклічно.
Надвеликі бази даних
Надвелика база даних (англ. Very Large Database, VLDB) - це база даних, яка займає надзвичайно великий обсяг на пристрої фізичного зберігання. Термін має на увазі максимально можливі обсяги БД, які визначаються останніми досягненнями в технологіях фізичного зберігання даних і в технологіях програмного оперування даними.
За деякими оцінками, до 2025 року генетики будуть мати дані про геномах від 100 мільйонів до 2 мільярдів чоловік, і для зберігання подібного обсягу даних буде потрібно від 2 до 40 ексабайт [17].
Фахівці наголошують на необхідності особливих підходів до проектування надвеликих БД. Для їх створення нерідко виконуються спеціальні проекти з метою пошуку таких системотехнічних рішень, які дозволили б хоч якось працювати з такими великими обсягами даних. Як правило, необхідні спеціальні рішення для дискової підсистеми, спеціальні версії операційної середовища і спеціальні механізми звернення СУБД до даних.
Дослідження в області зберігання і обробки надвеликих баз даних VLDB завжди знаходяться на вістрі теорії і практики баз даних. Зокрема, з 1975 року проходить щорічна конференція International Conference on Very Large Data Bases ( «Міжнародна конференція з надвеликих баз даних»). Більшість досліджень проводиться під егідою некомерційної організації VLDB Endowment (Фонд цільового капіталу «VLDB»), яка забезпечує просування наукових робіт та обмін інформацією в галузі надвеликих БД і суміжних областях.