Оперативная обработка транзакций в SQL Server 2008

Введение

За последние 20 лет базы данных (БД) получили всеобщее признание, а сфера их применения феноменально расширилась. Снижение стоимости запоминающих устройств и сопутствующих технологий обусловило значительный рост объемов хранимых данных и распространение БД. Легко доступные технологии сделали возможным внедрение БД в различные продукты и более длительное хранение данных на предприятиях. Как следствие, предприятия стремятся консолидировать свои серверы.

В соответствии с современными требованиями к OLTP, в SQL Server 2008 уделяется основное внимание следующим аспектам:

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

Масштабирование и производительность

Современная тенденция к консолидации серверов и центров обработки данных, а также распространение удаленных и встроенных БД обуславливают важность таких параметров серверов БД, как масштабируемость и высокая производительность при обслуживании самых разных приложений. SQL Server 2008 позволяет построить мощную среду БД, способную масштабироваться в соответствии с вашими требованиями к обработке данных.

Эффективное хранение данных

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

SQL Server 2008 обеспечивает эффективное использование места на диске за счет поддержки таких типов данных, как XML, VARCHAR(MAX), VARBINARY(MAX) и VARDECIMAL. У типа данных VARDECIMAL удаляются нули в начале и конце десятичных значений, что уменьшает место на диске, необходимое для их хранения. Кроме того, поддержка разреженных полей в SQL Server 2008 исключает неэффективный расход места на диске и снижение производительности из-за резервирования места для полей, допускающих NULL-значения.

Эффективное использование памяти сервера

Рост размеров и расширение функциональности БД требует от СУБД максимально эффективного использования установленной на сервер памяти. SQL Server 2008 поддерживает динамическое выделение памяти с использованием технологии AWE. В этом случае максимальный размер доступной оперативной памяти при работе под управлением Windows Server 2003 Datacenter Edition составляет 64 ГБ, чего достаточно для эффективного масштабирования БД в соответствии с требованиями пользователей.

Сбалансированное распределение ресурсов

SQL Server поддерживает динамическое управление памятью по мере роста систем обработки данных и консолидации серверов, тем не менее, требуется обеспечивать сбалансированную производительность экземпляров SQL Server на различных задачах. Этой цели служит Resource Governor - новое средство в составе SQL Server 2008, позволяющее ограничивать использование ресурсов и назначать приоритет задачам, выполняемым экземпляром SQL Server. С помощью Resource Governor предприятия смогут осуществлять консолидацию серверов без ущерба для производительности.

Оптимизация параллельной обработки

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

Высокая доступность

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

Повышение доступности БД с помощью зеркалирования

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

При зеркалировании обеспечивается постоянная доступность БД путем ручной или автоматической передачи управления зеркальному серверу при отказе основного. Чтобы обеспечить доступ к БД, необходимо создать на зеркальном сервере ее моментальный снимок, который сделает возможным доступ только для чтения к зеркальной копии БД.

При отказе диска или отключения электропитания возможно повреждение страниц данных. SQL Server 2008 Enterprise Edition обеспечивает целостность данных: при повреждении страниц данных узел-партнер автоматически пытается восстановить данные. Это позволяет быстрее устранять последствия физического повреждения данных, зачастую без вмешательства администратора.

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

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

Кластеры с восстановлением после сбоев

Большинству предприятий требуются решения, обеспечивающие высокую доступность всего экземпляра SQL Server, а не только отдельных БД. Чтобы удовлетворить это требование, можно включать экземпляры SQL Server 2008 в кластеры Microsoft Cluster Service. Клиенты воспринимают кластер с восстановлением после сбоев как одиночный экземпляр SQL Server 2008, однако при отказе одного из серверов такого кластера осуществляется восстановление после сбоя и нагрузка распределяется по другим серверам кластера.

Некоторые ограничения прежних версий SQL Server не позволяли в полной мере воспользоваться преимуществами кластерных решений. В частности, кластерные решения должны были использовать одну букву диска для каждого экземпляра SQL Server, а все узлы кластера должны были относиться к одной и той же подсети. В кластерных серверах SQL Server 2008, созданных на базе Windows Server 2008 (кодовое имя - "Longhorn"), эти ограничения отсутствуют, делая возможной более гибкую конфигурацию кластеров.

Кроме того, для обслуживания критически важных приложений и очень больших сред допускается создавать кластеры SQL Server 2008 с числом узлов до 16 (при использовании поддержки кластеров Windows Server 2008).

