на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Разработка приложений архитектуры клиент-сервер при помощи SQL
p align="left">Бытует мнение: Поскольку большая часть запросов формулируется на SQL, практически безразлично, что это за СУБД - был бы SQL.

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

Ориентированный на работу с таблицами SQL не имеет достаточных средств для создания сложных прикладных программ. Поэтому в разных СУБД он либо используется вместе с языками программирования высокого уровня (например, такими как Си или Паскаль), либо включен в состав команд специально разработанного языка СУБД (язык систем dBASE, R:BASE и т.п.).

2.3 Организация взаимодействия клиент-сервер при помощи SQL

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

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

Перенос персональной базы данных на сервер для последующего ее коллективного использования как корпоративной базы данных;

Организация запросов к корпоративной базе данных, размещенной на сервере, со стороны компьютера-клиента;

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

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

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

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

Интерфейс DB-LIB (библиотек баз данных);

Технологии ODBC (совместимости открытых баз данных);

Интерфейса OLE DB (связывания и встраивания объектов баз данных);

Технологии DAO (объектов доступа к данным);

Технологии ADO (объектов данных).

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

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

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

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

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

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

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

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

Интерфейс OLE DB рекомендуется использовать для создания средств и утилит, или разработок системного уровня, нуждающихся в высокой производительности или доступе к SQL свойствам, недоступные с помощью технологии ADO. Основные возможности спецификации OLE DB обеспечивают полную функциональность доступа к данным. В SQL процессор баз данных сервера использует это интерфейс для связи: между внутренними компонентами, таким как процессор хранения и процессор отношений; между установками SQL при использовании удаленных хранимых процедур; как интерфейс к другим источникам данных для распределенных запросов.

При использовании технологии ОАО работа с базами данных, таблицами ведется с использованием коллекций объектов. При этом обеспечиваются большие удобства в работе с объектами баз данных.

В настоящее время технология ОАО постепенно вытесняется технологией ADO, которая позволяет разрабатывать приложения Web для работы с базами данных. В целом технологию ADO можно охарактеризовать как наиболее современную технологию разработки приложений для работы с распределенными базами технологии клиент-сервер.

2.4 Среды программирования на языке SQL

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

Oracle была первой коммерческой реляционной СУБД, поддерживающей ставший ныне индустриальным стандартом язык SQL; ее первая версия появилась в 1979 году. Фактически все это время Oracle является бессменным лидером на рынке производителей коммерческих СУБД и второй (после Microsoft) по величине компанией, производящей программное обеспечение.

Ранние версии этой СУБД были предназначены для мэйнфреймов, а в качестве рабочих мест использовались <неинтеллектуальные> терминалы. Однако со временем появились версии Oracle, предназначенные для использования в архитектуре <клиент-сервер> (первой такой версией была Oracle 5, выпущенная в 1985 году). Первоначально эти версии были предназначены для различных серверных платформ - различных версий UNIX, VMS и др. Позже были выпущены версии сервера Oracle для Novell NetWare. Первые версии этого сервера для персональных компьютеров появились в середине 90-х (Personal Oracle 7 for Windows 3.1, Personal Oracle 7 for Windows 95, Personal Oracle Lite, Oracle Workgroup Server 7 for Windows NT). До появления этих версий персональные компьютеры могли использоваться исключительно в качестве клиентских рабочих станций - в состав Oracle для серверных платформ обычно входила клиентская часть для DOS.

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

Помимо различных версий сервера баз данных среди продуктов Oracle имеется также Designer/2000 - ориентированное на эту СУБД CASE-средство для анализа бизнес-процессов и проектирования данных, а также средства разработки клиентских приложений. Одно из них - Developer/2000 (называвшееся ранее Oracle*Forms) - весьма популярно среди пользователей Oracle; были и другие средства разработки (например, Oracle Power Objects). Отметим, что приложения, созданные с помощью Developer/2000, могут выполняться на различных платформах. Язык SQL, используемый в этом средстве разработки, является интерпретируемым и представляет собой тот же самый язык, что используется в Oracle для написания серверного кода. Это позволяет отлаживать с помощью Developer/2000 серверный код.

