Смекни!
smekni.com

Создание клиентских частей SQL БД под ОС Windows'95 и WindowsNT (стр. 11 из 27)

Для обеспечения постепенной миграции приложений и данных в новую объектно-реляционную среду введены объектные представления (object views), которые позволяют использовать в новых приложениях объектный интерфейс, работая при этом с обычными реляционными таблицами (т. о. сохраняя работоспособность старых приложений).

Новые возможности в администрировании Oracle 8 - управляемые сервером сбросы и восстановления (собственно говоря, это расширенная интеграция применявшейся в Oracle 7 утилиты Enterprise Backup), централизованное хранение паролей (в Oracle 7 достигалось при использовании Advanced Networking Option или при идентификации пользователей через ОС, имеющую соответствующую функциональность), контроль за назначением и устареванием паролей (в Oracle7 - при идентификации пользователей через ОС). Новые режимы взаимодействия с сервером - поддержка очередей приоритетных сообщений, задающих описание транзакции или ее части (эта функциональность, кстати, может быть использована мониторами транзакций), возможность мультиплексирования сессий как на физических, так и на логических каналах связи. Фактическое снятие ограничений на количество BLOB-колонок в таблицах, возможность их тиражирования. Возможность разбиения BLOB-полей и их отдельного хранения (даже вне БД). Расширение функциональных возможностей тиражирования данных, введение программного интерфейса тиражирования, позволяющего реализовать поддержку репликации с самыми разнообразными системами хранения данных. Поддержка таблиц, целиком хранимых в индексах. Это далеко не полный список. Большая часть новшеств возникла не на пустом месте, а скорее представляет собой развитие тех черт, которые уже содержались в том или ином виде в Oracle7. Это не случайность: Oracle гарантирует совместимость версий сервера снизу вверх, при переходе к Oracle8 пользователям даже не потребуется перестраивать свои БД.

1.1.4 MS SQL Server

Компания Microsoft широко известна рынке ПО. В 1988 г. фирма Microsoft совместно со своими партнерами Acton-Tate и Sybase представили свою первую версию SQL Server, построенную под операционную систему OS/2. В дальнейшем, фирма Microsoft перенесла SQL Server под Windows NT. Эти изменения потребовали коренных перестроек в ядре SQL Server, но, тем самым, обеспечили продукту SQL Server мощность мультипроцессорной RDBMS в среде Windows NT. В 1992 г. фирма Microsoft начала процесс отделения от Sybase и стала сосредотачивать больше внимания на собственной версии SQL Server. В конце концов, Microsoft и Sybase закончили совместную работу, и к Microsoft перешел полный контроль над разработкой SQL Server. Далее в SQL Server были добавлены следующие возможности: поддержка RISC-платформы, MAPI-интерфейс для разработки приложений, выполняющих запросы в базу данных, инструменты переноса данных, интеграция с объектами OLE и системой программирования Visual Basic и многое другое.

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

Симметричная мультипроцессорная архитектура Microsoft SQL Server 6.5 предусматривает использование "родных" сервисов операционной системы Windows NT для управления потоками, памятью, операциями дискового чтения/записи, сетевыми службами, функциями безопасности, а также для поддержки параллельного выполнения потоков на нескольких CPU. Использование потоков Windows NT позволяет MS SQL Server автоматически масштабироваться при работе на многопроцессорных платформах, что исключает необходимость дополнительной конфигурации или программной настройки. Например, на Comdex была продемонстрирована работа MS SQL Server на платформе AlphaServer 8400 производства Digital, оснащенным 12 процессорами, 28 Гбайт памяти и 39-ти терабайтным хранилищем. В отличие от большинства распространенных СУБД, вынужденных иметь в своем составе механизмы дублирования ядра операционной системы для обеспечения кросс-платформенной переносимости, MS SQL Server обладает достаточно легковесной прозрачной архитектурой, не перетяжеленной несвойственными ей функциями. В результате, например, при смене типа процессора не требуется заново приобретать MS SQL Server для новой аппаратной платформы. Он ставится, по определению, на все, на чем работает Windows NT (на сегодня это Intel, Alpha, MIPS и PowerPC). По мере того как Windows NT завоевывает все большее признание и все ведущие производители СУБД уже выпустили версии своих продуктов под этой операционной системой или уже заявили о своей готовности это сделать в ближайшее время, изначальная ориентированность MS SQL Server 6.5 на тесную интеграцию с Windows NT выступает в качестве одного из серьезных преимуществ.

На каждое пользовательское соединение в MS SQL Server назначается отдельный рабочий поток (порядка 55К) в рамках единого серверного процесса. Так как каждый из этих потоков в действительности является потоком Win32, на них распространяются соответствующие функции контроля операционной системы, включая защиту памяти, правила доступа к оборудованию и планирование выполнения потоков во времени (thread scheduling). Это предоставляет улучшенные способности к масштабированию при росте числа одновременно работающих пользователей, динамическую балансировку при загрузке процессоров и повышенную надежность, так как пользовательские запросы, исполняющиеся на разных потоках, защищены друг от друга. Несмотря на то что пул соединений ограничен 1024 потоками, динамическое управление пользовательскими соединениями и свободными потоками позволяет увеличить эту величину до 32 767. Кроме этого, другие пулы потоков могут использоваться для параллельного выполнения операций сканирования данных, удаления и обновления, резервного копирования, проверки целостности базы, индексирования, асинхронного опережающего чтения данных в кэш на основе алгоритмов предсказания, создания и управления курсорами и т. д.