Средства проверки кластеров позволяют предприятиям проверять пригодность своего оборудования и освобождают от необходимости выбирать целые решения по каталогу кластерных решений. Это средство обеспечивает предприятиям дополнительную гибкость при выборе оборудования для кластерных решений.

Повышение гибкости доступа к данным с помощью репликации

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

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

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

Средства Peer-to-Peer Topology Wizard и Topology Viewer упрощают администраторам БД создание и настройку топологии одноранговой транзакционной репликации. Topology Viewer служит для визуализации существующей топологии. Новые дизайнер и мастер (см. рис. 1) облегчают создание и изменение топологии репликации.

Рис. 1

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

Добавление процессоров и памяти без выключения серверов

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

Безопасность

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

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

Надежная и гибкая система безопасности

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

SQL Server 2008 поддерживает политики, определяющие сложность и сроки действия паролей, позволяющие надежнее защитить данные от атак подбором пароля; также поддерживается полное шифрование конфиденциальных данных, которыми клиентское приложение обменивается с сервером.

Полный аудит событий

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

Средство Auditing Data Collector консолидирует отчеты аудита при внедрении аудита на предприятии с целью анализа тенденций в масштабе предприятия.

Гибкое защищенное хранилище с прозрачным шифрованием данных

SQL Server 2005 поддерживал шифрование с различными типами ключей, но не поддерживал поиск и индексирование зашифрованных столбцов. Кроме того, приходилось изменять клиентские приложения, чтобы они смогли получать доступ к зашифрованным данным. SQL Server 2008 поддерживает прозрачное шифрование данных (transparent data encryption, TDE), которое реализуется на уровне БД и позволяет шифровать всю БД, файлы данных или файлы журналов, не внося изменения в клиентские приложения. Шифрование и дешифрование данных осуществляется во время чтения и записи на диск. Такая реализация шифрования позволяет создавать индексы и вести поиск, в том числе полнотекстовый, в зашифрованных данных, расширяя круг предприятий, способных воспользоваться преимуществами шифрования данных.

Простые консолидированные средства корпоративного шифрования и управления ключами

В SQL Server 2005 шифровальные ключи хранились вместе с данными, управление ими осуществлялось исключительно средствами SQL Server. В SQL Server 2008, помимо "родных" средств управления ключами, поддерживаются поставщики шифрования и программы управления ключами от сторонних производителей, а также аппаратные защитные модули (Hardware Security Modules, HSM). Это позволяет упростить и консолидировать средства шифрования и управления ключами, используемые приложениями и сервисами предприятия.

Управляемость

Расширение функциональности продуктов, тенденции к консолидации серверов и распространение удаленных БД повышают сложность управления данными.

Декларативное управление экземплярами SQL Server и БД с помощью политик

Из-за роста числа БД и пользователей администраторам требуются функции упреждающего управления, основанного на политиках. Declarative Management Framework из SQL Server 2008 позволяет создавать политики регламентирующие конфигурацию, и применять их к серверам, БД, таблицам и другим объектам на предприятии. Эти политики отслеживают либо запрещают внесение изменений в систему. Политики позволяют администраторам БД тратить меньше времени на рутинное обслуживание.

С помощью триггеров политики можно применять заблаговременно, после внесения изменений (с использованием Service Broker) либо по графику (средствами SQL Server Agent). Кроме того, SQL Server 2008 позволяет применять политики вручную, чтобы в реальном времени проверять соответствие объектов политике.

Консолидация администрирования серверов с помощью SQL Server Management Studio

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

Централизованный сбор и управление статистикой серверов и БД

Для разрешения проблем с производительностью необходимы точные и легко доступные сведения. В SQL Server 2008 их можно получить с помощью Performance Studio - набора средств устранения неполадок, настройки и мониторинга состояния отдельных экземпляров SQL Server и их групп. Эти средства позволят администраторам БД быстрее устранять неполадки и оптимизировать производительность.

Функции Performance Studio можно разделить на три категории:

  • сбор данных с минимальными издержками из множества источников, включая SQL Trace, System Monitor, Dynamic Management Views (DMV) и журналы;
  • централизованное хранилище для накопления служебных данных, позволяющее администраторам сравнивать статистические данные с эталонными для поиска тенденций и прогноза требований к производительности;
  • встроенные функции Reporting Services, отображающие в одном месте все сведения, важные для устранения неполадок, помогают в поиске первопричины проблем, позволяя перейти от высокоуровневой абстрактной информации к конкретным детальным сведениям.

Заключение

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


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=23086