Системы управления базами данных

                                         СОДЕРЖАНИЕ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

                                                   ВВЕДЕНИЕ

 

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

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

     Среди наиболее ярких представителей систем управления базами данных можно отметить: Lotus Approach, Microsoft Access, Borland dBase, Borland Paradox, Microsoft Visual FoxPro, Microsoft Visual Basic, а также баз данных Microsoft SQL Server и Oracle, используемые в приложениях, построенных по технологии «клиент-сервер».

     Общепринятыми, также, являются технологии, позволяющие использовать возможности других приложений, например, текстовых процессоров, пакетов построения графиков и т.п., и встроенные версии языков высокого уровня (чаще – диалекты SQL и/или VBA) и средства визуального программирования интерфейсов разрабатываемых приложений. Поэтому уже не имеет существенного значения, на каком языке и на основе какого пакета написано конкретное приложение, и какой формат данных в нем используется.

       Более того, стандартом «де-факто» стала «быстрая разработка приложений» или RAD (от английского Rapid Application Development), основанная на широко декларируемом в литературе «открытом подходе», то есть необходимость и возможность использования различных прикладных программ и технологий для разработки более гибких и мощных систем обработки данных. Поэтому в одном ряду с «классическими» СУБД все чаще упоминаются языки программирования Visual Basic 4.0 и Visual C++, которые позволяют быстро создавать необходимые компоненты приложений, критичные по скорости работы, которые трудно, а иногда невозможно разработать средствами «классических» СУБД. Современный подход к управлению базами данных подразумевает также широкое использование технологии «клиент-сервер». 
 
 
 
 

                          1. Обзор системы управления базами данных

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

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

     По  степени универсальности различают  два класса СУБД:

    • системы общего назначения;
    • специализированные системы.      

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

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

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

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

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

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

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

     В рассматриваемую группу программных  продуктов вошли:                 

     dBASE IV 2.0, компании Borland International;                               

     Microsoft Access 2.0;                                                      

     Microsoft FoxPro 2.6 for DOS;

     Microsoft FoxPro 2.6 for Windows, корпорации Microsoft Corp;

     Paradox for DOS 4.5;

     Paradox for Windows, версия 4.5 компании Borland.

                            1.1 Производительность СУБД

     Производительность  СУБД оценивается:

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

     

         На производительность СУБД оказывают влияние два фактора: 

  1. СУБД, которые следят за соблюдением целостности данных, несут дополнительную нагрузку, которую не испытывают другие программы;
  2. производительность собственных прикладных программ сильно зависит от правильного проектирования и построения базы данных.

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

       Самой быстрой СУБД является  FoxPro 2.6, однако она не обладает средствами соблюдения целостности данных в отличие от более медленной СУБД Access 2.0.[2]

     1.2 Обеспечение целостности данных на уровне базы данных

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

     К средствам обеспечения целостности  данных на уровне СУБД относятся:

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

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

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

     Access и Paradox for Windows гораздо ближе других СУБД соответствуют реляционной модели по надежности сохранения целостности данных на уровне базы данных; правила хранятся вместе с базой данных и автоматически соблюдаются.

     СУБД  dBASE IV и FoxPro 2.6 (DOS и WINDOWS) совсем не обладают средствами этого рода, и ввод в программу процедур, обеспечивающих выполнение правил целостности, возлагается на программиста.

                                1.3 Обеспечение безопасности

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

     •  шифрование прикладных программ;

     •  шифрование данных;

     •  защиту паролем;

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

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

     Хорошими  характеристиками обеспечения безопасности отличается Access 2.0. Он предусматривает назначение паролей для индивидуальных пользователей или групп пользователей и присвоение различных прав доступа отдельно таблицам, запросам, отчетам, макрокомандам или новым объектам на уровне пользователя или группы.[3]

                 2. Работа в многопользовательских средах

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

     Обработка данных в многопользовательских средах предполагает выполнение программным продуктом следующих функций:       

     •   блокировку базы данных, файла, записи, поля;

     •   идентификацию станции, установившей блокировку;

     •   обновление информации после модификации; 

     •   контроль за временем и повторением обращения;

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

     •   работу с сетевыми системами (LAN Manager, NetWare, Unix).

     Лучшими возможностями для работы в многопользовательских  средах обладают СУБД Paradox for DOS 4.5, Access 2.0 и dBASE IV.

     3. Краткая характеристика программного обеспечения,    используемого при создании СУБД

 

     Рассмотрим  более подробно программные продукты компании Microsoft, а именно Visual FoxPro 3.0, Visual Basic 4.0, Visual С++, Access 7.0, SQL Server 6.5. Наиболее интересной чертой этих пакетов являются их большие возможности интеграции, совместной работы и использования данных, так как данные пакеты являются продуктами одного производителя, а также используют сходные технологии обмена данными.

     Visual FoxPro отличается высокой скоростью, имеет встроенный объектно-ориентированный язык программирования с использованием xBase и SQL, диалекты которых встроены во многие СУБД. Имеет высокий уровень объектной модели. При использовании в вычислительных сетях обеспечивает как монопольный, так и раздельный доступ пользователей к данным. Применяется для приложений масштаба предприятия для работы на различных платформах: Windows 3.x, Windows 95, Macintosh... Минимальные ресурсы ПК: для Visual FoxPro версии 3.0 – процессор 468DX, Windows 3.1, 95, NT, объем оперативной памяти 8 (12) Мб, занимаемый объем на ЖМД 15-80 Мб, а для Visual FoxPro версии 5.0 (выпущена в 1997 году) – Windows 95 или NT, 486 с тактовой частотой 50 МГц, 10 Мб ОЗУ, от 15 до 240 Мб на ЖМД.

     Access входит в состав самого популярного пакета Microsoft Office. Основные преимущества: знаком многим конечным пользователям и обладает высокой устойчивостью данных, прост в освоении, может использоваться непрофессиональным программистом, позволяет готовить отчеты из баз данных различных форматов. Предназначен для создания отчетов произвольной формы на основании различных данных и разработки некоммерческих приложений. Минимальные ресурсы ПК: процессор 468DX, Windows 3.1, 95, NT, объем оперативной памяти 12 (16) Мб, занимаемый объем на ЖМД 10-40 Мб. .[4]

     Visual Basic – это универсальный объектно-ориентированный язык программирования, диалекты которого встроены в Access, Visual FoxPro. Преимущества: универсальность, возможность создания компонентов OLE, невысокие требования к аппаратным ресурсам ЭВМ. Применяется для создания приложений средней мощности, не связанных с большой интенсивностью обработки данных, разработки компонентов OLE, интеграция компонентов Microsoft Office. Минимальные ресурсы ПК: процессор 368DX, Windows 3.1, 95, NT, объем оперативной памяти 6 (16) Мб, занимаемый объем на ЖМД 8-36 Мб.

     Visual C++ – наиболее мощный объектно-ориентированный язык программирования, обладает неограниченной функциональностью. Предназначен для создания компонентов приложений для выполнения операций, критичных по скорости.

     SQL Server – сервер баз данных, реализует подход «клиент-сервер» и взаимодействует с указанными пакетами. Главные достоинства: высокая степень защиты данных, мощные средства для обработки данных, высокая производительность. Область применения: хранение больших объемов данных, хранение высокоценных данных или данных, требующих соблюдения режима секретности. Минимальные ресурсы ПК: процессор 468DX-33МГц, Windows NT, объем оперативной памяти 16 (32) Мб, занимаемый объем на ЖМД 80 Мб.

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

