База данных

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Схема базы данных движкаMediawiki

Ба́за да́нных— совокупностьданных,хранимых в соответствии сосхемой данных,манипулирование которыми выполняют в соответствии с правилами средствмоделирования данных[1][2][3].

Многие специалисты указывают на распространённую ошибку, состоящую в некорректном использовании термина «база данных» вместо термина «система управления базами данных», и указывают на необходимость различения этих понятий[4].

Проблемы определения

[править|править код]

В литературе предлагается множество определений понятия «база данных», отражающих скореесубъективноемнение тех или иных авторов, однако общепризнанная единая формулировка отсутствует.

Определения из нормативных документов, в том числестандартов:

Определения из авторитетныхмонографий:

  • База данных— организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупностьданных,характеризующая актуальное состояние некоторойпредметной областии используемая для удовлетворенияинформационных потребностейпользователей[7].
  • База данных— некоторый набор перманентных (постоянно хранимых) данных, используемых прикладными программными системами какого-либо предприятия[8].
  • База данных— совместно используемый набор логически связанных данных (и описание этих данных), предназначенный для удовлетворения информационных потребностей организации[9].

В определениях наиболее часто (явно или неявно) присутствуют следующие отличительныепризнаки[10]:

  1. БД хранится и обрабатывается ввычислительной системе.
    Таким образом, любые внекомпьютерные хранилища информации (архивы,библиотеки,картотекии т. п.) базами данных не являются.
  2. Данные в БД логически структурированы (систематизированы)с целью обеспечения возможности их эффективного поиска и обработки в вычислительной системе.
    Структурированность подразумевает явное выделение составных частей (элементов), связей между ними, а такжетипизациюэлементов и связей, при которой с типом элемента (связи) соотносится определённаясемантикаи допустимые операции[11].
  3. БД включаетсхему,илиметаданные,описывающие логическую структуру БД в формальном виде (в соответствии с некоторойметамоделью).
    В соответствии сГОСТ Р ИСО МЭК ТО 10032-2007,«постоянные данные в среде базы данных включают в себясхемуи базу данных. Схема включает в себя описания содержания, структуры и ограниченийцелостности,используемые для создания и поддержки базы данных. База данных включает в себя набор постоянных данных, определённых с помощью схемы. Система управления данными использует определения данных в схеме для обеспечения доступа и управления доступом к данным в базе данных»[1].

Из перечисленных признаков только первый является строгим, а другие допускают различные трактовки и различные степени оценки. Можно лишь установить некоторую степень соответствия требованиям к БД.

В такой ситуации не последнюю роль играет общепринятая практика. В соответствии с ней, например, не называют базами данныхфайловые архивы,Интернет-порталыилиэлектронные таблицы,несмотря на то, что они в некоторой степени обладают признаками БД. Принято считать, что эта степень в большинстве случаев недостаточна (хотя могут быть исключения).

История возникновения и развития технологий баз данных может рассматриваться как в широком, так и в узком аспекте.

Вшироком смыслепонятие истории баз данных обобщается до истории любых средств, с помощью которых человечество хранило и обрабатывало данные. В таком контексте упоминаются, например, средства учёта царской казны и налогов в древнемШумере(4-e тысячелетие до н.э.)[12],узелковая письменностьинковкипу,клинописи,содержащие документыАссирийского царстваи т. п. Следует помнить, что недостатком этого подхода является размывание понятия «база данных» и фактическое его слияние с понятиями «архив» и даже «письменность».

История баз данных вузком смыслерассматривает базы данных в традиционном (современном) понимании. Эта история начинается с1955 года,когда появилось программируемое оборудование обработки записей.Программное обеспечениеэтого времени поддерживало модель обработки записей на основе файлов. Для хранения данных использовалисьперфокарты[12].

Оперативныесетевые базы данныхпоявились в середине1960-х.Операции над оперативными базами данных обрабатывались в интерактивном режиме с помощью терминалов. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы. За руководство работойData Base Task Group(DBTG), разработавшей стандартныйязык описания данныхиманипулирования данными,Чарльз БахманполучилТьюринговскую премию.

В это же время в сообществе баз данныхКоболбыла проработана концепциясхем баз данныхи концепция независимости данных.

Следующий важный этап связан с появлением в начале1970-хреляционной модели данных,благодаря работамЭдгара Кодда. Работы Кодда открыли путь к тесной связи прикладной технологии баз данных с математикой и логикой. За свой вклад в теорию и практику Эдгар Ф. Кодд также получилпремию Тьюринга.

Сам терминбаза данных(англ.database) появился в начале 1960-х годов, и был введён в употребление на симпозиумах, организованных компаниейSDCв1964и1965 годах,хотя понимался сначала в довольно узком смысле, в контексте системискусственного интеллекта.В широкое употребление в современном понимании термин вошёл лишь в 1970-е годы[13].

Виды баз данных

[править|править код]

Существует огромное количество разновидностей баз данных, различающихся по различнымкритериям.Например, в «Энциклопедии технологий баз данных»[7],по материалам которой написан данный раздел, определяются свыше 50 видов БД.

В классификацию помодели данныхобычно включают:

