Открыть сервисСервис

Microsoft SQL Server 2012

Microsoft SQL Server 2012 — это реляционная система управления базами данных (СУБД), разработанная корпорацией Microsoft, выпущенная 20 марта 2012 года как десятая основная версия продукта. Она относится к семейству Microsoft SQL Server и предназначена для хранения, обработки и анализа структурированных данных в корпоративных средах. Система поддерживает язык запросов Transact-SQL (T-SQL) и предоставляет инструменты для бизнес-аналитики, отчетности и управления данными. Основные нововведения версии включали улучшенную поддержку облачных вычислений, встроенные средства визуализации данных и расширенные функции безопасности.

История

Разработка и выпуск

Разработка SQL Server 2012 (кодовое имя «Denali») началась в 2009 году после выхода SQL Server 2008 R2. Основной целью было создание платформы, способной работать как в локальных (on-premises), так и в облачных средах (Windows Azure). Первая публичная бета-версия была выпущена 9 ноября 2010 года, а окончательная версия (RTM) — 6 марта 2012 года. Официальный запуск продукта состоялся 20 марта 2012 года. Поддержка основной версии завершилась 11 июля 2017 года, а расширенная поддержка — 12 июля 2022 года.

Место в линейке

SQL Server 2012 стал преемником SQL Server 2008 R2 и предшественником SQL Server 2014. Он был последней версией, поддерживавшей 32-разрядные системы (x86), и первой, ориентированной на интеграцию с облачной платформой Microsoft Azure.

Редакции

Microsoft SQL Server 2012 выпускался в нескольких редакциях, различающихся функциональными возможностями и лицензированием:

РедакцияНазначениеОсновные ограничения
EnterpriseКрупные организации, критически важные системыПолная функциональность, максимальное число ядер (до 64)
StandardСредний бизнес, отделыОграничения по числу ядер (до 4), отсутствие некоторых функций (например, AlwaysOn в полном объеме)
WebХостинг-провайдеры, веб-приложенияОграниченная поддержка бизнес-аналитики
ExpressБесплатная версия для обучения и малых приложенийМаксимальный размер базы данных — 10 ГБ, одно ядро процессора
DeveloperРазработка и тестированиеПолная функциональность Enterprise, но запрещено использование в производственных средах
Business IntelligenceАналитика и отчетностьВключала Power View и PowerPivot, но без функций AlwaysOn

Основные возможности и нововведения

AlwaysOn (технология высокой доступности)

Одним из ключевых нововведений SQL Server 2012 стала технология AlwaysOn, объединившая функции зеркального отображения баз данных (database mirroring) и кластеризации. Она включала два компонента:

Columnstore Indexes

В SQL Server 2012 были введены columnstore-индексы — новый тип индексов, оптимизированный для аналитических запросов (OLAP). Данные хранились по столбцам, а не по строкам, что ускоряло выполнение агрегатных функций (SUM, COUNT, AVG) в 10–100 раз по сравнению с традиционными B-деревьями. Однако в версии 2012 columnstore-индексы были только для чтения (нельзя было обновлять данные в таблицах с таким индексом).

Power View и PowerPivot

SQL Server 2012 включал встроенные средства бизнес-аналитики:

  • Power View — интерактивный инструмент визуализации данных на основе Silverlight, позволявший создавать диаграммы, карты и фильтры без написания кода.
  • PowerPivot for SharePoint — надстройка для анализа больших объемов данных в памяти, работавшая в среде SharePoint.

Улучшения в T-SQL

В язык Transact-SQL были добавлены новые функции:

  • SEQUENCEобъект для генерации последовательностей чисел, независимый от таблиц (аналог SEQUENCE в Oracle).
  • THROW — упрощенный оператор для генерации исключений (заменил RAISERROR).
  • OFFSET-FETCHподдержка постраничной выборки данных (аналог LIMIT в PostgreSQL).
  • IIF и CHOOSE — логические функции для условных выражений.

Управление и администрирование

  • SQL Server Data Tools (SSDT)интегрированная среда разработки для создания баз данных, схем и отчетов, заменившая Visual Studio Database Projects.
  • Distributed Replay — утилита для воспроизведения нагрузочных тестов на нескольких серверах.
  • User-Defined Server Roles — возможность создавать собственные серверные роли для тонкой настройки прав доступа.

Архитектура и компоненты

