1. АРХИТЕКТУРА SYBASE SYSTEM 11



Основные серверные продукты Sybase System 11:

  1. Sybase SQL Server - реляционная система управления базами данных (СУБД);

  2. Sybase MPP - расширение архитектуры Sybase SQL Server, разработанное для массовой параллельной обработки (в очень больших базах данных (БД));

  3. Sybase IQ - серверный механизм построения битовых индексов для высокоскоростного выполнения сложных запросов к большим объемам данных;

  4. Sybase SQL Anywhere - “легкая” полнофункциональная СУБД для мобильных пользователей и небольших групп;

  5. Sybase Replication Server - репликационный сервер для построения распределенных систем на основе тиражирования данных;

  6. Sybase OmniConnect - сервер, обеспечивающий работу приложений-клиентов в “прозрачном” режиме с несколькими серверами так, как будто работа идет с одним сервером; при этом в распределенную систему могут включаться различные СУБД - Sybase, Oracle, IBM и т. д.


Вспомогательные серверные продукты Sybase System 11:

  1. Sybase Backup Server - спецсервер для выгрузки и загрузки БД, не требующий остановки SQL Server и не снижающий его производительности;

  2. Sybase Monitor Server - в сочетании с графической клиентской частью выполняет мониторинг различных параметров состояния SQL Sybase;

  3. Sybase Replication Agent - специальные компоненты, отслеживающие изменения в данных через журналы транзакций различных СУБД для включения их в систему репликации (для Sybase SQL Server, Oracle, DB2, Sybase SQL Anywhere);

  4. Sybase Audit Server - записывает информацию о действиях пользователей в специальную БД, доступную для анализа.


Инструментальные средства Sybase:

  1. PowerBuilder;

  2. S-Designor.

Возможности СУБД Sybase System 11:

  1. масштабируемость - т. е. многоплатформенность (от ПК до многопроцессорных суперсерверов);

  2. производительность - благодаря тесному взаимодействию с аппаратурой и оптимизации характеристик;

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

  4. надежность и целостность данных - за счет механизмов триггеров и процедур, декларативной ссылочной целостности, транзакций и др.; СУБД соответствует уровню безопасности C2 NCSA;

  5. доступность данных - СУБД поддерживает зеркальный журнал и зеркальную БД, а также высокоскоростные средства загрузки/восстановления данных;

  6. открытость и соответствие стандартам - СУБД соответствует стандартам ANSI/ISO SQL-89 и SQL-92; поддерживает приложения в стандарте ODBC и X/Open XA; использует различные сетевые протоколы;

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


Управление транзакциями:

  1. синхронная модель;

  2. асинхронная модель.

Синхронная модель - это модель двухфазной фиксации (2PC). Асинхронная модель - это асинхронное тиражирование транзакций в распределенных системах (репликация). Механизм репликации гарантирует доставку измененных данных на вторичные серверы непосредственно после завершения транзакции, если сервер доступен, или сразу после подключения сервера к сети. Такой подход предполагает хранение дублирующей информации в различных узлах сети и обеспечивает, по сравнению с другими подходами к репликации, снижение трафика, уменьшение времени ответа системы, а также позволяет оптимизировать нагрузку на серверы.

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

Sybase Replication Server (SRS)

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


SQL-сервер SRS SRS SQL-сервер

Глобал.

БД сеть БД

Менеджер Менед.

журнала журнала

Локальная сеть узла 1 Локальная сеть

узла 2

ПП1 ПП2



SRS - это отдельная задача, запускаемая одновременно с СУБД. Этот сервер имеет свой входной язык и стандартный для продуктов Sybase сетевой интерфейс Open Server. Такое разделение снижает нагрузку на СУБД и делает систему в целом более открытой.

Репликация использует принцип “публикации” изменяемых данных и “подписки” на изменения.

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

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

Современные СУБД используют системный журнал транзакций. Репликация данных в Sybase также использует журнал как источник информации о завершенных транзакциях.

В узле, содержащем первичные данные, для каждой тиражируемой БД запускается специальная компонента - репликационный агент (RA). Он подключается к серверу БД и получает от него уведомления о завершении транзакций. Измененные данные передаются репликационному серверу, обслуживающему этот узел. Репликационный сервер в соответствии с описанием тиражирования и подписками отправляет данные в специальном протоколе соответствующим репликационным серверам в удаленных узлах.

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

По умолчанию репликационный сервер сохраняет смысл операций, т. е. изменение записи в первичной таблице приведет к выполнению того же действия (INSERT, DELETE или UPDATE) в таблице-копии. В одной БД могут содержаться как первичные данные, так и данные-копии. Приложение-клиент может вносить изменения напрямую только в первичные данные, а для изменения копии данных предназначен механизм асинхронного вызова процедур.

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

Для обновления копий данных (“чужих” данных) приложение-клиент вместо выполнения UPDATE вызывает определенную в этом узле процедуру и передает ей параметры. Тело этой процедуры пустое (она ничего не делает), однако ее вызов записывается в журнал. Механизм репликации обеспечивает вызов на узле, содержащем первичные данные, одноименной процедуры с подстановкой параметров. В теле этой процедуры есть оператор UPDATE, обновляющий первичные данные. Тот же механизм репликации передаст изменения в данных узлу, инициировавшему операцию.

Репликационный сервер и RA реализованы в виде отдельных модулей, которые могут выполняться не только на сервере БД, но и на других компьютерах. Включение в систему репликационного сервера практически не оказывает влияния на загрузку сервера первичной БД.

СУБД, хранящая вторичные данные, может быть любой СУБД, доступной через шлюз (ORACLE, Informix, Ingres, DB/2, RMS, ISAM, приложение Open Server). СУБД, хранящая первичные данные, требует наличия для нее RA. Интерфейс RA открыт и возможно создание RA для нестандартных источников данных.

Некоторые применения тиражирования данных:

  1. сервер, выполняющий активное обновление данных, разгружается от сложных запросов, связанных с поддержкой принятия решений;

  2. консолидация данных от подразделений в центре;

  3. обмен данными по медленным (или ненадежным) линиям связи;

  4. поддержание резервной БД;

  5. построение сети равноправных узлов, обменивающихся данными.


Случайные файлы

Файл
90400.rtf
15382-1.rtf
27567.rtf
18759.rtf
144037.rtf




Чтобы не видеть здесь видео-рекламу достаточно стать зарегистрированным пользователем.
Чтобы не видеть никакую рекламу на сайте, нужно стать VIP-пользователем.
Это можно сделать совершенно бесплатно. Читайте подробности тут.