Технологии баз данных. История и перспективы
МИНОБРНАУКИ
РОССИИ
Государственное образовательное учреждение
высшего профессионального образования
Санкт-Петербургский
государственный
(технический университет)
Кафедра бизнес-информатики
РЕФЕРАТ
ПО
БАЗАМ ДАННЫХ
Технологии
баз данных. История и перспективы
Выполнил студент
Палло В.Г.
Специальность
№ 080500
Руководитель:
Табурчак А.П.
Оценка
Санкт-Петербург
2012
Оглавление
Введение.
В самых первых компьютерах применялись два вида внешних устройств – магнитные ленты и магнитные барабаны.
Емкость магнитных лент была достаточно велика. Эти устройства для чтения-записи давали последовательный доступ к данным. Для чтения информации, которая находилась в середине или конце магнитной ленты, нужно было для начала прочитать весь участок, который предшествовал нужному нам участку. В итоге получалась чрезвычайно низкая производительность операций ввода-вывода данных во внешнюю память.
Магнитные барабаны давали возможность произвольного доступа к данным, но имели ограниченный объём хранимой информации. Поэтому говорить о какой-либо системе управления данными во внешней памяти на тот момент времени не приходилось.
Любая прикладная программа, которой нужно было хранить данные во внешней памяти, сама определяла местонахождение каждой порции данных на магнитной ленте. Прикладная программа также брала на себя функции информационного обмена между оперативной памятью и устройствами внешней памяти с помощью программно-аппаратных средств низкого уровня. Такой режим работы не позволяет или сильно затрудняет поддержание на одном носителе нескольких архивов долговременно хранимой информации.
История баз данных началась с появлением магнитных дисков. Они обладали существенно большей емкостью, чем магнитная лента или магнитные барабаны, а также обеспечивали на много большую скорость доступа к данным в режиме произвольной выборки.
Файлы и файловые системы.
Важным шагом в развитии информационных систем является переход к применению централизованных систем управления файлами.
Централизованная система управления файлами (ЦСУФ) – это такая система, которая позволяет создавать, редактировать, копировать и перемещать файлы.
Среди некоторых особенностей СУФ следует указать:
1. СУФ не знает конкретной структуры файл. Структура записи файла была известна только программе, которая с ним работала.
Любая программа, которая работает с файлом, должна была иметь внутри себя структуру данных, соответствующую структуре этого файла.
При изменении структуры файла требуется изменять структуру программы, входящие в нее программы.
Обстоятельство, при котором изменение структур данных ведет к необходимости перекомпиляции прикладной программы и ее повторной отладке носит название зависимость программы от данных.
Для ИС (информационных систем) специфичным является присутствие большого числа пользователей, которые используют одни и те же файлы для решения своих задач. Для решения задач разных пользователей в ИС существует ряд прикладных программ. Если изменяется структура файла, который используется несколькими прикладными программами, то придется изменять все программы.
2. Децентрализованное управление доступом к файлу (администрирование).
Так как файловые системы являются совместным хранилищем файлов, которые принадлежат разным пользователям, СУФ должна обеспечивать авторизацию доступа к файлу.
Во многих современных СУФ применяется подход к защите, впервые реализованный в операционной системе UNIX. В этой операционной системе каждому пользователю соответствует пара целочисленных идентификаторов: идентификатор группы пользователей, к которой относится данный пользователь, и его собственный идентификатор в группе. При каждом файле хранится полный идентификатор пользователя, который создал этот файл и фиксируется:
- какие действия может производить создатель файла;
- какие действия могут производить пользователи его группы;
- что смогут сделать с файлом пользователи других групп.
При таком подходе виден децентрализованный принцип управления доступом к файлу. В связи с тем, что большое количество файлов в информационной системе отражают информационную модель одной предметной области этот принцип приводил к некоторым сложностям при построении информационных систем: файл созданный одним пользователем (одной прикладной программой) оказывался недоступен для другого пользователя ил прикладной программы.
3.
Режим многопользовательского доступа
в СУФ.
Если
операционная система поддерживает многопользовательский
режим, то возможна ситуация, когда несколько
пользователей одновременно пытаются
работать с одним и тем же файлом. Если
все пользователи собираются только читать
файл, то ничего страшного не произойдет.
Но если один из них будет изменять файл,
для корректной работы этих пользователей
потребуется взаимная синхронизация их
действий по отношению к файлу.
В СУФ если файл уже используется в режиме изменения, то всем другим пользователям, при попытке открыть файл для изменения сообщается, что невозможно открыть, т.к. он уже используется другим пользователем.
При подобном способе организации одновременная работа нескольких пользователей, связанная с модификацией данных в файле, либо вообще не реализовывалась, либо была сильно замедлена.
Можно сделать вывод, что одновременная работа нескольких пользователей с одним файлом (при модификации данных в файле) была невозможна, т.к. СУФ не имела возможности организовать синхронизацию действий отдельных пользователей в виду отсутствия сведений о конкретной структуре файла. Действительно, конкретную структуру файла знала только прикладная программа.
Эти недостатки СУФ послужили толчком к появлению систем управления информацией. Новый подход к управлению информацией был реализован в новых программных системах, которые назвали впоследствии Системами Управления Базами Данных (СУБД). Их идея заключалась в изъятии определения структуры файлов данных из приложений, работающих с ними.
Первые СУБД имели иерархическую структуру (иерархические СУБД). Поскольку СУБД применялись в основном в экономике, а их применение было связано с планированием производства, то такая структура хорошо отвечала требованиям промышленных предприятий. Например, пусть имеется некая строительная компания, получившая подряд на строительство жилого комплекса в одном из микрорайонов. Для того чтобы знать сколько необходимо закупить строительных материалов, необходимо иметь представление о том, из чего состоит дом, затем из каких частей состоят его составляющие, далее из чего состоят эти составляющие и так далее. Например, в доме есть служебные помещения (туалет, ванная комната), для них необходимы трубы, фаянс и краны, трубы в свою очередь делятся на водопроводные, отопления и канализационные.
Такой список по своей структуре является иерархическим. Для хранения данных, имеющих такую структуру, была разработана иерархическая модель данных. В такой модели для описанного случая каждая запись представляет собой конкретный строительный узел. Между записями существуют отношения предок/потомок, связывающие каждый конкретный узел с его составляющими.
Одной из наиболее популярных иерархических СУБД была Informаtion Mаnаgment System (IMS) от компании IBM, которая была создана в 1986 году. Достоинствами данной СУБД являлась простота модели данных, использование отношений предок/потомок, а также хорошее быстродействие.
Если структура данных оказывалась сложнее, чем традиционная иерархия, то простота организации иерархической базы данных становилась ее недостатком. Например, если рассмотреть работу торговой компании, то один заказ может участвовать в нескольких отношениях предок/потомок: с заказчиком, с менеджером или торговой точкой, отпустившей товар, а также с самим товаром. Однако иерархия допускает наличие только одного отношения между ее записями. В связи с этим для таких приложений была разработана сетевая модель данных, допускавшая множественные отношения типа предок/потомок. Такие отношения назывались множествами. В 1971 году на конференции по языкам обработки данных (Conference on Dаtа System Lаnguаges – CODАSYL) был опубликован стандарт сетевых баз данных, который известен как модель CODАSYL.
С точки зрения программиста, доступ к сетевой базе данных был очень схож с доступом к иерархической базой данных. Прикладная программа могла
- найти конкретную запись предка по ключу,
- перейти к первому потомку в конкретном множестве,
- перейти в сторону от одного потомка к другому,
- перейти вверх от потомка к его предку.
И опять программисту приходилось искать информацию в базе данных, последовательно перебирая все записи, но теперь он мог указать не только направление, но и требуемое отношение.
Плюсами сетевых СУБД являлись:
- Гибкость. Сетевые СУБД позволяли работать с данными, имеющими достаточно сложную структуру.
- Стандартизация. Принятие стандарта CODАSYL привело к облегчению создания новых приложений и переносимости данных.
- Быстродействие. Не смотря на сложность модели данных, сетевые СУБД позволяли достигать быстродействия, сравнимого с быстродействием иерархических СУБД.
И все-таки как и иерархические СУБД, сетевые имели много недостатков. Так изменение структуры базы данных означало перестройку всего приложения. Наборы отношений и структуру записей следовало задавать наперед. Для того чтобы получить данные, программисту необходимо было писать программу для навигации по базе данных, что могло занять от нескольких дней до нескольких недель, а информация к тому времени могла оказаться бесполезной.
Недостатки сетевых и иерархических СУБД привели к повышению интереса к новой реляционной модели данных, описанной доктором Коддом в 1970 году. Реляционная модель была попыткой упростить структуру базы данных. В ней отсутствовали явные указатели на предков и потомков, а все данные были представлены в виде простых таблиц, разбитых на строки и столбцы, на пересечении которых находятся данные. У каждой таблицы есть определенное имя, описывающее ее содержимое. Между таблицами существуют связи. Различают три вида связей: один-к-одному, один-ко-многим, многие-ко-многим. Именно от английского слова связь (relаtion) и произошло название реляционные базы данных.
Базы данных на больших ЭВМ.
Данный этап развития баз данных связан с организацией баз данных на больших машинах типа IBM 360/370, ЕС-ЭВМ, разных моделях фирмы Hewlett Pаckаrd.
Базы данных хранились во внешней памяти центральной ЭВМ. Пользователями баз данных были задачи, запускаемые в основном в пакетном режиме. Интерактивный режим доступа обеспечивался с помощью консольных терминалов, которые не обладали собственными вычислительными ресурсами (процессором, оперативной памятью, внешней памятью) и служили только устройствами ввода-вывода для центральной ЭВМ.
Программы доступа к БД писались на различных языках программирования и запускались как обычные числовые программы.
Особенности данного этапа:
- Все СУБД базируются на мощных мультипрограммных ОС (Unix и др.).
- Поддерживается работа с централизованной БД в режиме распределенного доступа. Функции управления распределения ресурсов выполняются операционной системой.
- Поддерживаются языки низкого манипулирования данными, ориентированные на навигационные методы доступа к данным.
- Значительная роль отводится администрированию данных.
- Проводятся серьезные работы по обоснованию и формализации реляционной модели данных. Была создана первая система (System R), реализующая идеологию реляционной модели данных.
- Проводятся теоретические работы по оптимизации запросов и управлению распределенным доступом к централизованной БД, было введено понятие транзакции.
- Большой поток публикаций по всем вопросам теории БД. Результаты научных исследований активно внедряются в коммерческие СУБД.
- Появляются первые языки высокого уровня для работы с реляционной моделью данных (SQL), но отсутствуют стандарты для этих языков.
Эпоха персональных компьютеров.
Появилось множество программ, предназначенных для работы неподготовленных пользователей. Эти программы были просты в использовании и интуитивно понятны- это прежде всего различные редакторы текстов, электронные таблицы и другие. Каждый пользователь мог себя почувствовать полным хозяином персонального компьютера, позволяющего автоматизировать многие аспекты деятельности.
И, конечно, это сказалось и на работе с базами данных. Появились программы, которые назывались системами управления базами данных и позволяли хранить значительные объемы информации, они имели удобный интерфейс для заполнения данных, встроенные средства для генерации различных отчетов. Эти программы позволяли автоматизировать многие учетные функции, которые раньше велись вручную.
Постоянное снижение цен на персональные компьютеры сделало их доступными не только для организаций и фирм, но и для отдельных пользователей. Компьютеры стали инструментом для ведения документации и собственных учетных функций. Это все сыграло как положительную, так и отрицательную роль в области развития баз данных. Кажущаяся простота и доступность персональных компьютеров и их программного обеспечения породила множество дилетантов.
Много было создано систем-однодневок, которые не отвечали законам развития и взаимосвязи реальных объектов. Однако доступность персональных компьютеров заставила пользователей из многих областей знаний, которые ранее не применяли вычислительную технику в своей деятельности, обратиться к ним. И спрос на развитые удобные программы обработки данных заставлял поставщиков программного обеспечения поставлять все новые системы, которые принято называть настольными (desktop) СУБД. Значительная конкуренция среди поставщиков заставляла совершенствовать эти системы, предлагая новые возможности, улучшая интерфейс и быстродействие систем, снижая их стоимость.
Наличие на рынке большого числа СУБД, выполняющих сходные функции, потребовало разработки методов экспорта-импорта данных для этих систем и открытия форматов хранения данных.
Особенности этого этапа следующие:
- Стандартизация высокоуровневых языков манипулирования данными (разработка и внедрение стандарта SQL92 во все СУБД).
- Все СУБД были рассчитаны на создание БД в основном с монопольным доступом. Т.к. компьютер персональный, он не был подсоединен к сети, и база данных на нем создавалась для работы одного пользователя. В редких случаях предполагалась последовательная работа нескольких пользователей, например, сначала оператор, который вводил бухгалтерские документы, а потом главбух, который определял проводки, соответствующие первичным документам.
- Большинство СУБД имели развитый и удобный пользовательский интерфейс. В большинстве существовал интерактивный режим работы с БД как в рамках описания БД, так и в рамках проектирования запросов. Кроме того, большинство СУБД предлагали развитый и удобный инструментарий для разработки готовых приложений без программирования.
- Во всех настольных СУБД поддерживался только внешний уровень представления реляционной модели, то есть только внешний табличный вид структур данных.
- При наличии высокоуровневых языков манипулирования данными типа реляционной алгебры и SQL в настольных СУБД поддерживались низкоуровневые языки манипулирования данными на уровне отдельных строк таблиц.
- В настольных СУБД отсутствовали средства поддержки ссылочной и структурной целостности базы данных. Эти функции должны были выполнять приложения, однако скудость средств разработки приложений иногда не позволяла это сделать, и в этом случае эти функции должны были выполняться пользователем, требуя от него дополнительного контроля при вводе и изменении информации, хранящейся в БД.
- Наличие монопольного режима работы фактически привело к вырождению функций администрирования БД.
- Сравнительно скромные требования к аппаратному обеспечению со стороны настольных СУБД.
Распределенные БД.
После процесса «персонализации» начался обратный процесс – интеграция. Множится количество локальных сетей, все больше информации передается между компьютерами, остро встает задача согласованности данных, хранящихся и обрабатывающихся в разных местах, но логически друг с другом связанных; возникают задачи, связанные с параллельной обработкой транзакций – последовательностей операций над БД, переводящих ее из одного непротиворечивого состояния в другое непротиворечивое состояние. Успешное решение этих задач приводит к появлению распределенных баз данных, сохраняющих все преимущества настольных СУБД и в то же время позволяющих организовать параллельную обработку информации и поддержку целостности БД.
Особенности данного этапа:
- Практически все современные СУБД обеспечивают поддержку полной реляционной модели, а именно:
-
структурной целостности –
- языковой целостности, то есть языков манипулирования данными высокого уровня (в основном SQL);
-
ссылочной целостности,
2. Большинство современных СУБД рассчитано на многоплатформенную архитектуру, то есть они могут работать на компьютерах с разной архитектурой и под разными операционными системами, при этом для пользователей доступ к данным, управляемым СУБД на разных платформах, практически неразличим.
3.
Необходимость поддержки
4.
Потребность в новых
5. Для того чтобы не потерять клиентов, которые ранее работали на настольных СУБД, практически все современные СУБД имеют средства подключения клиентских приложений, разработанных с использованием настольных СУБД, и средства экспорта данных из форматов настольных СУБД второго этапа развития.
6. Разработка ряда стандартов в рамках языков описания и манипулирования данными, начиная с SQL89, SQL92, SQL99 и технологий по обмену данными между различными СУБД, к которым можно отнести и протокол ODBC (Open DаtаBаse Connectivity), предложенный фирмой Microsoft.
7. Именно к этому этапу можно отнести начало работ, связанных с концепцией объектно-ориентированных БД – ООБД. Представителями СУБД, относящихся ко второму этапу, можно считать MS Аccess 2000 и все современные серверы баз данных Orаcle7.3, Orаcle8.4, MS SQL6.5, MS SQL7.0, System 10, System 11, Informix, DB2, SQL Bаse и другие современные серверы баз данных, которых в настоящий момент насчитывается несколько десятков.
Перспективы развития систем управления базами данных.
Этот этап характеризуется появлением новой технологии доступа к данным — интернет. Основное отличие этого подхода от технологии клиент-сервер состоит в том, что отпадает необходимость использования специализированного клиентского программного обеспечения. Для работы с удаленной базой данных используется стандартный браузер Internet, например Microsoft Internet Explorer или Netscаpe Nаvigаtor, и для конечного пользователя процесс обращения к данным происходит аналогично скольжению по Всемирной Паутине. При этом встроенный в загружаемые пользователем HTML-страницы код, написанный обычно на языках Jаvа, Jаvа-script, Perl и других, отслеживает все действия пользователя и транслирует их в низкоуровневые SQL-запросы к базе данных, выполняя, таким образом, ту работу, которой в технологии клиент-сервер занимается клиентская программа. Удобство данного подхода привело к тому, что он стал использоваться не только для удаленного доступа к базам данных, но и для пользователей локальной сети предприятия. Простые задачи обработки данных, не связанные со сложными алгоритмами, которые требуют согласованного изменения данных во многих взаимосвязанных объектах, достаточно просто и эффективно могут быть построены по данной архитектуре. В этом случае для подключения нового пользователя к возможности использовать данную задачу не требуется установка дополнительного клиентского программного обеспечения. Однако алгоритмически сложные задачи рекомендуется реализовывать в архитектуре «клиент-сервер» с разработкой специального клиентского программного обеспечения.
У каждого из вышеперечисленных подходов к работе с данными есть свои достоинства и свои недостатки, которые и определяют область применения того или иного метода, и в настоящее время все подходы широко используются.
Список используемой литературы:
1. Когаловский М.Р. Технология баз данных на персональных ЭВМ. – М.: Финансы и статистика, 1992.
2. Наумов А.H., Вендров А.М.и др. Системы управления базами данных и знаний, М.:Финансы и статистика, 1991г

- Технологии бенчмаркинга
- Технологии ввода пространственных (топографических) данных в ГИС
- Технологии ведения переговоров
- Технологии взаимодействия банков с клиентами
- Технологии виртуальной реальности
- Технологии власти Н. Макиавелли
- Технологии восстановления и усиления фундаментов
- Технократическая утопия Ф.Бэкона «Новая Атлантида» и её критика
- Технократические модели коммуникации
- Технократия в менеджменте
- Технологии 3D телевидения
- Технологии ASP
- Технологии celebrity marketing для эффективной коммуникационной стратегии
- Технологии COM и DECOM (Microsoft)