Автор работы: Пользователь скрыл имя, 01 Июля 2013 в 21:41, реферат
Система управления базами данных (СУБД) – это система программного обеспечения, позволяющая обрабатывать обращения к базе данных, поступающие от прикладных программ конечных пользователей. Системы управления базами данных позволяют объединить большие объёмы информации и обрабатывать их, сортировать, делать выборки по определённым критериям и т.п.
Современные СУБД – это многопользовательские системы управления базой данных, которые специализируются на управлении массивом информации одним или множеством одновременно работающих пользователей. Они имеют развитый пользовательский интерфейс, который позволяет вводить и модифицировать информацию, выполнять поиск и представлять информацию в графическом или текстовом режиме, дают возможность включать звуковые фрагменты и даже видеоклипы. СУБД обеспечивают правильность, полноту и непротиворечивость данных, а также удобный доступ к ним.
Понятие системы управления базами данных (СУБД). Архитектура СУБД. Однопользовательские и многопользовательские СУБД. 2
Понятие системы управления базами данных 2
Архитектура СУБД 3
Однопользовательские и многопользовательские системы управления базами данных 3
Методы защиты информации: организационно-административные и организационно-технические 3
Организационно-административные методы 3
Организационно-технические методы 3
Три уровня архитектуры.
Архитектура ANSI/SPARC включает три уровня: внутренний, концептуальный и внешний. В общих чертах они представляют собой следующее:
Внешний уровень (индивидуальные представления пользователей). Концептуальный уровень (обобщенное представление пользователей). Внутренний уровень (представление в памяти).
Если внешний уровень
с индивидуальными
Внешний уровень-это индивидуальный уровень пользователя. Пользователь может быть прикладным программистом или конечным пользователем с любым уровнем профессиональной подготовки. Особое место среди пользователей занимает администратор БД. (В отличие от остальных пользователей его интересует также концептуальный и внутренний уровень.)
У каждого пользователя есть свой язык общения. Для прикладного программиста это либо один из распространенных языков программирования, такой как C, COBOL или PL/1, либо специальный язык рассматриваемой системы. Такие оригинальные языки называют (неформально) языками четвертого поколения на том основании, что машинный код, язык ассемблера и такие языки, как COBOL, можно считать языками трех первых «поколений», а оригинальные языки модернизированы по сравнению с языками третьего поколения так же, как языки третьего поколения улучшены по сравнению с языком ассемблера. Для конечного пользователя это или специальный язык запросов, или язык специального назначения, возможно, основанный на формах и меню, созданный специально с учетом требований и поддерживаемый некоторым оперативным приложением.
Хотя с точки зрения
архитектуры удобно различать подъязык
данных и включающий его базовый
язык, на практике они могут быть
неразличимыми настолько, насколько
это имеет отношение к
Язык обработки данных состоит из таких выполняемых операторов PL/1, которые передают информацию в и из БД; опять же, возможно, включая, новые специальные операторы.
В общем, внешнее представление состоит из множества экземпляров каждого типа внешней записи, которые, в свою очередь, отнюдь не обязательно должны совпадать с ранимыми записями. Находящийся в распоряжении пользователя подъязык данных определен в терминах внешних записей; например, операция выборки языка обработки данных будет проводить выборку из экземпляров внешних, а не хранимых записей.
Концептуальный уровень. Концептуальное представление - это представление всей информации БД в несколько более абстрактной форме (как и случае внешнего представления) по сравнению с физическим способом хранения данных. Однако концептуальное представление существенно отличается от способа представления данных какому-либо отдельному пользователю. Вообще говоря, концептуальное представление - это представление данных такими, какие «они есть на самом деле», а не такими, какими вынужден их видеть пользователь в рамках, например, определенного языка или используемого аппаратного обеспечения.
Концептуальное представление состоит из множества экземпляров каждого типа концептуальной записи. Например, оно может состоять из набора экземпляров записей, содержащих информацию об отдельных, плюс набор экземпляров, содержащих информацию о деталях и т.д. Концептуальная запись вовсе не обязательно должна совпадать с внешней записью, с одной стороны, и с хранимой записью- с другой.
Концептуальное представление определяется с помощью концептуальной схемы, которая включает определения каждого типа концептуальных записей. Концептуальная схема использует другой язык определения данных - концептуальный.
Концептуальное представление
- это представление всего
Теперь перейдем к более детальному исследованию трех уровней архитектуры.
Внутренний уровень. Третьим уровнем архитектуры является внутренний уровень. Внутреннее представление - это представление нижнего уровня всей БД; оно состоит из многих экземпляров каждого типа внутренней записи. Термин «внутренняя запись» принадлежит терминологии ANSI/SPARC и означает конструкцию, называемую хранимой записью. Внутреннее представление так же, как внешнее и концептуальное, не связано с физическим уровнем, так как в нем не рассматриваются физические области устройства хранения, такие как цилиндры и дорожки. Другими словами, внутреннее представление предполагает бесконечное линейное адресное пространство; подробности того, как адресное пространство отображено на физическое устройство хранения, очень зависят от системы и умышленно не включены в общую архитектуру.
Внутреннее представление
описывается с помощью
В некоторых исключительных ситуациях прикладные программы, в частности те, которые называют утилитами, могут выполнять операции непосредственно на внутреннем, а не на внешнем уровне. Конечно, такой практикой пользоваться не рекомендуется; она определяет риск с точки зрения безопасности (правила безопасности игнорируются ) и целостности (правила целостности тоже игнорируется), к тому же программа будет зависеть от загруженных данных; но иногда это может быть единственным способом достичь выполнения требуемой функции или добиться необходимого быстродействия - так же, как пользователю языка высокого уровня иногда по тем же причинам необходимо прибегнуть к языку ассемблера.
Приложения, использующие базы данных, обычно принято относить к одной из программных архитектур, имеющих свои плюсы и минусы.
Локальная архитектура. И программа, и база данных расположены на одном компьютере. В такой архитектуре работает большинство настольных приложений.
Файл - серверная архитектура. База данных расположена на мощном выделенном компьютере (сервере), а персональные компьютеры подключены к нему по локальной сети. На этих компьютерах установлены клиентские программы, обращающиеся к базе данных по сети. Преимущество такой архитектуры заключается в возможности одновременной работы нескольких пользователей с одной базой данных.
Недостаток такого подхода
- большие объемы информации, передаваемой
по сети. Вся обработка выполняется
на клиентских местах, где фактически
формируется копия базы данных. Это
приводится к ограничению максимально
возможного числа пользователей
и большим задержкам при работе
с базой. Эти задержки вызываются
тем, что на уровне конкретной таблицы
одновременный доступ невозможный.
Пока программа на одном из клиентских
мест не закончит работу с таблицей
(например, не выполнит модификацию
записей), другие программы не могут
обращаться к этой таблице. Это называется
блокировкой на уровне таблицы и
исключает возникновение
Клиент - серверная архитектура. В такой архитектуре на сервере не только хранится БД, но и работает программа СУБД, обрабатывающая запросы пользователей и возвращающая им наборы записей. При этом программы пользователей уже не работают, например, с БД как набором физических фалов, а обращаются к СУБД, которая выполняет операции. Нагрузка с клиентских мест при этом снимается, так как большая часть работы происходит на сервере. СУБД автоматически следит за целостностью и сохранностью БД, а также контролирует доступ к информации с помощью службы паролей. Клиент - серверные СУБД допускают блоки на уровне записи и даже отдельного поля. Это означает, что с таблицей может работать любое число пользователей, но доступ к функции изменения конкретной записи или одного из ее полей обеспечен только одному из них.
Преимущества архитектуры клиент-сервер очевидны. Каждый тип компьютера используется по своему назначению, а следовательно обеспечивается более полное использование возможностей компьютеров.
Основной недостаток этой архитектуры не очень высокая надежность. Если сервер выходит из строя, вся работа останавливается.
Распределенная архитектура. В сети работает несколько серверов, и таблицы баз данных распределены между ними для достижения повышенной эффективности. На каждом сервере функционирует своя копия СУБД. Кроме того, в подобной архитектуре обычно используются специальные программы, так называемые серверы приложений. Они позволяют оптимизировать обработку запросов большого числа пользователей и равномерно распределить нагрузку между компьютерами в сети.
Недостаток распределенной
архитектуры заключается в
Интернет - архитектура. Доступ к базе данных и СУБД (распространенных на одном компьютере или в сети) осуществляется из броузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Такие программы называют «тонкими клиентами», потому что они способны работать даже на ПК с процессором 80386. Благодаря стандартизации всех протоколов и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет в локальной сети (в таком случае говорят о технологиях интранет). В этом случае не требуется разрабатывать специальные клиентские программы или придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузера и программные решения.
Система управления базами
данных (СУБД) - это комплекс программных
и языковых средств, необходимых
для создания баз данных, их поддержания
в актуальном состоянии и организации
в них поиска необходимой информации.
Все существующие СУБД следует разделить
на однопользовательские и многопользовательские
(клиент-серверные). СУБД Access в основном
позиционируется как
Для персональных компьютеров
было разработано много компактных
СУБД, имеющих дружественные
Рисунок 1. Деление СУБД по характеру использования.
Сетевые версии СУБД dBase, FoxPro,
Clarion, Clipper, dbVista не позволяют выполнять
настройку на ресурсы среды эксплуатации,
иметь мощные механизмы защиты и
восстановления данных, поддерживать
архитектуру клиент-сервер, сводить
до минимума вероятность ожидания заблокированных
данных и взаимоблокировок, и иметь
еще много специализированных механизмов,
необходимых для
Кроме того, реализация надежной, быстрой, непротиворечивой работы должна обеспечиваться очень просто, обычно автоматически, а не за счет "тонкой ручной работы" программистов с каждым приложением. Сетевые версии указанных СУБД не могут реализовать эти свойства в полной мере, поскольку приходится сохранять существующую архитектуру СУБД. Напротив, в специализированных сетевых распределенных СУБД, таких как ORACLE, все эти механизмы отработаны прекрасно.
Практика работы с заказчиками
показывает, что им приходится переходить
на мощные распределенные многопользовательские
СУБД от систем на основе Paradox, Clipper, FoxPro
и т.д., поскольку при увеличении
числа пользователей свыше 3 - 6 человек
производительность работы резко снижается
и время отклика системы
Особо следует сказать
о СУБД dbVista. Кроме того, что эта
СУБД со сложной сетевой
Все механизмы обеспечения
непротиворечивости данных при работе
в многопользовательской среде
у рассматриваемых СУБД надо программировать
вручную. В результате получаются сложные,
плохо модифицируемые программы. Создать
хорошее приложение для работы в
многопользовательской среде
На сегодняшний день число используемых СУБД исчисляется десятками. Наиболее известные однопользовательские – Microsoft Visual FoxPro и Acces, многопользовательские – MS SQL Server, Oracle и My SQL.
Информация о работе Понятие системы управления базами данных (СУБД)