Базы данных и системы управления базами данных
Говоря о развитии технологий программирования, невозможно обойти вниманием тему разработки и управления базами данных. Базами данных (БД) называют электронные хранилища информации, доступ к которым осуществляется с помощью одного или нескольких компьютеров. БД создается для хранения и доступа к данным, содержащим сведения о некоторой предметной области, т.е. некоторой области человеческой деятельности или окружающего нас мира. Системы управления базами данных (СУБД) — набор программных средств, предназначенных для создания, наполнения, обновления, выборки, формирования отчетов и удаления информации в базах данных.
Классификацию современных СУБД можно выполнить по различным признакам.
По назначению различают три основных вида СУБД: промышленные универсального назначения, промышленные специального назначения и разрабатываемые для конкретного заказчика. Специализированные СУБД создаются для управления БД конкретного назначения — бухгалтерские, складские и т.д. Универсальные СУБД не имеют четко обозначенных границ применения, рассчитаны на произвольные задачи. Поэтому они достаточно сложны и требуют от пользователя специальных знаний.
По размещению отдельных частей БД различают локальные и сетевыеСУБД.
Все части локальных СУБД размещены на одном компьютере. Если с локальной БД должны работать несколько пользователей одновременно, то на их компьютерах должны храниться точные копии этой БД. Существенной проблемой при этом является синхронизация копий данных. Если один пользователь внес изменения в свою копию БД, то они станут доступными на других компьютерах только после их копирования. Сегодня применение локальных БД ограничено.
Сетевые СУБД делятся на файл-серверные, клиент-серверные и распределенные. Обязательным атрибутом сетевых СУБД является сеть, обеспечивающая аппаратную и программную связь компьютеров и позволяющая корпоративно работать множеству пользователей с одними и теми же данными.
В файл-серверных СУБД данные размещаются на одном достаточно мощном компьютере, постоянно подключенном к сети. Такой компьютер называется файл-сервером. Достоинством такой СУБД является относительная простота ее создания, обслуживания и настройки. Заметим, что между локальной и файл-серверной СУБД практически нет различий, т.к. все фрагменты программного обеспечения СУБД (за исключением данных) находятся на всех компьютерах сети. Отличие между ними состоит в том, что программы обращаются к данным через сеть. Для многих вариантов архитектуры сети на уровне прикладного программного обеспечения это различие «скрыто» от программиста. Из этого вытекает основной недостаток файл-серверных СУБД. Он связан со значительной нагрузкой на сеть, т.к. любое обращение к данным, их корректировка вызывает пересылку значительных объемов информации по сети. Например, если пользователю требуется выбрать несколько фамилий из списка персонала по определенному признаку, то на его компьютер вначале пересылается весь список, и затем поиск производится на пользовательском компьютере. При увеличении числа пользователей СУБД пропускной способности сети становится недостаточно для объемов пересылаемой информации, что приводит к существенному замедлению скорости работы, а иногда и к системным сбоям.
В клиент-серверных БД нагрузка на сеть существенно снижена. Клиентская программа работает с данными через специализированное программное обеспечение (посредника) – сервер базы данных. Сервер размещается на машине с данными. Клиентская программа посылает серверу запрос, сервер принимает его, отыскивает в данных нужные записи и передает их клиенту. Поэтому через сеть передаются только сравнительно короткие запросы и только ограниченное количество найденных записей, а не вся таблица. Запрос к серверу формируется на специализированном языке структурированных запросов — SQL. Поэтому часто серверы БД называют SQL-серверами. Серверные программы являются достаточно сложными, производятся различными фирмами. Наиболее известными являются серверы:
· Microsoft SQL Server компании Microsoft,
· Sybase SQL Server компании Sybase,
· Oracle компании Oracle,
· DB2 компании IBM,
· InterBase компании Inprise.
Разновидностью клиент-серверных БД являются трехзвенные системы. В них используется промежуточное программное обеспечение между клиентом и сервером, которое называется сервером приложений. Назначение сервера приложений состоит в том, чтобы избавить клиента от многих рутинных аспектов работы с данными, в результате клиентские программы становятся более компактными и содержат в основном код смысловой обработки данных (такие клиентские программы называют тонкие клиенты).
Распределенные БД включают большое количество серверов, а число клиентских мест может достигать сотен тысяч. Обычно такие БД работают в организациях государственного масштаба, данные разделены между серверными компьютерами по территориальному признаку. Информация на отдельных серверах может дублироваться для снижения вероятности отказов и сбоев и максимального обеспечения сохранности наиболее важной информации.
Контрольные вопросы и задачи
6.1. Что Вы знаете об объектно-ориентированном программировании?
6.2. Какие основные принципы ООП?
6.3. Что дает механизм наследования в ООП?
6.4. Что такое полиморфизм в ООП?
6.5. Что такое скрытие данных в ООП?
6.6. Возможности программирования, управляемого событиями?
6.7. Поясните основные возможности визуального программирования.
6.8. Что Вы знаете о принципах взаимодействия программ в информационных системах?
6.9. Что понимается под БД и СУБД? В чем их различие?
6.10. Классификация СУБД по назначению и по размещению.
Глава 7
Дата добавления: 2016-07-18; просмотров: 2538;