Производя собственные средства разработки, Oracle предоставляет своим пользователям возможность создавать клиентские приложения с помощью других средств. В частности, помимо стандартного в таких случаях клиентского API (Oracle Call Interface) клиентская часть Oracle содержит также объектную модель (Oracle Objects for OLE), позволяющую использовать клиентскую часть Oracle как набор СОМ-объектов для доступа к данным. Кроме того, обычно клиентская часть Oracle содержит также ODBC-драйвер для доступа к данным этой СУБД.

Отметим, что и многие другие компании производят ODBC-драйверы и OLE DB-провайдеры для доступа к Oracle (в частности, Microsoft). Компании, производящие средства разработки, использующие собственные библиотеки доступа к данным (такие как Inprise или Gupta/Centura), также включают библиотеки доступа к Oracle в состав наиболее дорогих версий своих продуктов.

Из готовых информационных систем на базе Oracle следует особо отметить несколько крупных систем управления предприятием, в частности SAP/КЗ. На Западе также нередко используются готовые решения от самой Oracle Corporation, объединенные под общим названием Oracle Applications, такие как Oracle Financials, Oracle Human Resources, Oracle Market Management, Oracle Project Systems и др.

Microsoft SQL Server 6.0 - одна из наиболее мощных СУБД архитектуры клиент-сервер. Эта СУБД позволяет удовлетворять такие требования, предъявляемые к системам распределенной обработке данных, как тиражирование данных, параллельная обработка, поддержка больших баз данных на относительно недорогих аппаратных платформах при сохранении простоты управления и использования.

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

Сервер имеет средства удаленного администрирования и управления операциями, организованными на базах объектно-ориентированной распределенной сред управления. Microsoft SQL Server входит в состав семейства Microsoft BackOffice, объединяющего пять серверных приложений, разработанных для совместного функционирования в качестве интегрированной системы.

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

Microsoft SQL Server 6.0 имеет новую масштабируемую архитектуру блокировок, называемую динамической блокировкой (Dynamic Locking), которая комбинирует блокировку на уровне страницы и записи для достижения максимальной производительности и подключения максимального числа пользователей.

Microsoft SQL Server может тиражировать информацию в базы данных иных форматов, включая Oracle, IBM DB2, Sybase, Microsoft Access и другие СУБД при наличии ODBC драйвера, отвечающего определенным требованиям (ODBC - Open DataBase Connectivity, стандарт Microsoft, разрешающий программам работать с различными серверами баз данных, используя один общий интерфейс).

Хранимые процедуры, поддерживающие OLE Automation, позволяют разработчику применять практически любой инструмент из тех, что поддерживают OLE, в целях создания хранимых процедур для SQL Server. Visual Basic 4.0 поддерживается посредством новой 32-разрядной DB-Library (OCX). Многочисленные расширения языка Transact-SQL включают расширенную поддержку курсоров, возможность использования команд определения данных внутри транзакций.

Microsoft SQL Server 6.0. содержит Ассистент администратора. Этот инструмент позволяет назначать основные процедуры сопровождения базы данных и определять для них график выполнения. Операции по сопровождению баз данных включают проверку распределения страниц, целостности указателей в таблицах (включая системные) и индексах, обновление информации, необходимой оптимизатору, реорганизацию страниц в таблицах и индексах, создание страховочных копий таблиц и журналов транзакций. Все эти операции могут быть установлены для автоматического выполнения по заданному администратором графику. Пакет Enterprise Manager включает утилиту позволяющую переносить некоторые или все объекты из одной базы данных в другую.