Классификация по среде хранения различает базы данных, хранящие данные во вторичной памяти («традиционные»,англ.conventional database),резидентные(все данные на стадии исполнения находятся воперативной памяти) и третичные (англ.tertiary database), хранящие данные на отсоединяемых устройствах массового хранения — на основемагнитных лентилиоптических дисков.При этом во всех классах так или иначе используются все среды хранения, например, для резидентных баз данных СУБД записывает в постоянную памятьжурналы предзаписи,а для традиционных баз используетсякэшв оперативной памяти.

Также базы данных могут классифицироваться по содержимому, например, могут быть географическими, историческими, научными,мультимедийными.Для некоторых форм содержания строятся специализированные СУБД, либо добавляются специализированные возможности в СУБД общего назначения, среди таковых баз данных:

По степени распределённости базы данных подразделяются на следующие классы:

  • централизованные (сосредоточенные;англ.centralized database) — полностью поддерживаемые на одном компьютере
  • распределённые(англ.distributed database), составные части которых размещаются в различных узлах компьютерной сети в соответствии с каким-либо критерием.

Среди распределённых баз данных выделяют:

  • сегментированные:разделённые на независимые сегменты, каждый из которых управляется отдельным экземпляром сервера базы данных, размещаемым, как правило, на отдельном вычислительном узле;
  • тиражированные(реплицированные;англ.replicated database): одни и те же данные разнесены под управление различных экземпляров СУБД;
  • неоднородные (англ.heterogeneous distributed database): фрагменты распределённой базы в разных узлах сети поддерживаются средствами более одной СУБД.

Возможны смешанные варианты, например, для одной и той же распределённой базы для больших объектов используется сегментирование, а для небольших — репликация.

По способам организации хранения могут выделятьсяциклические базы данных(записывают новые данные вместо устаревших),потоковые базы данных.

Сверхбольшие базы данных

[править|править код]

Сверхбольшая база данных(англ.Very Large Database, VLDB) — это база данных, которая занимает чрезвычайно большой объём наустройстве физического хранения.Термин подразумевает максимально возможные объёмы БД, которые определяются последними достижениями в технологиях физического хранения данных и в технологиях программного оперирования данными.

Количественное определение понятия «чрезвычайно большой объём» меняется во времени. Так, в 1997 году самой большой в мире была текстовая база данных Knight Ridder’s DIALOG объёмом 7терабайт[14].В 2001 году самой большой считалась база данных объёмом 10,5 терабайт, в 2003 году — объёмом 25 терабайт[15].В 2005 году самыми крупными в мире считались базы данных с объёмом хранилища порядка сотни терабайт[16].В 2006 годупоисковая машина Googleиспользовала базу данных объёмом 850 терабайт[17].

К 2010 году считалось, что объём сверхбольшой базы данных должен измеряться по меньшей мерепетабайтами[16].

В 2011 году компанияFacebookхранила данные в кластере из 2 тысяч узлов суммарной ёмкостью 21 петабайт[18];к концу 2012 года объём данных Facebook достиг 100 петабайт[19],а в 2014 году — 300 петабайт[20].

К 2014 году по косвенным оценкам компанияGoogleхранила на своих серверах до 10—15эксабайтданных в совокупности[21].

По некоторым оценкам, к 2025 году генетики будут располагать данными огеномахот 100 миллионов до 2 миллиардов человек, и для хранения подобного объёма данных потребуется от 2 до 40 эксабайт[22].

В целом, по оценкам компанииIDCв 2018 году, суммарный объём данных «цифровой вселенной» удваивается каждые два года и изменится от 4,4зеттабайтав 2013 году до 44 зеттабайт в 2020 году[23].