4. Принципы организации данных, лежащие в основе современных СУБД

 

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

     Иерархическая модель данных строится по принципу иерархии объектов, то есть один тип объекта является главным, все нижележащие – подчиненными. Устанавливается связь «один ко многим», то есть для некоторого главного типа существует несколько подчиненных типов объектов. Иначе, главный тип именуется исходным типом, а подчиненные – порожденными. У подчиненных типов могут быть в свою очередь подчиненные типы. Наивысший в иерархии узел (совокупность атрибутов) называют корневым.

     Сетевая модель данных строится по принципу «главный и подчиненный тип одновременно», то есть любой тип данных одновременно может одновременно порождать несколько подчиненных типов (быть владельцем набора) и быть подчиненным для нескольких главных (быть членом набора).

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

     Объект (Сущность) – элемент какой-либо системы, информация о котором сохраняется. Объект может быть как реальным (например, человек), так и абстрактным (например, событие – поступление человека в стационар).

     Атрибут – информационное отображение свойств  объекта. Каждый объект характеризуется  набором атрибутов.

     Таблица – упорядоченная структура, состоящая из конечного набора однотипных записей.

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

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

5. Современные технологии, используемые в работе с данными

     Технология  «Клиент-сервер» – технология, разделяющая приложение- СУБД на две части: клиентскую (интерактивный графический интерфейс, расположенный на компьютере пользователя) и сервер, собственно осуществляющий управление данными, разделение информации, администрирование и безопасность, находящийся на выделенном компьютере. Взаимодействие «клиент-сервер» осуществляется следующим образом: клиентская часть приложения формирует запрос к серверу баз данных, на котором выполняются все команды, а результат исполнения запроса отправляется клиенту для просмотра и использования. Данная технология применяется, когда размеры баз данных велики, когда велики размеры вычислительной сети, и производительность при обработке данных, хранящихся не на компьютере пользователя (в крупном учреждении обычно имеет место именно такая ситуация). Если технология «клиент-сервер» применяется, то для обработки даже нескольких записей весь файл копируется на компьютер пользователя, а только затем обрабатывается. При этом резко возрастает загрузка сети, и снижается производительность труда многих сотрудников.

     Microsoft Access, Microsoft Visual FoxPro, Microsoft Visual Basic обеспечивают средства для создания клиентских частей в приложениях «клиент-сервер», которые сочетают в себе средства просмотра, графический интерфейс и средства построения запросов, а Microsoft SQL Server является на сегодняшний день одним из самых мощных серверов баз данных.

     OLE 2.0 (Object Linking and Embedding – связывание и внедрение объектов) – стандарт, описывающий правила интеграции прикладных программ. Применяется для использования возможностей других приложений. OLE 2.0 используется для определения и совместного использования объектов несколькими приложениями, которые поддерживают данную технологию. Например, использование в среде Access таблиц Excel и его мощных средств построения диаграмм или использование данных, подготовленных Access, в отчетах составленных в редакторе текстов Word (связывание или включение объекта).

     OLE Automation (Автоматизация OLE) – компонент OLE, позволяющий программным путем устанавливать свойства и задавать команды для объектов другого приложения. Позволяет без необходимости выхода или перехода в другое окно использовать возможности нужного приложения. Приложение, позволяющее другим прикладным программам использовать свои объекты называется OLE сервером. Приложение, которое может управлять объектами OLE серверов называется OLE контроллер или OLE клиент. Из рассмотренных программных средств в качестве OLE серверов могут выступать Microsoft Access, а также Microsoft Excel, Word и Graph... Microsoft Visual FoxPro 3.0 и 5.0 может выступать только в виде OLE клиента. [5]

     RAD (Rapid Application Development – Быстрая разработка приложений) – подход к разработке приложений, предусматривающий широкое использование готовых компонентов и/или приложений и пакетов (в том числе от разных производителей).

     ODBC (Open Database Connectivity – открытый доступ к базам данных) – технология, позволяющая использовать базы данных, созданные другим приложением при помощи SQL.

     SQL (Structured Query Language – язык структурированных запросов) – универсальный язык, предназначенный для создания и выполнения запросов, обработки данных как в собственной базе данных приложения, так и с базами данных, созданных другими приложениями, поддерживающими SQL. Также SQL применяется для управления реляционными базами данных.

     VBA (Visual Basic for Applications – Visual Basic для Приложений) – разновидность (диалект) объектно-ориентированного языка программирования Visual Basic, встраиваемая в программные пакеты. 
 
 
 
 
 
 
 
 
 
 
 

                                                  ЗАКЛЮЧЕНИЕ

 

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

                              Список использованных источников

 
 

     1. Информатика: Практикум по технологии работ на компьютере: Учебное пособие для вузов / Под ред. Н.В. Макаровой. – М.: Финансы и статистика, 1997. - 384 с.

     2. Могилев А.В. и др. Информатика: Учебное пособие  для студентов пед. вузов / А.В. Могилев, Н.И. Пак – М.: Академия, 1999. – 816 с.

     3. Острейковский В.А. Информатика: Учебник для технических вузов – М.: Высшая школа, 1999. – 511 с.

     4. Информатика: Базовый курс: Учебное пособие для втузов / Под ред С.В. Симоновича – СПб. : Питер, 2003. – 640 с.

     5. Хохлова Н.В. и др. Информатика: Учебное пособие  для  вузов / Н.В. Хохлова, А.И. Истеменко, Б.В. Петренко. – М.:  Высшая школа, 1990. – 195 с.