Диго С.М. Базы данных проектирование и использование (1084447), страница 60
Текст из файла (страница 60)
Мы в нашем поздравлении хотим использовать обращение «дорогой/дорогая», которое зависит от пола сотрудника. Для того чтобы выбиралось нужное обращение, воспользуемся кнопкой «Добавить поле Word» на панели инструментов «Слияние» и в появившемся списке выберем строку «IF...THEN...ELSE». Поле IF обозначает выполнение одной из двух операций, в зависимости от выполнения указанных условий. Нужное нам условие будет выглядеть так, как представлено на рис. 9.31.
Далее в документ необходимо вставить поля слияния, воспользовавшись соответствующей кнопкой. В открывшемся далее окне (рис. 9.32) следует выбрать нужные поля.
Подготовленный нами текст будет иметь вид:
Дорогая «имя» «отчество»!
Поздравляем Вас с наступающим Новым годом!
Счастья! Здоровья!
Успехов в нашей совместной деятельности!
Вместо ссылок при просмотре и печати будут выводиться конкретные имена и отчества сотрудников.
Кроме получения документов слиянием можно, установив связь с MS Word, воспользоваться позицией меню Сервис/Конверты и наклейки.
Для получения сложных документов можно также использовать возможность «Публикация в MS Word». Публиковать можно таблицы, запросы, отчеты.
Для публикации соответствующего объекта нужно предварительно позиционироваться на нем в окне базы данных.
Использование возможности «Анализ в MS Excel» приводит к преобразованию таблицы данных или запроса в формат MS Excel.
На это следует обратить внимание
-
Генераторы отчетов являются мощным средством автоматизации проектирования информационных систем.
-
Современные генераторы отчетов позволяют получать документы разной структуры и степени сложности, использовать разные формы представления информации, обладают развитыми возможностями по оформлению документов.
-
Генераторы отчетов, включенные в состав конкретных СУБД, различаются по своим функциональным возможностям, удобству использования. Однако принципы, положенные в их основу, являются общими. Знание этих принципов позволяет легко осваивать разные реализации этих систем.
Контрольные вопросы
-
Что такое «отчеты»?
-
Что такое «генераторы отчетов»?
-
Дайте классификацию форм отчетов.
-
Какие возможности предоставляет пользователю генератор отчетов СУБД Access?
-
Что такое макет отчета и какова его структура?
-
Что такое Мастера и какие Мастера включены в генератор отчетов Access?
-
Каков порядок создания отчета?
-
Как можно получить документ табличной формы, анкетной формы?
-
Как можно обеспечить сортировку данных в отчете?
-
Можно ли выводить в документ данные, явно не содержащиеся в таблицах базы данных? Если да, то как это сделать?
-
Как можно получить отчет, содержащий информацию из нескольких таблиц БД? Какие разновидности отчетов при этом можно получить?
-
Каковы возможности группировки данных в отчете?
-
Сколько степеней итогов позволяет получить генератор отчетов Access?
-
Можно ли получить документ, содержащий только итоговые строки? Если да, то как это сделать?
-
Как пронумеровать страницы отчета?
-
Как пронумеровать строки в отчете?
-
Что собой представляет «Слияние с MS Word»? «Публикация в MS Word»?
-
Какие свойства элементов отчета можно задавать и в каких целях их можно использовать?
Глава 10 РАСПРЕДЕЛЕННЫЕ БАНКИ ДАННЫХ
10.1. Основные понятия
Будем различать понятия «распределенные банки данных» (РБнД) и «распределенные базы данных» (РБД).
РБнД будем называть БнД, в котором распределен хотя бы какой-либо один компонент БнД (не обязательно БД). В такой трактовке информационная система, обеспечивающая многопользовательский доступ к централизованной базе данных, будет считаться одной из разновидностей РБнД. Такое понимание РБнД не является общепринятым.
Распределенная база данных (DDB - Distributed DataBase) - это совокупность множества взаимосвязанных баз данных, распределенных в компьютерной сети. РБД распределена физически, но логически - едина (имеет общую схему данных).
Система управления распределенной базой данных — программная система, позволяющая управлять базой данных таким образом, чтобы ее распределенность была прозрачна для пользователей.
Сервер баз данных - СУБД, основанная на архитектуре «клиент-сервер».
SQL-сервер - собирательный термин, относящийся ко всем серверам баз данных, основанных на SQL. Наиболее популярные SQL-серверы перечислены в табл. 10.1.
Таблица 10.1
СУБД | Производитель | URL |
Oracle | Oracle Corp. | www.oracle.com |
MS SQL Server | Microsoft | www.microsoft.com |
Informix | Informix | www.informix.com |
Sybase | Sybase | www.sybase.com |
DB2 | IBM | www.4.ibm.com |
Современным серверным СУБД присущи следующие характерные черты:
-
реализация для различных платформ (UNIX, Windows, Linux);
-
наличие административных утилит;
-
резервное копирование данных;
-
обслуживание репликаций;
-
параллельная обработка данных в многопроцессорных системах;
-
поддержка OLAP и создания хранилища данных (многие производители серверных СУБД поставляют такие серверы отдельно (Oracle, Informix), некоторые включают их в состав сервера реляционных БД (MS SQL Server 7.0 и выше));
-
распределенные запросы и транзакции;
-
использование средств проектирования БД (универсальных или ориентированных на конкретную СУБД);
-
поддержка доступа к данным через Интернет.
К распределенным системам помимо требований, предъявляемых ко всем ИС, выдвигаются дополнительные требования:
-
независимость от расположения данных;
-
независимость от СУБД, ОС и аппаратного обеспечения;
-
максимальная автономия.
При работе в РБнД возникают дополнительные проблемы. Причинами, вызывающими эти проблемы, являются:
-
параллельное одновременное обращение пользователей к БД;
-
распределение функций по обработке данных между компьютерами;
-
распределение данных между компьютерами;
-
авторизация пользователей и распределение ролей между ними;
-
неоднородность отдельных компонентов.
Для решения этих проблем существуют специальные механизмы, которые будут рассмотрены ниже.
10.2. Классификация РБнД
При классификации РБнД будут рассмотрены только характеристики, присущие именно распределенным ИС. На рис. 10.1 приведена обобщенная схема классификации РБнД.
РБнД реализуются в компьютерных сетях, причем это могут быть как локальные, так и глобальные сети. Вид сети, используемые сетевые операционные системы, безусловно, оказывают существенное влияние на проектирование и функционирование РБнД, но классификация систем по этим признакам выходит за рамки данного учебника.
Как пояснялось при введении понятия РБнД, предполагается, что в РБнД базы данных могут быть как централизованными, так и распределенными. В РБнД с распределенными базами данных используются разные технологии распределения данных по узлам сети. Различают подходы, основанные на фрагментации БД и на тиражировании данных.
При использовании фрагментации единая логическая БД разбивается по каким-либо признакам на составные части (фрагменты), хранящиеся в разных узлах сети.
В РБД могут использоваться разные типы фрагментации. По операциям над таблицами различают горизонтальное, вертикальное и смешанное фрагментирование. Разбиение БД на фрагменты может проводиться по разным признакам. Наиболее часто используются следующие критерии разбиения: территориальный, функциональный, временной.
При использовании технологии тиражирования создаются и поддерживаются в согласованном состоянии копии всей БД или ее фрагментов в нескольких узлах сети. Копия базы данных, являющаяся членом набора других копий, которые могут быть синхронизированы между собой, называется репликой.
Технология тиражирования по характеру организации данных близка к применению локальных баз данных (так как каждый пользователь использует собственную копию БД), но отличается от децентрализованных систем по способу создания локальных копий и технологии поддержания целостности. Полностью децентрализованная система не предполагает использование специализированных программно-технических средств, поддерживающих целостность БД.
При сравнении децентрализованных и распределенных систем (табл. 10.2) знаком «+» отмечены лучшие значения характеристики.
Таблица 10.2
Характеристика | Система | |
децентрализованная | распределенная | |
Возможность совместного использования данных | + | |
Сложность используемых программных средств | + | |
Возможность централизованного обеспечения целостности данных | + | |
Сложность проектирования | + | |
Сложность поддержания безопасности | + | |
Гибкость и эффективность использования вычислительных ресурсов | + |
В РБнД с централизованной БД (много клиентов/один сервер) проблемы управления базой данных решаются относительно просто, поскольку вся она хранится на одном сервере. Задачи, с которыми приходится здесь сталкиваться, - это блокировки при одновременном обращении к данным, управление буферами клиентов и кэширование данных. Управление данными реализуется централизованно на одном сервере.
В системах с распределенной базой данных и проектирование БД, и реализация запросов, и управление системой представляют собой более сложные задачи, но, с другой стороны, такие системы обеспечивают большую гибкость, надежность и быстродействие. В табл. 10.3 приведено сравнение централизованных и распределенных систем.
Таблица 10.3
Характеристика | Система | |
централизованная | распределенная | |
Сложность используемых программных средств | + | |
Уязвимость БД | + | |
Потери на непроизводительные (накладные) расходы | + | |
Ограничение пропускной способности | + | |
Модульность, возможность расширения системы | + | |
Сложность проектирования | + | |
Сложность поддержания актуальности БД | + | |
Сложность поддержания целостности БД | + | |
Сложность поддержания безопасности | + | |
Возможность уменьшения сетевого трафика | + | |
Распределение рабочей нагрузки естественным образом на несколько компьютеров | + | |
Соотношение показателя «стоимость/ эффективность» | + | |
Требования к аппаратной платформе | + | |
Сложность администрирования | + |
Используемые технологии распределения данных видоизменяют преимущества и недостатки этих систем. Так, одно из основных преимуществ баз данных, обусловленных интегрированным хранением данных, - сокращение степени дублирования - теряется при использовании технологии тиражирования. Но при этой технологии, в отличие от использования децентрализованных систем, сохраняются возможности контроля целостности данных для системы в целом.
При технологии фрагментации созданные фрагменты могут быть пересекающиеся и непересекающиеся. Наличие пересекающихся фрагментов делает схожей эту технологию с технологией тиражирования.
На выбор способа организации БД оказывают влияние следующие факторы:
-
число пользователей;
-
степень пересечения информационных потребностей пользователей;
-
объем данных;
-
квалификация персонала;
-
ограничения (стоимость, время отклика, актуальность информации);
-
наличие существующей системы обработки информации и ее
характеристика.
Несмотря на то что при использовании распределенных систем используется более сложное и дорогое программное обеспечение, более совершенные технические средства, наибольшие затраты здесь приходятся на эксплуатационные расходы. По данным фирмы Microsoft14, структура затрат в централизованных и распределенных системах выглядит следующим образом:
-
в централизованных системах около половины (48%) средств расходуется на аппаратное обеспечение, 14% составляют затраты на программное обеспечение и 28% - на поддержку системы;
-
в распределенных системах основные затраты (77%) связаны с поддержкой системы, расходы на аппаратное обеспечение составляют 15%, а на программное обеспечение - только 6% общей стоимости системы.
В распределенных системах расширяется состав и увеличивается объем метаинформации, повышается значимость ее эффективной организации. Могут использоваться разные способы организации метаинформации:
-
централизованный каталог;
-
полностью реплицированный каталог;
-
секционированный каталог;
-
комбинированный (1 и 3).
По способу взаимодействия функциональных компонентов различают файл-серверную и клиент-серверную архитектуру РБнД. На рис. 10.2 представлена принципиальная схема обработки данных в архитектуре «файл-сервер». При использовании такой архитектурной модели основная обработка данных проводится на рабочей станции. Такая модель приводит к необходимости передачи больших объемов данных по сети, что увеличивает трафик, а это, в свою очередь, может привести к замедлению обработки данных, увеличению стоимости, снижению надежности и другим недостаткам.