Исследования в области хранения и обработки сверхбольших баз данныхVLDBвсегда находятся на острие теории и практики баз данных. В частности, с1975 годапроходит ежегодная конференцияInternational Conference on Very Large Data Bases(«Международная конференция по сверхбольшим базам данных»). Большинство исследований проводится под эгидой некоммерческой организацииVLDB Endowment(Фонд целевого капитала «VLDB»), которая обеспечивает продвижение научных работ и обмен информацией в области сверхбольших БД и смежных областях.

  1. 12ГОСТ Р ИСО МЭК ТО 10032-2007: Эталонная модель управления данными (идентичен ISO/IEC TR 10032:2003 Information technology — Reference model of data management)
  2. ГОСТ 33707-2016 (ISO/IEC 2382:2015) Информационные технологии (ИТ). Словарь
  3. ISO/IEC TR 10032:2003 - Information technology -- Reference Model of Data Management(англ.).www.iso.org. Дата обращения: 9 июля 2018.Архивировано9 июля 2018 года.
  4. «Следует отметить, что термин база данных часто используется даже тогда, когда на самом деле подразумевается СУБД. […]Такое обращение с терминами предосудительно».— К. Дж. Дейт. Введение в системы баз данных. — 8-е изд. — М.: «Вильямс», 2006, стр. 50.
    «Этот термин (база данных) часто ошибочно используется вместо термина ‘система управления базами данных’».— Когаловский М. Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002., стр. 460.
    «Среди непрофессионалов […] путаница возникает при использовании терминов „база данных “и „система управления базами данных “. […] Мы будем строго разделять эти термины».— Кузнецов С. Д. Основы баз данных: учебное пособие. — 2-е издание, испр. — М.: Интернет-Университет Информационных Технологий; БИНОМ. Лаборатория знаний, 2007, стр. 19.
  5. Гражданский кодекс РФ, ст. 1260
  6. ISO/IEC 2382:2015 - Information technology -- Vocabulary(англ.).www.iso.org. Дата обращения: 9 июля 2018.Архивировано24 апреля 2021 года.
  7. 12Когаловский М. Р., 2002.
  8. Дейт К. Дж., 2005.
  9. Коннолли Т., Бегг К., 2003.
  10. Мирошниченко Е. А.К формальному определению понятия «база данных»Архивная копияот 27 апреля 2016 наWayback Machine// Пробл. информатики. 2011. № 2. С. 83-87.
  11. Важно понимать, что структурированность базы данных оценивается не на уровне физического хранения (на котором все данные представлены совокупностямибитовилибайтов), а на уровне некоторой логическоймодели данных.
  12. 12Грей, Дж. Управление данными: прошлое, настоящее и будущее.Дата обращения: 16 апреля 2010.Архивировано27 апреля 2010 года.
  13. Haigh T. How Data Got its Base: Information Storage Software in the 1950s and 1960s // IEEE Annals of the History of Computing. — 2009. — #4 October-December
  14. Very Large Database.Дата обращения: 6 ноября 2016.Архивировано6 ноября 2016 года.
  15. Riedewald M., Agrawal D., Abbadi A. Dynamic Multidimensional Data Cubes for Interactive Analysis of Massive Datasets // In: Encyclopedia of Information Science and Technology, First Edition, Idea Group Inc., 2005.ISBN 9781591405535
  16. 12«Экстремальные» базы данных: Самые большие и самые быстрыеАрхивная копияот 1 ноября 2011 наWayback Machine,2010 г.
  17. Alex Chitu.How Much Data Does Google Store?Архивная копияот 15 сентября 2016 наWayback Machine,2006
  18. Shvachko, Konstantin.Apache Hadoop. The Scalability Update(англ.).— 2011. —Vol. 36,no. 3.—P. 7—13.—ISSN1044-6397.
  19. Josh Constine.How Big Is Facebook’s Data?Архивная копияот 12 сентября 2018 наWayback Machine//TechCrunch,23.08.2012
  20. Wiener, J., Bronson N.Facebook’s Top Open Data ProblemsАрхивная копияот 12 сентября 2018 наWayback Machine,22.10.2014
  21. Colin Carson.How Much Data Does Google Store?Архивная копияот 15 сентября 2016 наWayback Machine,2014
  22. Ася Горина.Увеличивающийся объем генетических данных стал проблемой для наукиАрхивная копияот 5 марта 2017 наWayback Machine
  23. Executive Summary: Data Growth, Business Opportunities, and the IT Imperatives.Дата обращения: 12 сентября 2018.Архивировано12 сентября 2018 года.
  • Когаловский М. Р.Энциклопедия технологий баз данных. —М.:Финансы и статистика,2002. — 800 с. —ISBN 5-279-02276-4.
  • Кузнецов С. Д.Основы баз данных. — 2-е изд. —М.:Интернет-университет информационных технологий; БИНОМ. Лаборатория знаний, 2007. — 484 с. —ISBN 978-5-94774-736-2.
  • Дейт К. Дж.Введение в системы баз данных= Introduction to Database Systems. — 8-е изд. —М.:Вильямс,2005. — 1328 с. —ISBN 5-8459-0788-8(рус.) 0-321-19784-4 (англ.).
  • Коннолли Т., Бегг К.Базы данных. Проектирование, реализация и сопровождение. Теория и практика = Database Systems: A Practical Approach to Design, Implementation, and Management. — 3-е изд. —М.:Вильямс,2003. — 1436 с. —ISBN 0-201-70857-4.
  • Гарсиа-Молина Г.,Ульман Дж.,Уидом Дж.Системы баз данных. Полный курс = Database Systems: The Complete Book. —Вильямс,2003. — 1088 с. —ISBN 5-8459-0384-X.
  • Банк данных/ А. Б. Антопольский //Большая российская энциклопедия:[в 35 т.]/ гл. ред.Ю. С. Осипов.—М.:Большая российская энциклопедия, 2004—2017.
  • Date, C. J.Date on Database: Writings 2000–2006. —Apress,2006. — 566 с. —ISBN 978-1-59059-746-0,1-59059-746-X.
  • Date, C. J.Database in Depth.— O'Reilly, 2005. — 240 с. —ISBN 0-596-10012-4.
  • Beynon-Davies P. (2004). Database Systems 3rd Edition. Palgrave, Basingstoke, UK.ISBN 1-4039-1601-2
  • CITForum— материалы на сайте Центра информационных технологий
  • Very Large Data Base— Endowment Inc.
  • ACM SIGMOD— Association for Computing Machinery: Special Interest Group On Management of Data.