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.
Следующая курсовая работа будет направлена на разработку информационной системы, обеспечивающей электронный документооборот села Бобровки.
СПИСОК ЛИТЕРАТУРЫ
1. Тейлор А.Дж. SQL для «чайников» /А.Дж. Тейлор.- Москва: Вильяме, 2005.
2. Дейт К.Дж. Введение в системы баз данных /К.Дж. Дейт - Москва: ДМК, 2000.
3. Хомоненко А.Д. Базы данных /А.Д. Хомоненко, В.М. Цыганков - Санкт-Петербург: БХВ-Петербург, 2004.
4. Вескес Л.Дж. Access и SQL Server. Руководство разработчика /Дж.Л. Вескес - Москва: Лори, 1997.
5. Конноли Т. Базы данных. Проектирование, реализация и сопровождение /Т. Конноли, К. Бегг. - Москва: Вильяме, 2003.
... связанных с обращением к серверу Использование SQL Monitor является простейшим (хотя и не единственным) средством тестирования производительности информационных систем в архитектуре клиент/сервер, и эффективность применения большинства рассматриваемых ниже приемов их оптимизации можно проконтролировать с его помощью. Минимизация обращений к серверу и сети Минимизация связей с сервером влияет на ...
... в поставке Microsoft IIS 4.0 уже есть встроенный обработчик ASP. Разработка проекта: 4.1 Перенос базы данных на Microsoft SQL Server. Перенос базы данных компании «ТКС 008» осуществлялся с локального сервера в телефонной службе на WEB-сервер компании. Механизм передачи информации выглядит следующим образом: с сервера телефонной службы, с помощью специально написанной программы, информации из ...
... правил, предотвращающих создание операторов SQL, которые выглядят как абсолютно правильные, но не имеют смысла. Несмотря на не совсем точное название, SQL на сегодняшний день является единственным стандартным языком для работы с реляционными базами данных. SQL — это достаточно мощный и в то же время относительно легкий для изучения язык. Роль SQL Сам по себе SQL не является ни системой ...
... сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server. Постановка задачи Разработать прикладное программное обеспечение деятельности регистратуры ведомственной поликлиники. Работники регистратуры организуют запись пациентов на прием к врачам поликлиники. Так как поликлиника ведомственная, медицинское ...
0 комментариев