Технология баз данных как самостоятельная ветвь развития информатики появилась

Обновлено: 07.07.2024

В истории вычислительной техники можно проследить развитие двух основных областей ее использования. Первая область — применение вычислительной техники для выполнения численных расчетов, которые слишком долго или вообще невозможно производить вручную. Развитие этой области способствовало интенсификации методов численного решения сложных математических задач, появлению языков программирования, ориентированных на удобную запись численных алгоритмов, становлению обратной связи с разработчиками новых архитектур ЭВМ. Характерной особенностью данной области применения вычислительной техники является наличие сложных алгоритмов обработки, которые применяются к простым по структуре данным, объем которых сравнительно невелик.

Прикрепленные файлы: 1 файл

Лекция 1.docx

  • Базы данных: модели реализация / Т. С. Карпова. - СПб.: Питер, 2001. - 304 с.: ил.
  • Хомоненко А. Д., Цыганков В. М., Мальцев М. Г. Базы данных: Учебник для высших учебных заведений /Под. ред. проф. А. Д. Хомоненко. - СПб.: КОРОНА принт, 2000. - 416 с.
  • Введение
    • История развития баз данных
      • Файлы и файловые системы
      • Первый этап — базы данных на больших ЭВМ
      • Эпоха персональных компьютеров
      • Распределенные базы данных
      • Перспективы развития систем управления базами данных

      История развития баз данных

      В истории вычислительной техники можно проследить развитие двух основных областей ее использования. Первая область — применение вычислительной техники для выполнения численных расчетов, которые слишком долго или вообще невозможно производить вручную. Развитие этой области способствовало интенсификации методов численного решения сложных математических задач, появлению языков программирования, ориентированных на удобную запись численных алгоритмов, становлению обратной связи с разработчиками новых архитектур ЭВМ. Характерной особенностью данной области применения вычислительной техники является наличие сложных алгоритмов обработки, которые применяются к простым по структуре данным, объем которых сравнительно невелик.

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

      • надежное хранение информации в памяти компьютера;
      • выполнение специфических для данного приложения преобразований информации и вычислений;
      • предоставление пользователям удобного и легко осваиваемого интерфейса.

      Обычно такие системы имеют дело с большими объемами информации, имеющей достаточно сложную структуру. Классическими примерами информационных систем являются банковские системы, автоматизированные системы управления предприятиями, системы резервирования авиационных или железнодорожных билетов, мест в гостиницах и т. д.

      Вторая область использования вычислительной техники возникла несколько позже первой. Это связано с тем, что на заре вычислительной техники возможности компьютеров по хранению информации были очень ограниченными. Говорить о надежном и долговременном хранении информации можно только при наличии запоминающих устройств, сохраняющих информацию после выключения электрического питания. Оперативная (основная) память компьютеров этим свойством обычно не обладает. В первых компьютерах использовались два вида устройств внешней памяти — магнитные ленты и барабаны. Емкость магнитных лент была достаточно велика, но по своей физической природе они обеспечивали последовательный доступ к данным. Магнитные же барабаны (они ближе всего к современным магнитным дискам с фиксированными головками) давали возможность произвольного доступа к данным, но имели ограниченный объем хранимой информации.

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

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

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

      Файлы и файловые системы

      Важным шагом в развитии именно информационных систем явился переход к использованию централизованных систем управления файлами. С точки зрения прикладной программы, файл — это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные. Правила именования файлов, способ доступа„к данным, хранящимся в файле, и структура этих данных зависят от конкретной системы управления файлами и, возможно, от типа файла. Система управления файлами берет на себя распределение внешней памяти, отображение имен файлов в соответствующие адреса во внешней памяти и обеспечение доступа к данным.

      Конкретные модели файлов, используемые в системе управления файлами, мы рассмотрим далее, когда перейдем к физическим способам организации баз данных, а на этом этапе нам достаточно знать, что пользователи видят файл как линейную последовательность записей и могут выполнить над ним ряд стандартных операций:

      • создать файл (требуемого типа и размера);
      • открыть ранее созданный файл;
      • прочитать из файла некоторую запись (текущую, следующую, предыдущую, первую, последнюю);
      • записать в файл на место текущей записи новую, добавить новую запись в конец файла.

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

      Следующей причиной стала необходимость обеспечения эффективной параллельной работы многих пользователей с одними и теми же файлами. В общем случае системы управления файлами обеспечивали режим многопользовательского доступа. Если операционная система поддерживает многопользовательский режим, вполне реальна ситуация, когда два или более пользователя одновременно пытаются работать с одним и тем же файлом. Если все пользователи собираются только читать файл, ничего страшного не произойдет. Но если хотя бы один из них будет изменять файл, для корректной работы этих пользователей требуется взаимная синхронизация их действий по отношению к файлу.

      В системах управления файлами обычно применялся следующий подход. В операции открытия файла (первой и обязательной операции, с которой должен начинаться сеанс работы с файлом) среди прочих параметров указывался режим работы (чтение или изменение). Если к моменту выполнения этой операции некоторым пользовательским процессом PR1 файл был уже открыт другим процессом PR2 в режиме изменения, то в зависимости от особенностей системы процессу PR1 либо сообщалось о невозможности открытия файла, либо он блокировался до тех пор, пока в процессе PR2 не выполнялась операция закрытия файла.

      При подобном способе организации одновременная работа нескольких пользователей, связанная с модификацией данных в файле, либо вообще не реализовывалась, либо была очень замедлена.

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

      Первый этап — базы данных на больших ЭВМ

      История развития СУБД насчитывает более 30 лет. В 1968 году была введена в эксплуатацию первая промышленная СУБД система IMS фирмы IBM. В 1975 году появился первый стандарт ассоциации по языкам систем обработки данных — Conference of Data System Languages (CODASYL), который определил ряд фундаментальных понятий в теории систем баз данных, которые и до сих пор являются основополагающими для сетевой модели данных.

      В дальнейшее развитие теории баз данных большой вклад был сделан американским математиком Э. Ф. Коддом, который является создателем реляционной модели данных. В 1981 году Э. Ф. Кодд получил за создание реляционной модели и реляционной алгебры престижную премию Тьюринга Американской ассоциации по вычислительной технике.

      Менее двух десятков лет прошло с этого момента, но стремительное развитие вычислительной техники, изменение ее принципиальной роли в жизни общества, обрушившийся бум персональных ЭВМ и, наконец, появление мощных рабочих станций и сетей ЭВМ повлияло также и на развитие технологии баз данных. Можно выделить четыре этапа в развитии данного направления в обработке данных. Однако необходимо заметить, что все же нет жестких временных ограничений в этих этапах: они плавно переходят один в другой и даже сосуществуют параллельно, но тем не менее выделение этих этапов позволит более четко охарактеризовать отдельные стадии развития технологии баз данных, подчеркнуть особенности, специфичные для конкретного этапа.

      Первый этап развития СУБД связан с организацией баз данных на больших машинах типа IBM 360/370, ЕС-ЭВМ и мини-ЭВМ типа PDP11 (фирмы Digital Equipment Corporation — DEC), разных моделях HP (фирмы Hewlett Packard).

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


      Базы данных лежат в основе практически всех современных информационных и информационно - телекоммуникационных систем, и это коренным образом изменило характер работы многих организаций. Развитие СУБД началось еще в 60-е годы, когда разрабатывался проект полета корабля Apollo на Луну.

      В середине 60-х годов корпорация IBM совместно с фирмой NAA (North American Aviation, в настоящее время - Rockwell International) разработали первую СУБД - иерархическую систему IMS (Information Management System). Несмотря на то, что IMS является самой первой из всех коммерческих СУБД, она до сих пор остается основной иерархической СУБД, используемой на большинстве крупных мейнфреймов [4].

      Другим заметным достижением середины 60-х годов было появление системы IDS (Integrated Data Store) фирмы General Electric. Развитие этой системы привело к созданию нового типа систем управления базами данных - сетевых СУБД, что оказало существенное влияние на информационные системы того поколения. Сетевая СУБД создавалась для представления более сложных взаимосвязей между данными, чем те, которые можно было моделировать с помощью иерархических структур, и послужили основой для разработки первых стандартов БД [4].

      1. Общие положения

      Система управления базами данных (СУБД) — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных [1].

      Основные функции СУБД:

      управление данными во внешней памяти (на дисках);

      управление данными в оперативной памяти с использованием дискового кэша;

      журнализация изменений, резервное копирование и восстановление базы данных после сбоев;

      поддержка языков БД (язык определения данных, язык манипулирования данными) [1].

      Обычно современная СУБД содержит следующие компоненты:

      ядро, которое отвечает за управление данными во внешней и оперативной памяти и журнализацию,

      процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,

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

      а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы [1].

      Классификации СУБД по моделям данных:

      По степени распределённости:

      Локальные СУБД (все части локальной СУБД размещаются на одном компьютере);

      Распределённые СУБД (части СУБД могут размещаться на двух и более компьютерах).

      По способу доступа к БД:

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

      Преимуществом этой архитектуры является низкая нагрузка на процессор файлового сервера.

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

      На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах — недостатком [1].

      Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.

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

      Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу.

      Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик, как высокая надёжность, высокая доступность и высокая безопасность.

      Примеры: Oracle, Firebird, Interbase, IBM DB2, Informix, MS SQL Server, Sybase Adaptive Server Enterprise, PostgreSQL, MySQL, Caché, ЛИНТЕР.

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

      2. История возникновения и развития баз данных

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

      Первая область — применение вычислительной техники для выполнения численных расчетов, сложных алгоритмов обработки с помощью алгоритмических языков, но все они имеют дело с простыми структурами данных, объем которых невелик.

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

      - надежное хранение информации в памяти компьютера;

      - выполнение специфических для данного приложения преобразований информации и вычислений;

      - предоставление пользователям удобного и легко осваиваемого интерфейса [2].

      Важным шагом в развитии именно информационных систем явился переход к использованию централизованных систем управления файлами.

      Файл — это именованная область внешней памяти, в которую можно записывать и из которой можно считывать данные.

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

      создать файл (требуемого типа и размера);

      открыть ранее созданный файл;

      прочитать из файла некоторую запись (текущую, следующую, предыдущую, первую, последнюю);

      записать в файл на место текущей записи новую, добавить новую запись в конец файла [1].

      Структура записи файла была известна только программе, которая с ним работала. Каждая программа, работающая с файлом, должна была иметь у себя внутри структуру данных, соответствующую структуре этого файла. Поэтому при изменении структуры файла требовалось изменять структуру программы, а это требовало новой компиляции. То есть это означает зависимость программ от данных. Информационные системы используются многими пользователями одновременно. При изменении структуры файлов необходимо изменять программы всех пользователей. А ведет дополнительные затраты на разработку [1].

      Это было первым существенным недостатком файловых систем, который явился толчком к созданию новых систем хранения и управления информацией.

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

      Одновременная работа нескольких пользователей во многопользовательских ОС, связанная с модификацией данных в файле, либо вообще не реализовывалась, либо очень замедлена.

      Все эти недостатки послужили развитию нового подхода к управлению информацией. Этот подход был реализован в СУБД (системах управления данными).

      История развития СУБД насчитывает более 30 лет. В 1968 году была введена в эксплуатацию первая промышленная СУБД система IMS фирмы IBM. В 1975 году появился первый стандарт ассоциации по языкам систем обработки данных — Conference of Data System Languages (CODASYL), который определил ряд фундаментальных понятий в теории систем баз данных, которые и до сих пор являются основополагающими для сетевой модели данных. В дальнейшее развитие теории баз данных большой вклад был сделан американским математиком Э. Ф. Коддом, который является создателем реляционной модели данных. В 1981 году Э. Ф. Кодд получил за создание реляционной модели и реляционной алгебры престижную премию Тьюринга Американской ассоциации по вычислительной технике.

      Развитие вычислительной техники повлияло также и на развитие технологии баз данных. Можно выделить четыре этапа в развитии данного направления в обработке данных.

      Первый этап развития СУБД связан с организацией баз данных на больших машинах типа IBM 360/370, ЕС-ЭВМ и мини-ЭВМ типа PDP11 (фирмы Digital Equipment Corporation — DEC), разных моделях HP (фирмы Hewlett Packard) [2].

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

      Особенности этого этапа развития выражаются в следующем:

      Все СУБД базируются на мощных мультипрограммных операционных системах (MVS, SVM, RTE, OSRV, RSX, UNIX), поэтому в основном поддерживается работа с централизованной базой данных в режиме распределенного доступа.

      Функции управления распределением ресурсов в основном осуществляются операционной системой (ОС).

      Поддерживаются языки низкого уровня манипулирования данными, ориентированные на навигационные методы доступа к данным.

      Значительная роль отводится администрированию данных [2].

      Проводятся серьезные работы по обоснованию и формализации реляционной модели данных, и была создана первая система (System R), реализующая идеологию реляционной модели данных [2].

      Проводятся теоретические работы по оптимизации запросов и управлению распределенным доступом к централизованной БД, было введено понятие транзакции.

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

      Появляются первые языки высокого уровня для работы с реляционной моделью данных. Однако отсутствуют стандарты для этих первых языков.

      Второй этап – это этап развития персональных компьютеров.

      Особенности этого этапа следующие:

      Все СУБД были рассчитаны на создание БД в основном с монопольным доступом.

      Большинство СУБД имели развитый и удобный пользовательский интерфейс. В большинстве существовал интерактивный режим работы с БД как в рамках описания БД, так и в рамках проектирования запросов. Кроме того, большинство СУБД предлагали развитый и удобный инструментарий для разработки готовых приложений без программирования (на основе готовых шаблонов форм, конструкторов запросов) [2].

      Во всех СУБД поддерживался только внешний уровень представления реляционной модели, то есть только внешний табличный вид структур данных.

      При наличии высокоуровневых языков манипулирования данными типа реляционной алгебры и SQL в настольных СУБД поддерживались низкоуровневые языки манипулирования данными на уровне отдельных строк таблиц.

      В настольных СУБД отсутствовали средства поддержки ссылочной и структурной целостности базы данных. Эти функции должны были выполнять приложения.

      Наличие монопольного режима работы фактически привело к вырождению функций администрирования БД и в связи с этим — к отсутствию инструментальных средств администрирования БД.

      Сравнительно скромные требования к аппаратному обеспечению со стороны настольных СУБД.

      Представители этого семейства — очень широко использовавшиеся до недавнего времени СУБД Dbase (DbaseIII+, DbaseIV), FoxPro, Clipper, Paradox.

      Третий этап - распределенные базы данных (переход от персонализации к интеграции)

      Особенности этого этапа:

      Практически все современные СУБД обеспечивают поддержку полной реляционной модели, а именно:

      О структурной целостности — допустимыми являются только данные, представленные в виде отношений реляционной модели;

      О языковой целостности, то есть языков манипулирования данными высокого уровня (в основном SQL);

      О ссылочной целостности, контроля за соблюдением ссылочной целостности в течение всего времени функционирования системы, и гарантий невозможности со стороны СУБД нарушить эти ограничения [2].

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

      Необходимость поддержки многопользовательской работы с базой данных и возможность децентрализованного хранения данных потребовали развития средств администрирования БД с реализацией общей концепции средств защиты данных.

      Создание теоретических трудов по оптимизации реализаций распределенных БД и работе с распределенными транзакциями и запросами с внедрением полученных результатов в коммерческие СУБД.

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

      Разработка стандартов языков описания и манипулирования данными SQL89, SQL92, SQL99 и технологий по обмену данными между различными СУБД.

      Разработка концепцией объектно-ориентированных БД — ООБД. Представителями СУБД, относящимся к второму этапу, можно считать MS Access 97 и все современные серверы баз данных Oracle7.3,Oracle 8.4 MS SQL6.5, MS SQL7.0, System 10, System 11, Informix, DB2, SQL Base и другие современные серверы баз данных, которых в настоящий момент насчитывается несколько десятков [2].

      6. Четвертый этап

      Четвертый этап характеризуется появлением новой технологии доступа к данным — интранет.

      Основное отличие этого подхода от технологии клиент-сервер состоит в том, что отпадает необходимость использования специализированного клиентского программного обеспечения. Для работы с удаленной базой данных используется стандартный браузер.

      При этом встроенный в загружаемые пользователем HTML-страницы код, написанный обычно на языке Java, Java-script, Perl и других, отслеживает все действия пользователя и транслирует их в низкоуровневые SQL-запросы к базе данных, выполняя, таким образом, ту работу, которой в технологии клиент-сервер занимается клиентская программа. Сложные задачи реализованы в архитектуре "клиент-сервер" с разработкой специального клиентского программного обеспечения [2].

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

      Кроме классических БД, предназначенных в основном для хранения текстовой и числовой информации, в последнее время получили развитие новые направления применения технологии БД:

      - БД мультимедиа (Multimedia Databases);

      - географические информационные системы (Geographic Information Systems - GIS), предназначенные для хранения карт, погодных данных и снимков со спутников;

      - аналитическая обработка данных (Data Warehouses, Data Mining and On-line Analytical Processing - OLAP). Системы, использующиеся для выделения и анализа необходимой информации из очень больших БД для принятия решений;

      - системы реального времени и активные БД (Real-time and Active Database Technology), использующиеся для контроля проектирования и производства;

      Информационные системы (ИС) - системы, позволяющие пользователю хранить информацию и обмениваться ею.

      ИС разделяют на две группы:

      1) системы информационного обеспечения;

      2) системы, имеющие самостоятельное целевое назначение (область применения).

      Системы 1 группы входят во все АСУ, АСУП, САПР. Ко 2-й группе систем относятся системы информационно-справочные (ИСС), информационно-поисковые (ИПС), информационно-управляющие системы (ИУС). В ИСС и ИПС информация представляется в определенном формате, который удовлетворяет пользователя и выдается по его требованию.

      Предметная область (ПО) – область применения конкретного банка (совокупность описания объектов, представляющих интерес для пользователя).

      Данные - это информация, фиксированная в определенной форме для последующей обработки, передачи и хранения.

      Различают два аспекта данных:

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

      Датологический аспект связан с представлением данных в памяти машины.

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

      Система управления базой данных (СУБД) - это программное обеспечение для использования и модификации БД одним или несколькими лицами.

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

      2) Обеспечение секретности.

      3) Защита целостности данных (СУБД может осуществлять проверку на ограничение и не противоречивость данных).

      4) Синхронизация (защита от одновременного доступа несколькими пользователями к одному элементу данных).

      5) Защита от отказов и восстановление (обеспечение создания копий для восстановления БД после устранения причин сбоя).

      Банк данных как АИС

      1.1 Состав банка данных

      Основные компоненты банка данных: БД, СУБД, администратор БД (АБД), словарь данных, обслуживающий персонал, вычислительная система.

      1)БД - датологическое представление информационной модели предметной области.

      2)СУБД - программа, полностью управляющая доступом к БД. СУБД включает трансляторы (интерпретаторы) с языка описания данных (ЯОД) и языка манипулирования данными (ЯМД).

      ЯОД - язык высокого уровня, предназначенный для задания схемы БД, то есть описывающий типы данных, их структуру и взаимосвязь между ними. Это декларативный язык.

      ЯМД - язык запросов - система команд, осуществляющая манипулирование данными. В зависимости от способа реализации

      ЯМД СУБД делят на: СУБД с включающим языком; СУБД с базовым языком.

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

      3)Словарь данных - специальная система, предназначенная для хранения единообразной и централизованной информацией обо всех ресурсах конкретного банка данных.

      В словаре данных содержится следующая информация

      а) об объектах, их свойствах и отношениях;

      б) о данных из БД (наименования, структура, связи);

      в) о возможных значениях и форматов данных;

      г) об источниках поступления данных;

      д) о кодах защиты и разграничения доступа и т. д.

      4)Администратор базы данных (АБД) - лицо или группа лиц, реализующих управление БД.

      Состав группы АБД: а) группа сопровождения; б) группа контроля функционирования банком данных; в) эксперт по языкам запросов; г) эксперт по прикладным программам;

      д) эксперт по системным вопросам;

      е) эксперт по вопросам эксплуатации. Классификация задач, решаемых АБД

      Классификация Задачи Приложения Системы
      Административные задачи определение операционных целей; определение политики доступа; стандартизация элементов данных; задание приоритетных приложений выбор программного и аппаратного обеспечения; определение политики восстановления БД; стандартизация программирования
      Технические задачи создание и определение данных; разработка структур данных; обучение пользователей; ведение словаря данных; документирование БД сопровождение БД; разработка физических структур; регулирование эксплутационных характеристик; отслеживание эксплуатации БД




      Прикладные задачи рассчитаны на пользователя, связаны с содержанием и использованием БД. Системные задачи имеют дело с аппаратной средой и эксплуатацией БД.

      Этапы развития БД. Требования к организации БД. Этапы проектирования БД.

      Выделяют 4 этапа. Первый этап:

      логический файл данных физический файл данных

      программное обеспечение в/в

      Рис. 2. Простые файлы данных (начало 60-х годов).

      На этом этапе обработка данных сводилась к вводу/выводу. Данные размещались в файлах последовательно, носителями были магнитные ленты. Любое изменение данных, аппаратных средств приводило к изменению прикладных программ. Логическая структура данных соответствовала физической. Данные использовались только для одного приложения, существовало большое количество копий данных (большая избыточность). Обработка велась в пакетном режиме, не был использован режим реального времени.

      Второй этап:

      логический файл данных физический файл данных

      Методы
      доступа

      Рис. 3. Методы доступа (конец 60-х годов).

      На этом этапе достигнута независимость прикладных программ от аппаратных средств. Существует несложная зависимость между физической и логической структурами данных. На данном этапе используются следующие методы доступа к наборам данных: прямой; последовательный; индексно-последовательный.

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

      Третий этап:

      прикладных программистов Физическая БД

      Рис. 4. Управление данными (начало 70-х годов).

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

      Четвертый этап:

      логическая независимость данных физическая независимость данных

      Рис. 5. Современные системы БД

      ГЛПД - глобальное логическое представление данных.

      С возрастанием обрабатываемого объема данных стало необходимым изменять и логическую структуру данных. Возникла задача 2-х уровней независимости данных (физической и логической). Логическая независимость данных означает, что общая логическая структура данных может быть изменена без изменения прикладных программ. Физическая независимость данных означает, что физическое расположение (организация) данных может изменяться, не вызывая при этом изменений общей логической структуры и прикладных программ.

      Требования к организации БДОсновные требования:

      1) Многократное использование данных. Пользователи, которые по-разному понимают данные, могут их по разному использовать.

      2) Сохранение затрат умственного труда. Существующие программы и структуры данных не изменяются при внесении изменений в БД.

      3) Низкие затраты. Низкая стоимость хранения и использования данных, минимизация затрат на внесение изменений в БД.

      4) Уменьшение избыточности данных. Требование новых приложений удовлетворяется за счет уже имеющихся данных, а не путем создания новых файлов.

      5) Производительность. Запросы на данные удовлетворяются с такой скоростью, которая требуется для использования данных.

      6) Простота. Пользователи могут удалить и понять какие данные имеются в их распоряжении.

      7) Легкость использования. Пользователи имеют простой доступ к данным , сложный осуществляет СУБД.

      8) Гибкость использования. Обращение к данным или их использование осуществляется с приложением различных методов доступа.

      9) Быстрая обработка непредсказуемых запросов. Случайные запросы на данные обрабатываются с помощью языка высокого уровня запросов или генератора отсчетов, а не прикладными программами, написанными программистами.

      10) Простота внесения изменений . База данных может изменяться и увеличиваться без нарушения имеющихся способов использования данных.

      11) Достоверность данных и соответствие их одному уровню обновления. Система запрещает наличие одной и той же версии элементов данных.

      12) Секретность. Несанкционированный доступ к данным не возможен. Одни и те же данные получают пользователи различных уровней различными путями.

      13) Защита от уничтожения и искажения. Данные защищают от сбоя, вмешательств и т. д.

      14) Готовность. Пользователь быстро получает данные, когда ему это необходимо.

      Дополнительные требования:

      1) Физическая независимость данных.

      2) Логическая независимость данных.

      3) Контролируемая избыточность.

      4) Обеспечение требуемой скорости доступа.

      5) Обеспечение требуемой скорости поиска.

      6) Стандартизация данных в пределах учреждения.

      7) Словарь данных.

      8) Наличие интерфейса высокого уровня для связи с пользователем.

      9) Наличие языка взаимодействия пользователя с системой.

      10) Контроль целостности данных.

      11) Восстановление данных после сбоев.

      13) Вспомогательные средства для проектирования и управления.

      14) Автоматическая реорганизация или перемещение.

      Процесс проектирования БД

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

      Рис. 6. Процесс проектирования БД.

      ИПП - информационные потребности пользователя.

      Процесс проектирования БД состоит из 2-х этапов:

      1) проектирование логической БД;

      2) проектирование физической БД.

      При проектировании логической БД производится анализ ПО и информационных потребностей пользователя. Пользовательские требования выражаются рядом внешних моделей - представлений. Проектирование внешней модели заключается в формализации этих представлений. КМД соответствует общему представлению о БД, то есть она включает представление о структуре данных, их целостности и манипулировании данными. Преобразование ВМД в КМД определяется выбором СУБД. Как внешняя так и концептуальная модель может быть 3-х видов:

      Физическое проектирование связано с фактической реализацией БД. Оно определяет рациональный выбор структуры хранения данных и методов доступа к ним. Результат физического проектирования - внутренняя модель данных.

      При проектировании БД рассматривают 3 уровня абстракции:

      Основные понятия, используемые для описания БД. Схемы и подсхемы как способ описания логической структуры данных.

      История развития баз данных Берестнева О.Г. Панкрац Д.А.

      № слайда 1

      История развития баз данных Берестнева О.Г. Панкрац Д.А.

      Введение В истории вычислительной техники можно проследить развитие двух основны

      № слайда 2

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

      Вторая область использования вычислительной техники возникла несколько позже пер

      № слайда 3

      Вторая область использования вычислительной техники возникла несколько позже первой. Это связано с тем, что на заре вычислительной техники возможности компьютеров по хранению информации были очень ограниченными. Поэтому появление съемных магнитных дисков с подвижными головками явилось революцией в истории вычислительной техники. С их появлением началась история систем управления данными во внешней памяти, произошел переход к использованию централизованных систем управления файлами.

      Недостатки файловых систем 1. Избыточность данных. Файловые системы характеризую

      № слайда 4

      Недостатки файловых систем 1. Избыточность данных. Файловые системы характеризуются значительной избыточностью, поскольку нередко для решения различных задач управления используются одни и одни и те же данные, размещенные в разных файлах. Из-за дублирования данных в разных файлах память на внешних запоминающих устройствах используется неэкономно, информация одного и одного и того же объекта управления распределяется между многими файлами. При этом довольно тяжело представить общую информационную модель предметной области.

      2. Несогласованность данных. Учитывая, что одна и одна и та же информация может

      № слайда 5

      2. Несогласованность данных. Учитывая, что одна и одна и та же информация может размещаться в разных файлах, технологически тяжело проследить за внесением изменений одновременно во все файлы. Из-за этого может возникнуть несогласованность данных, когда одно и одно и то же поле в разных файлах может иметь разные значения.

      3. Зависимость структур данных и прикладных программ. При файловой организации л

      № слайда 6

      3. Зависимость структур данных и прикладных программ. При файловой организации логическая и физическая структуры файла должны соответствовать их описанию в прикладной программе. Прикладная программа должна быть модифицирована при любом изменении логической или физической структуры файла. Поскольку изменения в одной программе часто требуют внесения изменений в другие информационно- связанные программы, то иногда проще создать новую программу, чем вносить изменения в старую. Поэтому этот недостаток файловых систем приводит к значительному увеличению стоимости сопровождения программных средств. Иногда стоимость сопровождения программных средств может достигать близко 70 % стоимости их разработки.

      Эти недостатки послужили тем толчком, который заставил разработчиков информацион

      № слайда 7

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

      Появление СУБД История развития СУБД насчитывает более 30 лет. В 1968 году была

      № слайда 8

      Появление СУБД История развития СУБД насчитывает более 30 лет. В 1968 году была введена в эксплуатацию первая промышленная СУБД система IMS фирмы IBM. В1975 году появился первый стандарт ассоциации по языкам систем обработки данных — Conference of Data System Languages (CODASYL), который определил ряд фундаментальных понятий в теории систем баз данных, которые и до сих пор являются основополагающими для сетевой модели данных. В дальнейшее развитие теории баз данных большой вклад был сделан американским математиком Э. Ф. Коддом, который является создателем реляционной модели данных. В 1981 году Э. Ф. Кодд получил за создание реляционной модели и реляционной алгебры престижную премию Тьюринга Американской ассоциации по вычислительной технике.

      Первый этап — базы данных на больших ЭВМ Первый этап развития СУБД связан с орга

      № слайда 9

      Первый этап — базы данных на больших ЭВМ Первый этап развития СУБД связан с организацией баз данных на больших машинах типа IBM 360/370, ЕС-ЭВМ и мини-ЭВМ типа PDP11 (фирмы Digital Equipment Corporation — DEC), разных моделях HP (фирмы Hewlett Packard). Базы данных хранились во внешней памяти центральной ЭВМ, пользователями этих баз данных были задачи, запускаемые в основном в пакетном режиме. Интерактивный режим доступа обеспечивался с помощью консольных терминалов, которые не обладали собственными вычислительными ресурсами (процессором, внешней памятью) и служили только устройствами ввода-вывода для центральной ЭВМ.

      Программы доступа к БД писались на различных языках и запускались как обычные чи

      № слайда 10

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

      Особенности первого этапа Все СУБД базируются на мощных мультипрограммных операц

      № слайда 11

      Особенности первого этапа Все СУБД базируются на мощных мультипрограммных операционных системах (MVS, SVM, RTE, OSRV, RSX, UNIX), поэтому в основном поддерживается работа с централизованной базой данных в режиме распределенного доступа. Функции управления распределением ресурсов в основном осуществляются операционной системой (ОС). Поддерживаются языки низкого уровня манипулирования данными, ориентированные на навигационные методы доступа к данным. Значительная роль отводится администрированию данных.

      Проводятся серьезные работы по обоснованию и формализации реляционной модели дан

      № слайда 12

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

      Второй этап - эпоха персональных компьютеров Появляется множество программ, пред

      № слайда 13

      Второй этап - эпоха персональных компьютеров Появляется множество программ, предназначенных для работы неподготовленных пользователей. Эти программы просты в использовании и интуитивно понятны: это, прежде всего, различные редакторы текстов, электронные таблицы и другие. Каждый пользователь может автоматизировать многие аспекты деятельности. И, конечно, это сказалось и на работе с базами данных. Появились программы, которые назывались системами управления базами данных и позволяли хранить значительные объемы информации, они имели удобный интерфейс для заполнения данных, встроенные средства для генерации различных отчетов. Эти программы позволяли автоматизировать многие учетные функции, которые раньше велись вручную. Компьютеры стали инструментом для ведения документации и собственных учетных функций. Это все сыграло как положительную, так и отрицательную роль в области развития баз данных.

      Кажущаяся простота и доступность персональных компьютеров и их программного обес

      № слайда 14

      Кажущаяся простота и доступность персональных компьютеров и их программного обеспечения породила множество дилетантов. Эти разработчики, считая себя знатоками, стали проектировать недолговечные базы данных, которые не учитывали многих особенностей объектов реального мира. Много было создано систем-однодневок, которые не отвечали законам развития и взаимосвязи реальных объектов. Однако доступность персональных компьютеров заставила пользователей из многих областей знаний, которые ранее не применяли вычислительную технику в своей деятельности, обратиться к ним. И спрос на развитые удобные программы обработки данных заставлял поставщиков программного обеспечения поставлять все новые системы, которые принято называть настольными (desktop) СУБД. Значительная конкуренция среди поставщиков заставляла совершенствовать эти системы, предлагая новые возможности, улучшая интерфейс и быстродействие систем, снижая их стоимость. Наличие на рынке большого числа СУБД, выполняющих сходные функции, потребовало разработки методов экспорта- импорта данных для этих систем и открытия форматов хранения данных.

      Особенности второго этапа Все СУБД были рассчитаны на создание БД в основном с м

      № слайда 15

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

      При наличии высокоуровневых языков манипулирования данными типа реляционной алге

      № слайда 16

      При наличии высокоуровневых языков манипулирования данными типа реляционной алгебры и SQL в настольных СУБД поддерживались низкоуровневые языки манипулирования данными на уровне отдельных строк таблиц. В настольных СУБД отсутствовали средства поддержки ссылочной и структурной целостности базы данных. Эти функции должны были выполнять приложения, однако скудость средств разработки приложений иногда не позволяла это сделать, и в этом случае эти функции должны были выполняться пользователем, требуя от него дополнительного контроля при вводе и изменении информации, хранящейся в БД. Наличие монопольного режима работы фактически привело к вырождению функций администрирования БД и в связи с этим — к отсутствию инструментальных средств администрирования БД. И, наконец, последняя и в настоящий момент весьма положительная особенность — это сравнительно скромные требования к аппаратному обеспечению со стороны настольных СУБД. Вполне работоспособные приложения, разработанные, например, на Clipper, работали на PC 286.

      Третий этап - распределенные базы данных Хорошо известно, что история развиваетс

      № слайда 17

      Особенности третьего этапа Практически все современные СУБД обеспечивают поддерж

      № слайда 18

      Особенности третьего этапа Практически все современные СУБД обеспечивают поддержку полной реляционной модели, а именно: структурной целостности — допустимыми являются только данные, представленные в виде отношений реляционной модели; языковой целостности, то есть языков манипулирования данными высокого уровня (в основном SQL); ссылочной целостности — контроля за соблюдением ссылочной целостности в течение всего времени функционирования системы, и гарантий невозможности со стороны СУБД нарушить эти ограничения. Большинство современных СУБД рассчитаны на многоплатформенную архитектуру, то есть они могут работать на компьютерах с разной архитектурой и под разными операционными системами, при этом для пользователей доступ к данным, управляемым СУБД, на разных платформах практически неразличим.

      Необходимость поддержки многопользовательской работы с базой данных и возможност

      № слайда 19

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

      СУБД третьего этапа развития К этому этапу можно отнести разработку ряда стандар

      № слайда 20

      СУБД третьего этапа развития К этому этапу можно отнести разработку ряда стандартов в рамках языков описания и манипулирования данными (SQL89, SQL92, SQL99) и технологий по обмену данными между различными СУБД, к которым можно отнести и протокол ODBC (Open DataBase Connectivity), предложенный фирмой Microsoft. Так же к этому этапу можно отнести начало работ, связанных с концепцией объектно-ориентированных БД — ООБД. Представителями СУБД, относящимся ко второму этапу, можно считать MS Access 97 и все современные серверы баз данных Огас1е7.3, 0гас1е 8.4, MS SQL 6.5, MS SQL 7.0, System 10, System 11, Informix, DB2, SQL Base и другие современные серверы баз данных, которых в настоящий момент насчитывается несколько десятков.

      Четвертый этап - перспективы развития систем управления базами данных Этот этап

      № слайда 21

      Четвертый этап - перспективы развития систем управления базами данных Этот этап характеризуется появлением новой технологии доступа к данным— интранет. Основное отличие этого подхода от технологии клиент-сервер состоит в том, что отпадает необходимость использования специализированного клиентского программного обеспечения. Для работы с удаленной базой данных используется стандартный броузер Internet, например Microsoft InternetExplorer, и для конечного пользователя процесс обращения к данным происходит аналогично использованию Internet. При этом встроенный в загружаемые пользователем HTML-страницы код, написанный обычно на языках Java, Java-script, Perl и других, отслеживает все действия пользователя и транслирует их в низкоуровневые SQL-запросы к базе данных, выполняя, таким образом, ту работу, которой в технологии клиент-сервер занимается клиентская программа.

      Удобство данного подхода привело к тому, что он стал использоваться не только дл

      № слайда 22

      Заключение У каждого из вышеперечисленных подходов к работе с данными есть свои

      № слайда 23

      Заключение У каждого из вышеперечисленных подходов к работе с данными есть свои достоинства и свои недостатки, которые и определяют область применения того или иного метода, и в настоящее время все подходы широко используются.

      Вопросы Назвать 2 области использования вычислительной техники. Недостатки файло

      № слайда 24

      Вопросы Назвать 2 области использования вычислительной техники. Недостатки файловых систем Год запуска и название первой СУБД Охарактеризовать II этап Охарактеризовать IV этап

      Читайте также: