Облачная аналитика с Azure Analysis Services

Tags: Azure, аналитика, аналитика данных, SQL Server 2017

Azure Analysis Services - это полностью управляемая платформа как услуга (PaaS), которая предоставляет модели данных корпоративного уровня в облаке.

Расширенные функции mashups и моделирования используются для объединения данных из нескольких источников данных, определения показателей и защиты ваших данных в единой, доверенной табличной модели семантических данных.

Модель данных обеспечивает более простой и быстрый способ для пользователей просматривать огромные объемы данных для узкоспециализированного анализа данных.

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

Особенности

Azure Analysis Services предлагает полный набор функций с некоторыми оговорками. Доступные функции будут зависеть от выбранного уровня (подробнее об уровнях позже).

На момент написания статьи модели Multidimensional и PowerPivot для Sharepoint не поддерживаются.

Табличные модели - это конструкции реляционного моделирования (модель, таблицы, столбцы), сформулированные в определениях объектов табличных метаданных в языке табличных моделей сценариев языка (TMSL) и табличной модели объекта (TOM). Поддерживаются разделы, перспективы, безопасность на уровне строк, двунаправленные отношения и переводы.

Поддерживаются режимы In-Memory и DirectQuery.

Режим In-Memory

Режим In-Memory является табличной моделью по умолчанию и поддерживает несколько источников данных. Поскольку данные модели сильно сжаты и кэшированы в памяти, этот режим обеспечивает самую быструю реакцию запроса на большие объемы данных. Он также обеспечивает максимальную гибкость для сложных наборов данных и запросов.

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

Поддерживаются другие расширенные функции моделирования данных, такие как рассчитанные таблицы и все функции DAX.

Модели памяти в памяти должны обновляться (обрабатываться) для обновления кэшированных данных из источников данных. Благодаря поддержке принципа обслуживания Azure автоматические операции обновления с использованием PowerShell, TOM, TMSL и REST обеспечивают гибкость в обеспечении того, чтобы данные модели всегда были актуальными.

Режим DirectQuery

Режим DirectQuery использует базовую реляционную базу данных для хранения и выполнения запросов.

Поддерживаются чрезвычайно большие наборы данных в одном SQL Server, хранилище данных SQL Server, база данных Azure SQL Database, Azure SQL Data Warehouse, Oracle и Teradata.

Наборы данных backend могут превышать доступную память ресурсов сервера.

Сложные сценарии обновления модели данных не требуются.

Существуют также некоторые ограничения, такие как ограниченные типы источников данных, ограничения формулы DAX и некоторые усовершенствованные функции моделирования данных не поддерживаются.

Серверы могут масштабироваться вертикально вверх или вниз, если требуется больше ресурсов.

Оба режима (в зависимости от уровня) предлагают возможность иметь до семи реплик запросов для масштабируемости.

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

Интеграция

Azure Analysis Services имеет встроенную интеграцию в ряд локальных и облачных сервисов, включая:

  • Azure SQLDB
  • Azure SQLDW
  • Azure Data Factory
  • Hadoop
  • Azure Data Lake
  • Azure Data Gateway

Привычный набор инструментов также может использоваться для разработки и администрирования служб анализа Azure, включая:

  • Visual Studio – SQL Server Data Tools
  • Powershell
  • SQL Server Management Studio
  • Объектная модель и сценарии (TOM, открытые через JSON через TMSL)

Что касается инструментов конечного пользователя и уровня представления, службы Azure Analysis поддерживают новейшее и самое популярное программное обеспечение, в том числе:

  • PowerBI
  • Microsoft Excel
  • Tableau

На момент написания SSRS не поддерживается, но можно проголосовать в его поддержку

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

На переднем крае всех облачных сервисов встает вопрос о безопасности. Услуги Azure Analysis предлагают полный набор функций безопасности, как описано ниже.

Брандмауэр