Сетевые службы Windows NT обеспечивают MS SQL Server поддержку протоколов TCP/IP, NWLink IPX/SPX, Named Pipes (NetBEUI), Banyan Vines, AppleTalk (ADSP) и DECNet. В версии 6.5 к ним добавилась дополнительная сетевая библиотека – multi-protocol network library, которая "умеет слушать" порты TCP/IP, сокеты SPX или поименованные каналы (named pipes), которые обычно выбираются динамически. Несомненным достоинством multi-protocol является наличие сетевого сервиса, обеспечивающего взаимодействие между процессами при помощи вызовов удаленных процедур, что позволяет, например, использовать шифрование при передаче данных.

Многопоточное ядро и интеграция со службами планирования потоков Windows NT обеспечивает высокую производительность MS SQL Server при обработке OLTP- и DSS-запросов, что особенно заметно при одновременной работе нескольких сотен пользователей. В опубликованных результатах по тестированию MS SQL Server 6.5 на максимальное число одновременно работающих пользователей приводится цифра 3500, хотя известны реально работающие приложения, где нагрузка доходила до 5000 одновременных пользовательских соединений. За период с октября 1996 г. по декабрь 1997 г. производительность MS SQL Server , измеренная по тестам TPC-C, выросла более чем в 3 раза. Для сравнения заметим, что ежедневный объем транзакций в расчетной системе VISA составляет от 10 до 40 млн. Темп 7,5 тыс. транзакций в минуту означает, что один MS SQL Server способен при режиме работы 24х7 обслужить немногим менее 11 млн. транзакций в сутки. Существует еще один параметр, тесно связанный с производительностью, который, не являясь в строгом смысле слова техническим, очень популярен на Западе при оценке возможностей того или иного сервера баз данных, так как от него существенно зависит стоимость владения продуктом. Речь идет об удельной цене за транзакцию в минуту, иными словами, сколько придется заплатить за достижение такой скорости обработки запроса. За тот же самый период, в течение которого рассматривался рост производительности, показатель "цена/производительность" стал менее 65 долл. за транзакцию в минуту, что говорит о разумной стоимости систем на базе MS SQL Server при высоких требованиях к скорости обработки.

Распределенная среда управления. В состав MS SQL Server 6.5 входит свыше 20 графических средств управления и утилит командной строки. Кроме этого, MS SQL Server 6.5 включает Web-assistant - программу мастер для подготовки публикации на Web-страницах данных из базы, SQL Mail - утилиту, обеспечивающую интеграцию с электронной почтой MS Mail или MS Exchange, MS Distributed Transaction Coordinator (MS DTC) для проведения распределенных транзакций и некоторые другие средства. SQL Server, MS DTC и SQL Executive функционируют как сервисы операционной системы. Согласованная работа этих компонентов достигается благодаря трехуровневой архитектуре SQL -DMF (Distributed Management Frame-work).


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

SQL Enterprise Manager интегрирует в себе все функции управления, включая создание баз данных и объектов внутри них, назначение прав доступа, резервное копирование, тиражирование и т.д. При желании имеется возможность автоматизировать процесс составления плана поддержки базы при помощи специальной программы-помощника (Database Main-tenance Wizard). Различные подходы к системному администрированию зачастую могут содержать ряд малоприятных моментов, например необходимость выполнять резервное копирование базы, командировать сотрудников в какой-нибудь удаленный филиал, где отсутствует должным образом подготовленный IT-персонал. MS SQL Server 6.5 позволяет решить эти проблемы, во-первых, за счет централизованного управления удаленными серверами, во-вторых, за счет наличия мощного средства диспетчеризации задач во времени, предоставляемого SQL Executive. Для каждой административной функции может быть назначен временной график ее выполнения. Практически все СУБД содержат развитые средства по ликвидации тех или иных неблагоприятных последствий. Microsoft SQL Server, помимо этого, предоставляет обширный инструментарий диагностики, позволяющий своевременно предотвратить причины сбоев. Утилиты SQL Performance Monitor и Alert Manager могут использоваться для программирования реакции сервера на различные классы событий, возникающих в системе, в том числе и на бизнес-события, MS SQL Server может послать вам (или указанным вами лицам) по электронной почте или на пейджер соответствующее предупреждение и/или выполнить предусмотренный вами скрипт, cmd- или exe-файл для устранения ошибки, а также зафиксировать появление этого события в системном журнале. В целом можно сказать, что распределенная среда управления позволяет существенно упростить жизнь администратора базы данных.