43564 (662674), страница 8

Файл №662674 43564 (Организация удаленного доступа к распределенным базам данных) 8 страница43564 (662674) страница 82016-07-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 8)

Альтернативным способом доступа к данным InterBase может быть технология ODBC. В комплект поставки InterBase входит ODBC драйвер, а все IDAPI-приложения имеют возможность взаимодействовать с ODBC-совместимым источником данных.

С появлением InterBase 4.0 средства IDAPI поддерживают для InterBase 4.0 специальную технологию связи с базой данных, которая называется Express Link. Являясь частью технологии IDAPI фирмы Borland, Express Link, минуя собственные средства персонального приложения, обеспечивает через IDAPI прямую связь между персональными приложениями и сервером InterBase.

Подобные функциональные возможности требуют наличия двух компонентов: драйвера и сервера, который может отвечать на команды персонального приложения. С помощью InterBase 4.0 сервер базы данных поддерживает две модели взаимодействия с сервером. С использованием Express Link, InterBase 4.0 может функционировать, как подлинный сервер для клиентов Paradox и dBASE с непосредственной поддержкой в механизме базы данных таких средств, как перемещение по записям и их обновление. Через динамические и встроенные вызовы SQL InterBase 4.0 может также поддерживать операционную среду для традиционных SQL-приложений.

Таким образом, InterBase 4.0 поддерживает две интерфейсных операционных среды:

  • Технологию Express Link (использующую IDAPI) с поддержкой таких персональных инструментов, как dBASE, Paradox и другие продукты Windows на базе IDAPI.

  • SQL, позволяющую реализовать доступ на базе статических или динамических операторов SQL.

Основываясь на конкретных потребностях, приложение может свободно сочетать эти модели.

Для взаимодействия с сервером персональное приложение на PC, включая Paradox и dBASE, может вызывать администратор IDAPI. Сами функции IDAPI по характеру выполняемой ими работы подразделяются на функции перемещения и функции SQL. Вызовы SQL в IDAPI основаны на спецификации X-Open Call Level Interface, в то время как расширения вызовов персональных приложений IDAPI предназначены для реализации характерной технологии программирования персональных приложений. Для получения общей рабочей среды некоторые вызовы используются совместно как в режиме SQL, так и в режиме перемещения. Режим взаимодействия приложения с сервером InterBase 4.0 обычно определяется режимом текущего вызова IDAPI. Использование SQL или режима перемещения прозрачно для пользователя.

Для поддержки ориентированного на записи доступа обычно требуется выполнение на промежуточном уровне трансляции, преобразующей запросы персонального приложения в команды SQL. Например, чтобы открыть индексный курсор, транслирующий уровень строит оператор SQL с предложением Order By, соответствующим столбцам индекса, а затем выполняет его на сервере. Фильтрующие выражения завершаются предложением Where сгенерированного оператора SQL. Сервер реляционной базы данных эмулирует через SQL семантику данных работающего с упорядоченной информацией персонального приложения, что ведет к заметному снижению производительности.

Позволяя открывать курсоры для таблиц и индексов без использования операторов SQL, InterBase 4.0 с помощью многопользовательской среды клиент-сервер обеспечивает производительность, близкую к производительности локального персонального приложения. Это означает, что когда курсор открывается для таблицы, то записи возвращаются в естественном порядке, а когда он открывается для индекса, то они возвращаются в отсортированном порядке.

Важным аспектом дизайна InterBase 4.0 является прямая, осуществляемая на уровне механизма базы данных поддержка подобных операций перебора. Для более быстрой выборки записей из таблиц и индексов InterBase 4.0 использует специальные структуры данных, алгоритмы и протоколы. Для подготовки и выполнения таких операций операторы SQL не требуются, поэтому отпадает необходимость в промежуточных транслирующих модулях, а буферизация результирующего набора сводится с минимуму. Кроме того, к данным параллельно могут обращаться как пользователи Express Link, так и SQL.

Закладка - это метка записи относительно ее позиции среди других записей. Механизм InterBase 4.0 поддерживает закладки непосредственно на уровне сервера, позволяя использовать вызовы для установки, получения и сравнения закладок. Закладка действует в течение всего подключения к базе данных и допустима даже после закрытия исходного курсора и завершения первоначальной транзакции. Используя внутренние идентификаторы записи, InterBase 4.0 поддерживает быстрые операции с закладками.

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

С этой целью в InterBase 4.0 поддерживается сохранение контекста курсора. Это позволяет поддерживать текущий курсор даже после завершения транзакции.

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

Для обеспечения потребностей пользователей персональных приложений PC, InterBase 4.0 поддерживает явные блокировки, но следует также и стандартной модели сервера, которая обеспечивает явные блокировки для традиционных пользователей SQL.

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

  • Через регулярные интервалы обновлять данные путем опроса сервера.

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

  • Блокировать все кэшируемые данные

В InterBase 4.0 предусмотрена специальная технология, которая называется обновлением кэша. Используя это средство, приложение IDAPI может идентифицировать диапазон интересующих его записей и регистрирует это на сервере. Когда в записи из этого диапазона происходит изменение (например, параллельно работающий пользователь модифицирует запись), сервер инициирует событие, которое уведомляет клиентское приложение с помощью механизмов уведомления о событиях - InterBase 4.0 Event Alerters. Клиентское приложение получает это событие и может либо игнорировать его, либо запросить изменение записей в данном диапазоне.

