Microsoft SQL Server Parallel Data Warehouse

Microsoft SQL Server Parallel Data Warehouse (PDW) – программно-аппаратный комплекс для хранения критически важных данных и их параллельной обработки (Massive Parallel Processing, MPP), поставляемый на базе оборудования HP и Dell; является одним из решений Microsoft для обработки «больших данных».

Аппаратная архитектура PDW

Архитектуру комплекса проще объяснить на примере первой версии PDW (SQL Server 2008 R2 PDW), которая поставлялась в виде одной управляющей стойки и нескольких стоек для хранения данных

PDW1

Управляющая стойка состоит из следующих компонентов:

  • контрольный узел – обрабатывает запросы приложений, формирует план выполнения запроса, генерирует TSQL-запросы к расчетным узлам и агрегирует результаты, полученные от расчетных узлов;
  • управляющий узел – содержит сервисные приложения, образ диска для восстановления расчетных узлов, содержит Active Directory;
  • область загрузки – предоставляет систему хранения для загрузки данных ETL-процессами; содержит SQL Server Integration Services (SSIS), имеет возможность удаленного управления и позволяет запускать приложения и скрипты, необходимые для работы в пределах внутренней сети;
  • узел резервирования – позволяет формировать резервные копии данных;

Стойка с данными состоит определенного количества парных узлов – активного расчетного узла и узла хранения. В стойке также содержится пассивный расчетный узел на случай аппаратного сбоя одного из активных расчетных узлов.

Каждый узел стойки с данными представляет собой типичный SMP-узел, имеющий в своем составе:

  • расчетный узел — сервер с установленным SQL Server EE и базой TempDB;
  • узел хранения — систему хранения с базой хранилища данных, промежуточной областью хранилища данных и журналами.

Во вторую версии SQL Server PDW (SQL Server 2012 PDW) внесены значительные оптимизационные изменения аппаратного обеспечения.

PDW2

В частности, в качестве узлов хранения вместо SAN используются более дешевые и плотно упакованные JBOD с прямым подключением SAS-дисков, а поддержка надежности и функциональности осуществляется за счет средств Windows Server 2012. Область выгрузки и узел резервирования выведены из PDW, что дает возможность использования произвольного аппаратного обеспечения, настройки функций высокой доступности и т.д. Контольный и управляющий узел представлены в виде виртуальных машин и упакованы в один физический сервер.

Распределение данных по расчетным узлам

Каждая таблица базы данных в пределах PDW является:

  • либо реплицированной (replicated) — т.е. копируется на каждый расчетный узел (таблицы измерений должны быть реплицированными);
  • либо распределенной (distributed) – т.е. разбивается с помощью Hash-функции и распределяется по узлам хранения (это актуально для больших таблиц фактов).

Таким образом, контрольный узел распределяет запрос пользователя по расчетным узлам, и каждый расчетный узел выдает результат для определенной части таблицы фактов.

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

Архитектура PDW

С точки зрения архитектуры PDW, драйверы доступа к данным располагаются на контрольном узле, соответственно, приложения передают запросы на контрольный узел. Движок параллельной обработки (MPP Engine Coordinator) разбирает запрос за множество запросов к расчетным узлам и передает их на расчетные узлы через сервис перемещения данных (Data Movement Coordinator). На каждом расчетном узле за обработку запроса отвечает соответствующий экземпляр SQL Server EE. Сервис перемещения данных также отвечает за перемещение данных между узлом загрузки, расчетными узлами, узлом резервирования и контрольным узлом. На управляющем узле работает Административная консоль.

Демонстрация

В следующей демонстрации показано, как запросы к SQL Server 2008 R2 PDW, запускаемые в зоне выгрузки с помощью приложения Nexus Query Chameleon, распределяются по расчетным узлам, что видно из Административной консоли PDW.

PolyBase

Начиная с версии SQL Server 2012 PDW программный комплекс дополнили технологией PolyBase, которая позволяет делать запросы к данным в Hadoop и объединять их с реляционными данными с использованием стандартных SQL-инструкций. При необходимости результаты запроса можно сохранить как реляционные данные в PDW или направить обратно в Hadoop.

polybase4

Дополнительные материалы

  1. A Breakthrough Platform for Next-Generation Data Warehousing and Big Data Solutions
  2. Large-Scale Data Warehousing and Big Data with Microsoft SQL Server Parallel Data Warehouse V2
  3. Внедрение Microsoft SQL Server Parallel Data Warehouse с применением подхода Кимбалла
  4. Implementing a Microsoft SQL Server Parallel Data Warehouse Using the Kimball Approach
  5. Parallel Data Warehouse Official Page – www.microsoft.com/pdw
  6. Parallel Data Warehouse Datasheet
  7. Data Warehousing 2.0 and SQL Server
  8. HP specification
  9. HP specification 2
  10. Polybase: Hadoop Integration in SQL Server PDW V2
  11. PDW Case Studies (примеры внедрения в мире

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: