Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (960530), страница 30
Текст из файла (страница 30)
Это требует от пользователя144Часть 1. Основы построениябазданныхзнания не только предметной области, а и специфики используемой прикладной программы.Существенным недостатком можно считать также сложность переноса таких систем на другие компьютерные платформы и интеграцию с другими пакетами из-за «закрытости» используемых протоколов взаимодействия компонентов систем.Еще один недостаток заключается в сложности администрирования системы и ее уязвимости при непредсказуемых или злонамеренных действияхпользователя или компьютерных вирусов.3.
Корпоративныесистемы интранет, в отличие от систем клиентсервер, ориентированы не на данные, а на информацию в ее окончательном и пригодном для использования неквалифицированным пользователем виде (рис. 4.16).Рис. 4.16. Системы, поставляющие информациюНовые системы объединяют в себе преимущества централизованных многопользовательских систем и систем типа клиент-сервер. Им присущи следующие черты:• на сервере порождается информация, пригодная для использования, ане данные (например, в случае СУБД — записи БД);• при обмене между клиентской и серверной частями используется протокол открытого стандарта, а не какой-то конкретной фирмы;• прикладная система находится на сервере, и поэтому для работы пользователя на компьютере-клиенте достаточно иметь программу-навигатор(могут быть и другие решения, когда часть обработки производится накомпьютере-клиенте).4.
Информационныесистемыв сетях145В случае, когда источником информации в Интернете и интранете являются БД, имеет место взаимодействие компонентов W W W и традиционных С У Б Д . Типовыми простейшими схемами организации функционирования программных компонентов, использующих данные из некоторой базы,в настоящее время можно считать следующие три: на стороне Web-клиента(рис. 4.17 а), на стороне Web-сервера (рис. 4.17 б) и на стороне сервера приложений (рис. 4.17 в).ииWeb-клиентWeb-cepeepSQL запросысСервер БДб)Рис. 4.17. Модели доступа к базе данных в ИнтернетеПри доступе к БД на стороне клиента основным средством реализациимеханизмов взаимодействия Wcb-клиента и сервера БД является язык Java.Кроме того, могут использоваться элементы управления ActiveX.
В качествевспомогательных средств обработки информации на клиентской стороне (ноне для взаимодействия с базами данных) часто используются языки сценариев JavaScript, JScript и VBScript, разработанные для расширения возможностей декларативного языка H T M L (в H T M L нет операторов присваивания,сравнения, математических функций и пр.) на основе добавления процедурных средств. Программы-сценарии выполняются на компьютере Web-броузером в режиме интерпретации.Для обращений к серверам БД из Java-nporpaMM разработан с т а н д а р ^ О В С(Java DataBase Connectivity - совместимость баз данных для Java), основан-146Часть 1.
Основы построениябазданныхный на концепции ODBC. Стандарт J D B C разработан фирмами Sun/JavaSoftи обеспечивает универсальный доступ к различным базам данных на языке Java.В модели доступа к БД на стороне сервера обращение к серверу БДобычно производится путем вызова программами Web-сервера внешних поотношению к ним программ в соответствии с соглашениями одного из интерфейсов: CGI (Common Gateway Interface - общий шлюзовый интерфейс),FastCGI или API (Application Program Interface - интерфейс прикладногопрограммирования).Внешние программы взаимодействуют каким-либо образом с сервером БДна языке SQL, например, непосредственно обращаясь к конкретному серверуили используя драйвер ODBC (см. подраздел 9.3).Внешние программы пишутся на обычных языках программирования типаС, С++ и Паскаль или специализированных языках типа Perl или РНР. Программы, разработанные в соответствии с интерфейсом CGI, называются CGIсценариями.Кроме того, для организации доступа серверных программ к информациииз БД могут использоваться технологии динамического построения Web-страниц (ASP, Р Н Р и IDC/HTX-страницы) на основе информации БД.Доступе к БД на стороне сервера приложений обычно применяется прииспользовании серверов приложений.
Основным языком разработки распределенных приложений в этом случае можно считать язык Java, а также технологии CORBA и Enterprise JavaBeansИз трех рассмотренных схем однозначного предпочтения тому или иномуварианту отдать нельзя. Все зависит от целей и условий разработки клиентсерверных программ (наиболее существенными оказываются аппаратно-программная платформа, вида Web-cepeepa, нагрузка на Web-сервер, а также характер решаемых задач).Недостатком первой модели является то, что клиентская часть системы оказывается более нагруженной, чем во второй модели. Кроме того, внекоторых случаях (например, при использовании технологии ActiveX)повышается угроза нарушению защиты информации на клиентской стороне. В то же время разгружается Web-сервер, что является достоинством.Достоинством модели доступа на стороне сервера является сравнительная простота клиентских программ и удобство администрирования системы,так как основная часть программного обеспечения находится на машине Webсервера.
Очевидным недостатком системы является возможное ухудшениехарактеристик оперативности получения информации при большой нагрузке на Web-cepeep и нехватке его мощности.В третьей схеме предпринята попытка преодолеть недостатки второй схемы в том случае, когда планируется большая нагрузка на \УеЬ-сервер.Подробно методы и средства организации работы с базами данных в Интернете рассмотрены в части 4.4. Информационныесистемыв сетях147Контрольные вопросы и задания1. Назовите типичные варианты разделения функций между компьютером-сервером и компьютером-клиентом для двухзвенной модели.2.
Охарактеризуйте модель удаленного доступа к данным.3. Назовите достоинства и недостатки модели сервера баз данных.4. Изобразите структурную схему трехзвенной модели сервера приложений.5. Каково назначение мониторов транзакций?6. Изобразите схему и охарактеризуйте модель монитора транзакций.7. Назовите основные технологии децентрализованного управления БД.8.
Опишите динамику функционирования модели распределенной БД.9. Укажите достоинства и недостатки модели распределенной БД.10. Опишите протокол двухфазной фиксации транзакций.11. Опишите модель тиражирования данных.12. Опишите протокол трехфазной фиксации транзакций.13. Назовите основные методы доступа к данным и укажите случаи предпочтительного их использования.14.
Приведите пример типичного набора блокировок объектов БД.15. Укажите правила совмещения блокировок.16. Назовите основные разновидности тупиков.17. Приведите пример взаимного тупика в распределенной БД.18. Укажите основные варианты создания информационной системы в локальной сети.19. Опишите схему функционирования информационной системы типафайл-сервер с несетевой СУБД.20. Как организуется обработка в информационных системах типа файлсервер с сетевой С У Б Д ?21.
Опишите схему функционирования информационной системы типаклиент-сервер.22. Каково назначение хранимых процедур и триггеров?23. Дайте понятия хранимых команд и курсора.24. Как организуется доступ к данным с помощью интерфейса O D B C ?25. Дайте общую характеристику сети Internet.26. Укажите основные модели доступа к БД в сети Internet.27. Какие я з ы к и программирования используются для доступа к БД вInternet?28. Каково назначение CGI-сценариев?29. Охарактеризуйте технологию intranet.148Литература1.ВейдА. Стандарты объектных запросов / / Системы Управления Базами Данных, № 4, 1 9 9 6 . - С . 89-97.2. Дейт К.Дж.
Введение в системы баз данных / Пер. с англ. - 6-е изд. - К.: Диалектика, 1998. - 784 с.3. Елисеев В, Ладыженский Г. Введение в Интранет / / Системы Управления Базами Данных, № 5-6, 1996. - С. 19-43.4. Калиниченко Л. Стандарт систем управления объектными базами данныхODMG: краткий обзор и оценка состояния / / Системы Управления БазамиДанных, № 1, 1996. - С. 102-109.5.
Конноли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика / Пер. с англ. — 3-е издание. - М.: Издательский дом«Вильяме», 2003. - 1440 с.6. Кузнецов С. Доступ к базам данных с использованием технологии W W W / /Системы Управления Базами Данных, № 5-6, 1996. - С. 4-9.7. Ладыженский Г. Системы управления базами данных - коротко о главном / /Системы Управления Базами Данных, № 4, 1995.
- С. 123-141.8. Олейников А.Я. Открытые системы: концепция и реальность / / Открытые системы, № 4, 1993. - С. 53-58.9. Орлик С.В. Borland Delphi как средство разработки масштабируемых приложений / / Системы Управления Базами Данных, № 4, 1995. - С. 50-56.10. Основы современных компьютерных технологий: Учебник / Под ред. проф.Хомоненко А. Д. Авторы: Брякалов Г. А., Войцеховский С. В., Воробьев Б. Г.,Гофман В. Э., Гридин В. В., Дрюков Ю.
П., Замула А. А., Захаров А. И., Компанией Р. И., Липецких А. Г., Рыжиков Ю. И., Хомоненко А. Д., Цыганков В. М.- СПб: КОРОНА принт, 2005. - 672 с.11. Роберт Сигнор, Михаэль О. Стегман. Использование O D B C для доступа к базам данных / Пер. с англ. - М.: Б И Н О М ; НАУЧНАЯ КНИГА. - 384 с.12. Системы управления базами данных и знаний: Справ, изд.
/ Наумов А.П., Вендров A.M., Иванов В.К. и др.; Под ред. Наумова А.Н. - М.: Финансы и статистика, 1991. - 352 с.13. Советов Б. Я., Цехановский В. В., Чертовский В. Д. Базы данных. Теория и практика. - М.: Высшая школа, 2005.ПРОЕКТИРОВАНИЕИ ИСПОЛЬЗОВАНИЕБАЗ ДАННЫХ5. Проектирование баз данныхВ настоящем разделе рассматриваются вопросы проектирования реляционных баз данных. Дается характеристика проблем проектирования и подходов к их решению.5.1. Проблемы проектированияПроектирование информационных систем, включающих в себя базы данных, осуществляется на физическом и логическом уровнях. Решение проблемпроектирования на физическом уровне во многом зависит от используемойСУБД, зачастую автоматизировано и скрыто от пользователя.
В ряде случаевпользователю предоставляется возможность настройки отдельных параметров системы, которая не составляет большой проблемы.Логическое проектирование заключается в определении числа и структуры таблиц, формировании запросов к БД, определении типов отчетных документов, разработке алгоритмов обработки информации, создании форм дляввода и редактирования данных в базе и решении ряда других задач.Решение задач логического проектирования БД в основном определяетсяспецификой задач предметной области.