Книги и статьи по SQL Rambler's Top100 Switch language to: English 20 апреля 2024 г. 2:37:28


www.sql-ex.ru
Skip Navigation Links  

 

Print  Версия для печати

На главную страницу

Десять вещей, которые вы должны знать о новшествах в SQL Server 2005

Scott Robinson (оригинал: 10 things you should know about SQL Server 2005 features)
Перевод Моисеенко С.И.

Много неправды сказано о новом SQL Server 2005. Ниже список того, что является наиболее важным в ожидаемом релизе и на основании чего Вы можете планировать использование SQL Server в ближайшем будущем.

Фанфары, звучавшие на 2005 TechEd в прошлом июне, были так характерны для Microsoft: много счастливого шума об удивительных продуктах с издевательскими датами поставки, заставляющего многих из нас подавлять зевоту. Но пора вернуть кредит и отдать должное; мы ждали долгое время появления SQL Server, и возможностей, которые Microsoft предоставляет с его модернизированной технологией баз данных, - то, что мы просили, и то, что получили. Здесь - характерные особенности, которые мы находим самыми полезными.

1. Теперь есть тип данных XML

Если и есть какая-либо поразительная особенность SQL Server 2005, то это новый естественный (native) тип данных XML. Почему? Оставляя в стороне гигантский скачок в сторону стоящей на повестке дня дружественности к Web, новый тип данных предлагает нам такие возможности дизайна, которые не являются типичными для Майкрософт, которая обычно предпочитает сделать наш дизайн вместо нас.

Новый тип данных XML:

- Может использоваться для определения столбца таблицы
- Может использоваться в хранимых процедурах в качестве параметра или переменной
- Может хранить нетипизированные данные
- может выполнять проверку на предмет соответствия схеме, чтобы убедиться в том, что данные, хранящиеся в столбце с типом XML, соответствуют ассоциированной схеме (если нет никакой схемы, данные считаются нетипизированными).

Отображение между XML данными и реляционными данными является двунаправленным.

2. Распределенные объекты управления (Distributed Management Objects - DMO) станут объектами управления SQL Server (SMO)

SQL Server Management Objects (SMO) представляет собой структуру управления на базе .NET Framework, которая позволяет вам создавать приложения для управления сервером. SMO (как и DMO прежде) позволяет вам манипулировать столбцами, таблицами, базами данных и серверами программным образом как объектами. Кроме того, SMO поддерживает новые возможности SQL Server 2005, например, Service Broker.

Объекты SMO оптимизированы и не являются полностью конкретизированными (включая все затребованные свойства) до тех пор, пока на объект нет явной ссылки. Вы можете также выполнять пакеты команд SQL и создавать сценарии для создания объектов.

Ваши пользовательские приложения управления сервером могут также использоваться для управления в системах SQL Server 7 и SQL Server 2000.

3. Общие табличные выражения (Common Table Expresssions - CTEs) - рекурсивные запросы

Общее табличное выражение (CTE) позволяет сделать запрос рекурсивным. CTE может ссылаться само на себя, с верхним пределом вложенности. Вы можете использовать CTE как часть предложения WITH в командах SELECT, UPDATE, INSERT или DELETE.

4. Брокер службы (Service Broker) делает асинхронным трафик SQL Server

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

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

5. Создание триггеров .NET

SQL Server 2005 пугающе интегрирован в среду .NET (это беспокоило нас в течение некоторого времени тем, что эта привязка к .NET будет обязательной), однако, это имеет и одно полезное последствие - способность создавать определяемые пользователем триггеры (UDTs) с помощью Visual Studio 2005.

Опция Trigger может быть вытащена из списка шаблонов в Visual Studio, генерируя файл для кода триггера. Механизмом, связывающий этот код с SQL, является SqlPipe. Он разворачивается в вашем Build | Deploy. Вы можете делать это и иначе (то есть, из CLR), ссылаясь на объект Trigger в команде T-SQL CREATE TRIGGER.

6. Конфигурация SQL Server 2005 является динамической

Если Вы запускаете SQL Server 2005 на Windows Server 2003, его конфигурация является полностью динамической. Вы можете изменить значения конфигурационных параметров на лету, не перезапуская сервер и получая немедленный результат (то же самое справедливо для Address Windowing Extensions).

7. Определяйте ваши собственные типы данных

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

8. Много активных результирующих наборов, одно подключение

Еще одна особенность, но не из тех, чтобы ее просто отметить, а чтобы пробудить интерес. MARS (Multiple Active Result Sets) дает вам возможность выполнить многочисленные запросы, возвращающие многочисленные результаты в пределах единственного подключения. Приложение может перемещаться между открытыми результирующими наборами как это ему необходимо. Преимущества производительности и масшабируемости очевидны.

Эта новая уловка - любезность нового ADO.NET в тандеме с возможностью SQL Server 2005 согласовывать многочисленные активные команды. Так как MARS является частью SQL Server 2005 и частью ADO.NET 2.0, эта возможность становится доступной, если Вы используете их оба.

9. WAITFOR... RECEIVE

В предыдущих версиях SQL оператор WAITFOR был статическим. Мы передавали в этот оператор некоторое значение времени ожидания, именно это он и мог сделать. Теперь WAITFOR является динамическим; скажите ему ждать результатов оператора RECEIVE, когда бы это ни потребовалось.

Помимо обычного "это круто!", мы можем оценить эту возможность из-за способа, в котором участвует Service Broker (см. #2). Так как Service Broker делает возможным асинхронное выполнение запросов к базе данных посредством организации очереди (и поэтому чрезвычайно динамичным), и конкретный запрос к базе данных может находиться в очереди в течение неопределенного периода, новый динамический WAITFOR является идеальным откликом на результаты RECEIVE, которые появятся на усмотрение Service Broker.

10. DTS - теперь это Integration Services

Это новая архитектура, лежащая в основе преобразования данных. Очень популярная и широко используемая система передачи данных - DTS теперь называется Integration Services, и состоит из a Data Transformation Pipeline (DTP) и Data Transformation Runtime (DTR).

Конвейер (Pipeline) подключает источник данных к адресату данных посредством адаптеров данных с выполнением преобразования между ними. Это - обычная структура, но реализованная таким образом, который допускает выполнение значительно более сложных вещей: например, Вы можете делать отображения "один ко многим", и создавать столбцы, значения которых получаются в результате преобразования.

Data Transformation Runtime предоставляет Вам компоненты для организации процессов загрузки и преобразования данных в ориентированных на продукцию операциях, в пределах которых Вы можете управлять подключениями и манипулировать переменными. Это, в основном, объектная структура времени выполнения, которая может быть привязана к управляемым приложениям .NET.

Компоненты DTP и DTR используются для создания пакетов Integration Services, подобных, в принципе, хорошо знакомым пакетам DTS, но со значительно большими возможностями конфигурирования и управления, особенно при последовательно выполняемых операциях.

08/08/2005

На главную страницу

fault.aspx" style="font-size:8pt;">На главную страницу

Print  Версия для печати


Использование любых материалов данного сайта возможно только
при условии обязательного размещения прямой ссылки на сайт
http://www.sqlbooks.ru
на каждой странице, где размещены используемые материалы.

 Начало   Статьи    Книги 
Рейтинг@Mail.ru Rambler's Top100 Alt Упражнения по SQL: обучение, тестирование, сертификация по языку SQL Copyright c 2002-2006. All rights reserved.