Ядро базы данных (Database Engine)

Основной компонент, отвечающий за хранение, обработку и защиту данных. В SQL Server 2012 использовалась архитектура на основе страниц (8 КБ), с поддержкой сжатия данных (ROW и PAGE) и шифрования (Transparent Data Encryption, TDE).

Службы Integration Services (SSIS)

Платформа для извлечения, преобразования и загрузки данных (ETL). В версии 2012 была улучшена поддержка параллельной обработки и добавлен мастер для создания проектов в SSDT.

Службы Analysis Services (SSAS)

Инструмент для многомерного (OLAP) и табличного (Tabular) анализа данных. В SQL Server 2012 появилась табличная модель (в дополнение к многомерной), работающая в памяти (in-memory) и использующая xVelocity-движок.

Службы Reporting Services (SSRS)

Система для создания, развертывания и управления отчетами. В версии 2012 были добавлены:

  • Новый дизайнер отчетов в SSDT.
  • Поддержка HTML5 для просмотра отчетов в браузере.
  • Параметризованные отчеты с каскадными фильтрами.

Системные требования

Аппаратные требования

  • Процессор: 64-разрядный (x64) с тактовой частотой не менее 1,4 ГГц (рекомендуется 2,0 ГГц и выше). Для 32-разрядных систем (только Express) — 1,0 ГГц.
  • Оперативная память: минимум 1 ГБ (рекомендуется 4 ГБ для Enterprise).
  • Дисковое пространство: от 6 до 10 ГБ (в зависимости от компонентов).

Программные требования

  • Операционная система: Windows Server 2008 R2 SP1, Windows Server 2012, Windows 7 SP1 (для Developer), Windows 8 (для Developer).
  • .NET Framework: версия 3.5 SP1 или 4.0.
  • Windows PowerShell: версия 2.0.

Применение

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

SQL Server 2012 широко использовался в крупных организациях для ведения транзакционных баз данных (OLTP), систем управления ресурсами (ERP) и взаимоотношениями с клиентами (CRM). Технология AlwaysOn обеспечивала высокую доступность для критически важных приложений.

Бизнес-аналитика

Благодаря Power View, PowerPivot и SSAS, версия 2012 применялась для построения аналитических панелей (dashboards) и отчетов в среднем и крупном бизнесе. Columnstore-индексы ускоряли выполнение запросов к хранилищам данных (data warehouses).

Облачные решения

SQL Server 2012 стал первой версией, интегрированной с Microsoft Azure. Пользователи могли развертывать базы данных в облаке через SQL Database (теперь Azure SQL Database) и использовать гибридные сценарии (например, резервное копирование в Azure Blob Storage).

Критика и ограничения

  • Columnstore-индексы только для чтения: невозможность обновления данных в таблицах с columnstore-индексами ограничивала их применение в OLTP-системах (исправлено в SQL Server 2014).
  • Зависимость от Silverlight: Power View требовал установки плагина Silverlight, который был объявлен устаревшим в 2015 году.
  • Высокие требования к лицензированию: редакция Enterprise стоила значительно дороже конкурентов (например, Oracle Database Standard Edition), что вызывало критику со стороны малого бизнеса.
  • Ограниченная поддержка NoSQL: в отличие от PostgreSQL, SQL Server 2012 не имел встроенной поддержки JSON или документо-ориентированных моделей.

Интересные факты

  • Кодовое имя «Denali» было выбрано в честь горы Мак-Кинли (ныне Денали) на Аляске, самой высокой вершины Северной Америки.
  • SQL Server 2012 стал последней версией, поддерживающей 32-разрядные процессоры (x86) — начиная с SQL Server 2014, все редакции стали только 64-разрядными.
  • В 2012 году Microsoft выпустила специальную редакцию SQL Server 2012 Parallel Data Warehouse (PDW), предназначенную для массово-параллельной обработки (MPP) в хранилищах данных.

Источники

  • Microsoft SQL Server 2012 Books Online (документация Microsoft)
  • «SQL Server 2012: A Beginner's Guide» — Dusan Petkovic, 2013
  • «Professional Microsoft SQL Server 2012 Administration» — Adam Jorgensen, 2012
  • Технические статьи на MSDN (Microsoft Developer Network) за 2010–2012 годы
  • Официальный блог команды SQL Server (blogs.msdn.microsoft.com/sqlserver)