Отличия Azure SQL Data Warehouse от SQL Database

Tags: Azure, SQL, Database, DataWarehouse, Business Intelligence, хранилище данных

Недавно меня спросили, какая разница между Azure SQL Database (SQLDB) и Azure SQL Data Warehouse. (SQLDW) Если вы подключаетесь и к той и к другой через Management Studio, кажется, что различия несущественны, но это совсем не так.

В традиционных локальных установках SQL Server производственные транзакционные (OLTP) базы данных размещаются на SQL Server Database Engine, а система хранилища данных (OLAP) обычно располагается на другом сервере, но использует один и тот же движок Database engine. Эти серверные системы с общими ресурсами известны как SMP (Symmetric Multiprocessing), и в этом случае нет никакой разницы в программном обеспечении, установленном на OLTP-серверах и OLAP-серверах; но в Azure все по-другому.

База данных SQL Database - это “платформа как услуга” (PaaS) для базы данных OLTP. Если вы не знакомы с PaaS, это означает, что вам не нужно поддерживать инфраструктуру или операционную систему - вам просто нужно иметь дело со стороной SQL Server. Важно отметить, что база данных Azure SQL - это единая база данных; Azure по-прежнему имеет концепцию «SQL Server», но его также можно рассматривать как контейнер для нескольких баз данных Azure SQL, которые в нем располагаются.

SQL Data Warehouse внешне ведет себя одинаково, это тоже предложение PaaS SQL Server единой базы данных, но все же это совсем другой продукт. SQLDW был создан для OLAP-систем. Эти системы ведут себя очень по-разному по отношению к отдельным операциям поиска, выполняемым базами данных OLTP, вместо этого выполняют большие проверки по многим строкам, чтобы вернуть агрегированные данные. Хранилище данных SQL Data Warehouse было разработано в качестве системы многопараллельной обработки (MPP), что редко встречается среди реляционных систем баз данных , хотя у Microsoft есть предложение на основе MPP в виде платформы Analytics (APS).

Системы MPP состоят из нескольких «узлов», каждый из которых имеет свои собственные ресурсы, и они работают вместе, чтобы обеспечить повышенную производительность. В случае SQLDW эти узлы фактически являются базами данных Azure SQL.

Такие различия в архитектуре ведут к различиям в других местах.  MPP спроектирован с учетом больших запросов и пакетных процессов, но этот факт не предполагает, что сотни пользователей будут их запускать, что снова отразится на разных предложениях в Azure. Неудивительно, что SQLDW становится более дорогостоящим, а учитывая тот факт, что для увеличения емкости вы просто добавляете больше «узлов»  (горизонтальное-масштабирование), вместо того, чтобы в традиционной манере добавить больше памяти или более быстро работающих дисков на серверы . (вертикальное масштабирование), неудивительно, что верхний предел стоимости гораздо выше.

Есть также некоторые проблемы при внедрении MPP, что приводит к временной недоступности некоторых функций. Ниже приведена таблица с основными различиями между SQLDB и SQLDW.

 

Azure SQL Database

Azure SQL Data Warehouse

Тип  масштабируемости

Вертикально-масштабируемая система

Горизонтально-масштабируемая система

Единицы производительности

Единицы транзакций базы данных (DTU)

Единицы использования хранилища данных (DWU) и вычислительные единицы использования хранилища данных (cDWU)

 

Максимальный объем

4ТБ

До 1 Петабайт со сжатием (240 ТБ на диске)

Ценовой диапазон, в мес.

£4 - £15 тыс.

£900 - £130 тыс., но вы можете приостановить его работу, чтобы снизить стоимость

Предназначен для

OLTP

OLAP

Архитектура

SMP

MPP

Резервное копирование и восстановление

Резервные копии создаются каждые 5-10 минут, непрерывное архивирование и восстановление на момент времени, считываемые реплики

Резервные копии создаются каждые 24 часа

Параллельные сессии

30000

1024

Параллельные запросы

6400

32

Поддержка PolyBase

Нет

Есть

Поддержка JSON, XML и Graph

Есть

Нет

Шифрование

Всегда зашифровано, прозрачное шифрование данных (TDE)

Прозрачное шифрование данных (TDE)

Оптимизация в памяти

Есть

Нет

Межбазовые запросы

Есть

Нет


Таким образом, названия говорят сами за себя: SQL Data Warehouse создана  для замены SQL Server Data Warehouse Database, а  SQL Database - для  замены традиционной базы данных OLTP. Поэтому, несмотря на то, что обе они созданы по одной технологии, вы должны убедиться, что выбрали подходящий вариант для ваших потребностей рабочей нагрузки.



No Comments

Add a Comment