SQL Server Parallel Data Warehouse

Более новая версия статьи находится по адресу: https://microsoftbi.ru/basics/bigdata/pdw.

Введение

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

Компоненты PDW

Комплекс предназначен для критически важных хранилищ данных объемом до нескольких сотен Тбайт и построен на базе архитектуры MPP (Massive Parallel Processing).

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

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

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

Каждый узел стойки с данными представляет собой типичный SMP-узел (symmetric multi-processing), построенный на так же принципах, что и FastTrack DW, и имеет в составе:

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

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

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

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

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

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

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

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

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

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

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

  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 (примеры внедрения в мире)

Архитектуры и комплексы для хранилищ данных

Введение

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

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

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

Справочные архитектуры (FastTrack DW) представлены как:

  • методы построения эффективной по затратам, сбалансированной системы для загрузки, типично для хранилищ данных;
  • эталонные аппаратные конфигурации разработаны с поставщиками оборудования;
  • рекомендации размещения, загрузки и управления  данными.

Программно-аппаратные комплексы (Business DW Appliance и Enterprise DW Appliance – PDW) являются полностью собранными и настроенными решениями. Они построены под определенный тип нагрузки (в нашем случае это хранилища данных), на базе выверенной архитектуры, с использованием необходимого программного и аппаратного обеспечения.

Сравнение архитектур и комплексов

Предлагаемые архитектуры и комплексы представлены в таблице ниже (подробнее поговорим о них в следующих заметках).

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

Подход к построению BI-решений «Hub and Spoke»

Для реальных задач, связанных с созданием аналитических систем и использованием хранилищ данных перечисленные выше комплексы и архитектуры можно и нужно комбинировать, используя подход «Hub and Spoke» (дословно – «центр и спицы»).

Пример такого подхода приведен на следующем рисунке, где в качестве центрального хранилища с полным набором данных о деятельности предприятия используется PDW, в правой части отдельный экземпляр PDW используется для максимально быстрого формирования отчетности (в данном случае важна именно скорость, а не объемы данных), зона выгрузки центрального PDW используется как источник для отдельной базы SS 2008 EE, отдельные два экземпляра FastTrack DW используются, соответственно, для региональной отчетности и отчетности конкретного подразделения.

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