Сервер, который получает объекты, должен быть Microsoft SQL Server версии 6.0. Сервер источник может быть Microsoft SQL Server 4.x или сервер Sybase. SQL Server предоставляет возможность создания страховочных копий и восстановления индивидуальных таблиц. Загрузка таблица может быть выполнена либо из копии индивидуальной таблицы, либо из копии базы данных. Загрузка индивидуальных таблиц может оказаться хорошим решением при необходимости восстановления данных после сбоя, когда загрузка всей базы данных неэффективна. Тем не менее создание страховочных копий всей базы данных и журнала транзакций остаются основой стратегии резервного копирования.

Для эффективной работы с данными SQL Server имеет целый набор специальных инструментов.

Характеристика основного инструмента Microsoft SQL Server 6.0.

SQL Setup - используется для установки нового, модификации установленного программного обеспечения и удаления SQL Server с диска. Программа Setup также может быть использована для изменения опций сетевой поддержки, подключения языка, перестройка базы данных Master и установки опций доступа к данным.

SQL Service - используется для старта и остановки служб SQL Server Manager (SQL Server и SQL Executive).

SQL/w - позволяет вводить выражения и хранимые процедуры Transact-SQL в графическом интерфейсе запросов.

SQL Security - позволяет управлять бюджетами пользователей серверов Manager SQL.

SQL Client - устанавливает информацию соединения Server для утилиты конфигурирования клиентов.

SQL Transfer - обеспечивает легкий графический способ переноса Manager объектов и данных с одного Server на другой.

SQL Trace - графическая утилита, позволяющая администраторам и разработчикам отслеживать и фиксировать активность клиентских приложений, обращающихся к Microsoft SQL Server 6.0. SQL Trace может в реальном времени отображать все аспекты обращений к серверу или использовать фильтры, отображающие информацию о действиях конкретных пользователей, приложений или машин.

Microsoft SQL Server 6.0 отличается быстродействием, надежностью от Oracle, позволяет удовлетворить более широкие потребности клиентов по развертыванию крупномасштабных распределенных систем информации. SQL Server 6.0 обеспечивает мощные инструментальные средства для предприятий -широкой администрации, копирования данных, параллельного DBMS исполнения, и поиск в очень больших базах данных. Microsoft SQL Server 6.0 также обеспечивает плотную интеграцию OLE технологии.

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

ЗАКЛЮЧЕНИЕ

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

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

При этом возникают следующие ограничения:

- невозможность организации равноправного одновременного доступа пользователей к одному и тому же участку базы данных;

- количество одновременно работающих с системой пользователей не превышает пяти человек для ЛВС;

- невысокая скорость обработки и представления информации;

- высокие требования к ресурсам компьютеров.

При всем этом система обладает одним очень важным преимуществом - низкой стоимостью.

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

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

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

Из сравнения сред программирования Microsoft SQL Server и Oracle, я сделала вывод, что Microsoft SQL Server отличается быстродействием, надежностью от Oracle, позволяет удовлетворить более широкие потребности клиентов по развертыванию крупномасштабных распределенных систем информации. SQL Server 6.0 обеспечивает мощные инструментальные средства для предприятий - широкой администрации, копирования данных, параллельного DBMS исполнения, и поиск в очень больших базах данных. Microsoft SQL Server 6.0 также обеспечивает плотную интеграцию OLE технологии.

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

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

СПИСОК ЛИТЕРАТУРЫ

Тейлор А.Дж. SQL для «чайников» /А.Дж. Тейлор.- Москва: Вильяме, 2005.

Дейт К.Дж. Введение в системы баз данных /К.Дж. Дейт - Москва: ДМК, 2000.

Хомоненко А.Д. Базы данных /А.Д. Хомоненко, В.М. Цыганков - Санкт-Петербург: БХВ-Петербург, 2004.

Вескес Л.Дж. Access и SQL Server. Руководство разработчика /Дж.Л. Вескес - Москва: Лори, 1997.

Конноли Т. Базы данных. Проектирование, реализация и сопровождение /Т. Конноли, К. Бегг. - Москва: Вильяме, 2003.

Страницы: 1, 2, 3



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.