Microsoft отводит SQL Server роль серьезного конкурента системам управления базами данных для Unix. Компания усовершенствовала свою первую базу данных, сделав ее проще в построении, развертывании, а также упростив управление распределенными приложениями в архитектуре клиент/сервер. В модернизированной версии улучшена поддержка распределенных транзакций и предусмотрено больше вспомогательных и инструментальных средств, позволяющих программам просмотра извлекать данные из Internet и корпоративных сетей. По словам представителей компании Microsoft, распараллеливание заданий в ядре базы данных и использование встроенных возможностей многопоточности Windows NT, а также опора на новую технологию Dynamic Locking дали рост производительности на 10 - 20%. Параллельная обработка заданий позволяет управлять несколькими заданиями одновременно. Dynamic Locking дает возможность SQL Server выбрать строку, страницу или таблицу, которые нужно закрыть, чтобы обеспечить наилучшую согласованность и скорость работы.
Мы проводили тестирование окончательной бета-версии, запуская SQL Server на серверах 750s компании IBM с ОС NT Advanced Server компании Microsoft. Бета-версия отличается от поставляемого на рынок продукта только отсутствием документации.
Distributed Transaction Coordinator (DTC) в SQL Server управляет отказоустойчивым распределением новых версий программ среди нескольких систем SQL Server. В сооветствиии с протоколом двухфазной фиксации в тот момент, когда SQL Server 6.5 инициирует транзакцию вставки/удаления/обновления, автоматически проверяется участие в ней всех соответствующих ресурсов. Если в сети происходит разрыв связи или сбой на сервере, DTC возвращает каждый сервер в состояние, в котором он находился до начала транзакции.
Поддержка мониторов обработки транзакций в DTC, таких, к примеру, как Encina компании Transare и Tuxedo от Novell, позволяет тиражировать информацию SQL Server в DB2 компании IBM, Access компании Microsoft, SQL Server компании Sybase и в базы данных компании Oracle, а также в другие базы данных, поддерживающие стандарт Open Database Connectivity.
Мы изучили новые возможности SQL Enterprise Manage, инструментального средства, упрощающего контроль и управление всеми сетевыми серверами. Помимо решения других задач он дает возможность пользователям проводить инвентаризацию программного обеспечения, распределение программ и обнаружение ошибок.
Другое инструментальное средство, DBA Assistant, позволяет автоматизировать процедуры технического обслуживания. Созданный для устранения элементов случайности в обслуживании системы, DBA задает серию вопросов, а затем устанавливает параметры ежедневного и еженедельного обслуживания. Однако действия, разрешенные в рамках технического обслуживания, ограничиваются несколькими задачами общего характера.
В следующую версию, которая, по словам представителей Microsoft, должна быть подготовлена к середине 1997 года, планируется включить средства построения графических диаграмм взаимосвязей между элементами базы данных и поддержку модифицированных и удаленных элементов.
В отличие от своих более "подвижных" конкурентов SQL Server работает только под Windows NT. Это не только привязывает пользователей SQL Server к операционной системе Microsoft. Как известно, NT поддерживает масштабирование только до четырех процессоров, хотя 4.0, при определенной архитектуре, позволяет увеличить их число до восьми. Это существенный недостаток по сравнению с Unix, которая масштабируется до десятков или даже сотен процессоров.
С другой стороны, более тесная интеграция SQL Server с NT позволяет ей легко предоставлять такие возможности NT, как безопасность, параллельную многопоточность, контроль производительности и асинхронный ввод/вывод.
"Складирование" и извлечение данных
В версии 6.5, вдобавок к процедурному языку для интеграции программного обеспечения Transact SQL, реализованы самые современные возможности хранения данных и принятия решений. Новые расширенные операторы "Rollup" и "Cube" позволяют программистам создавать процедуры, собирающие многомерные массивы данных из строк, которые содержат итоговые данные. Transact SQL также позволяет процедуре, хранящейся на одном сервере, запускать распределенную транзакцию, активизирующую процедуры, хранящиеся на удаленных серверах.
Новые возможности канала данных позволяют собирать данные из SQL Server и баз данных других производителей для объединения в хранилище данных на SQL Server.
В новой версии исправлен один из недостатков предыдущих моделей - в ключе Insert row-level locking (закрытие строк базы данных для операции Insert). Row-level locking разрешает соперничество нескольких пользователей, пытающихся получить доступ к одним и тем же данным, что необходимо для баз данных масштаба предприятия. Сейчас в SQL Server это поддерживается только для вставки, но не для модификации или удаления. Однако ситуации соперничества чаще всего возникают именно при добавлении элементов.
Согласно сведениям из Microsoft, поддержка удаления и модификации записей будет добавлена в реализации SQL Server, запланированной на середину 1997 года. В ней также будет представлена и другая функция, ориентированная на задачи масштаба предприятия, - средства построения графических диаграмм связей между элементами базы данных.
В версии 6.5 помимо резервного копирования и восстановления всей базы данных имеется новая функция - возможность осуществлять эти операции над одной таблицей. Представители Microsoft должны позаботиться о дальнейших шагах в этом направлении и обеспечить возможность сохранения/восстановления нескольких (но необязательно всех) таблиц.
Связи с Web
Нас весьма порадовал встроенный SQL Internet Connector и его Web Assistant. Эта интерактивная макрокоманда, аналогичная Wizard, помогает автоматически создавать документ на языке Hypertext Markup Language на базе любой таблицы или запроса. Используя соответствующие формы, можно изменять базу данных и обращаться к ней с запросами. Web Assistant вместо многочисленных модификаций страниц World Wide Web автоматически изменяет их по определенному заранее графику или делает это при изменении исходных данных.
Включив в эту реализацию тиражирование, доступ к Web и процедуры поддержки отказоустойчивости, Microsoft преодолела еще одну ступеньку на пути к своей цели - утвердить SQL Server в качестве системы управления базой данных масштаба предприятия.
Говард Милман - консультант по сетевым вопросам в компании Data Systems Services Group. С ним можно связаться по адресу: hmillman@mcimail.com