Брандмауэр Azure Analysis Services блокирует все клиентские соединения, отличные от тех IP-адресов, которые указаны в правилах. Это позволяет вашей компании контролировать тех, кто имеет доступ к какой услуге.

Правила настраиваются путем указания разрешенных IP-адресов отдельными клиентскими IP-адресами или диапазонами CIDR.

Соединения Power BI (службы) также могут быть разрешены или заблокированы. На портале есть удобный переключатель для включения или отключения этого.

Правила брандмауэра можно настроить на портале Azure или через PowerShell.

Аутентификация

Azure Active Directory (AAD) используется для обработки аутентификации пользователей. Пользователи, использующие идентификатор организации и ролевой доступ, используются для предоставления пользователям доступа к базе данных. Пользователи должны быть частью AAD для подписки, на которой находится сервер.

Защита данных и шифрование

Службы Azure Analysis Services используют хранилище Azure Blob для хранения хранилищ и метаданных для баз данных служб Analysis Services.

Файлы данных в хранилище Blob шифруются с использованием шифрования боковой стороны Azure Blob (SSE).

При использовании режима прямого запроса сохраняются только метаданные. Доступ к фактическим данным осуществляется через зашифрованный протокол из источника данных во время запроса.

Безопасный доступ к источникам данных в вашей организации возможен и достигается путем установки и настройки локального шлюза данных. Шлюзы обеспечивают доступ к данным для режимов DirectQuery и In-memory.

Роли

Служба Analysis Services использует авторизацию на основе ролей, которая предоставляет доступ к серверу, а также операции, объекты и данные базы данных модели.

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

Роль администратора сервера находится на уровне ресурсов сервера. По умолчанию учетная запись, используемая при создании сервера, автоматически включается в роль админов сервера.

Дополнительные учетные записи пользователей и групп добавляются с помощью портала, SSMS или PowerShell.

Безопасность уровней строк и объектов

Табличная модель поддерживает безопасность на уровне строк и реализуется с использованием выражений DAX, которые определяют строки, которые пользователь может запросить. Фильтры строк с использованием выражений DAX определяются для разрешений  Read и Read and Process.

Табличная модель SQL Server 2017 (уровень совместимости 1400) поддерживает защиту уровня объекта, и ее можно настроить в файле Model.bim с помощью TMSL или TOM.

Мониторинг и диагностика

Azure Analysis Services хорошо интегрирована с основными функциями мониторинга и диагностики Azure. Это включает в себя Azure Metrics, Event Hubs, Azure Storage и Log Analytics

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

Ценообразование и уровни

Общая стоимость зависит от ряда факторов. Включая выбранный вами регион, уровень, количество реплик запросов и графики приостановки / возобновления.

Используйте калькулятор калькуляции Azure Analysis Services для определения типичной цены для вашего региона. Этот инструмент вычисляет цену для односерверного экземпляра для одного региона. Имейте в виду, что реплики запросов тарифицируются с той же скоростью, что и сервер.

 

При выборе услуг Azure Analysis предлагается три уровня:

Developer

Этот уровень рекомендуется для сценариев оценки, разработки и тестирования. Один план включает те же функциональные возможности стандартного уровня, но ограничен в вычислительной мощности, QPU и объеме памяти. Шкала реплики запроса недоступна для этого уровня. Этот уровень не предлагает SLA.

 

Plan

QPUs

Memory (GB)

D1

20

3

Basic

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

 

Plan

QPUs

Memory (GB)

B1

40

10

B2

80

20

Standard

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

 

Plan

QPUs

Memory (GB)

S1

40

10

S2

100

25

S3

200

50

S4

400

100

S8*

320

200

S9*

640

400

Заключение

Надеюсь, этот блог поможет вам понять особенности  Azure Analysis Services. Если вам нужна помощь в настройке этого параметра или у вас есть рабочая нагрузка, которую вы хотите перенести на Azure Analysis Services, тогда не стесняйтесь обращаться за помощью.

No Comments

Add a Comment