InterBase 4.0 допускает использование для хранения данных и работы с ними нескольких национальных наборов символов. Для всех строковых операций и операций с объектами BLOB поддерживаются как 8-битовые, так и 16-битовые наборы. Заданный по умолчанию набор символов и порядок сравнения можно определить для базы данных в целом. Сравнение можно также определить с помощью предложения Order By в операторе Select. Для спецификации символов национальных алфавитов можно использовать строковые литералы с префиксом имени набора символов. В стандартный комплект поставки включена поддержка кодовой таблицы ANSI 1251, являющейся стандартом при работе с русским языком в среде Windows.

2.5 Выбор средств разработки

В качестве CASE-средства использован программный продукт ERWin 2.5 фирмы Logic Works. ERwin - средство разработки структуры базы данных. ERwin сочетает графический интерфейс Windows, инструменты для построения ER-диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную поддержку ведущих реляционных СУБД и настольных баз данных. С помощью ERwin можно создавать или проводить обратное проектирование (реинжиниринг) баз данных.

Предыдущие версии ERwin - 1.5 и 2.1 - завоевали все возможные призы среди программ своего класса, в том числе DBMS Readers' Choice в 1992, 1993, 1994, 1995 годах, Software Development Productivity Award 1993, Data Based Advisor Readers' choice 1992 и 1994. Текущая версия продукта - 2.6.

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

Для написания клиентской части приложений использована среда разработчика Borland Delphi C/S 2.01. Delphi относится к средствам быстрой разработки приложений (RAD - Rapid Applications Development). Определяющим фактором при выборе Delphi в качестве средства разработки клиентской части является наличие большой библиотеки объектов для быстрого построения приложений, работающих с базами данных. Кроме того, Delphi поддерживает интерфейс PVCS, что позволяет вести параллельную разработку проекта несколькими программистами.

Для разработки процессов, функционирующих на стороне сервера использована среде разработки Microsoft Visual C 4.2 из пакета Microsoft Developer Studio. Эта среда сочетает в себе мощь языка C++, удобные средства отладки программ и навигации по тексту. Кроме того, она позволяет использовать в программах все возможности операционной системы (RPC, RAS, TAPI, сервисы Windows NT).

2.6 Организация взаимодействия между серверами

2.6.1 Выбор модели распределенной базы данных

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

2.6.2 Модель взаимодействия

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

  • Процесс-клиент (сервер 1)

  • Среда передачи данных

  • Процесс-сервер (сервер 2)

В этой схеме в каждый конкретный момент времени в качестве клиента выступает один из взаимодействующих серверов. Таким образом, на каждом из серверов в любой момент времени должен быть запущен процесс, отвечающий за взаимодействие с удаленным узлом сети. В Windows NT в качестве такого процесса может выступать специально разработанный сервис операционной системы (system service). Он должен «уметь» обслуживать подключения удаленных клиентов, а также при необходимости сам выступать в роли клиента. Кроме того, на него можно возложить функции удаленного администрирования и резервного копирования данных.

Для организации обмена информацией в общем случае необходимо разработать протокол этого обмена, что само по себе является достаточно сложной задачей. Кроме того, необходимо реализовать поддержку сервисом различных транспортных протоколов (TCP/IP, NetBIOS, IPX/SPX), что выливается в многократное дублирование программного кода. Для решения этой задачи использован слой вызова удаленных процедур Microsoft RPC (Microsoft Remote Procedure Call).

2.6.3 Использование слоя RPC для распределенной обработки данных на платформе Windows NT

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

Слой Microsoft RPC - только часть стандарта среды для распределенных вычислений, названной OSF (Open Software Foundation), разработанной группой компаний для определения компонентов сетевой среды, которая поддерживает распределенные вычисления.



2.6.4 Компоненты Microsoft RPC

Microsoft RPC включает следующие основные компоненты:

  • Компилятор MIDL (Microsoft IDL)

  • Библиотеки времени выполнения и заголовочные файлы.

  • Модули транспортного интерфейса

  • Сервис разрешения имен

  • Сервис поддержки конечной точки

В модели PRC можно формально определить интерфейс для удаленной процедуры, используя язык, специально разработанный для этой цели. Этот язык – IDL (Interface Definition Language - язык определения интерфейсов). Диалект языка, реалиçованный фирмой Microsoft, назван MIDL (Microsoft IDL).

После создания интерфейса его описание обрабатывается компилятором MIDL. MIDL компилятор генерирует «заглушки» (stubs), которые транслируют вызовы локальных процедур в вызовы процедур, находящихся на сервере. «Заглушка» -- это процедура-заполнитель, которая делает вызовы библиотечных функций RPC для управления вызовами удаленных процедур. Применение заглушек обеспечивает прозрачность сетевого уровня для распределенных приложений. Клиентская программа вызывает их как локальные процедуры, весь код, который передает данные по сети и принимает результаты, генерируется MIDL компилятором и невидим для разработчика.

2.6.5 Механизм работы RPC

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

Характеристики

Тип файла
Документ
Размер
2,73 Mb
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6366
Авторов
на СтудИзбе
310
Средний доход
с одного платного файла
Обучение Подробнее