Знакомство с измерениями

Применимо к: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Все измерения Microsoft SQL Server SQL Server Analysis Services — это группы атрибутов на основе столбцов из таблиц или представлений в представлении источника данных. Измерения существуют независимо от куба, могут использоваться в нескольких кубах, могут использоваться несколько раз в одном кубе и могут быть связаны между SQL Server Analysis Services экземплярами. Измерение, существующее независимо от куба, называется измерением базы данных, а экземпляр измерения базы данных в кубе называется измерением куба.

Измерение, основанное на структуре схемы «звезда»

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

На следующей схеме показан подраздел образца базы данных AdventureWorksDW2012 , в котором таблица фактов FactResellerSales связана с двумя таблицами измерений : DimReseller и DimPromotion. Столбец ResellerKey в таблице фактов FactResellerSales определяет связь внешнего ключа со столбцом первичного ключа ResellerKey в таблице измерения DimReseller . Аналогичным образом столбец PromotionKey в таблице фактов FactResellerSales определяет связь внешнего ключа со столбцом первичного ключа PromotionKey в таблице измерения DimPromotion .

Логическая схема для связи измерения фактов

Измерение, основанное на структуре схемы «снежинка»

Часто требуется более сложная структура, поскольку для определения измерения необходимы данные из нескольких таблиц. Эта схема называется схемой «снежинка», в которой каждое измерение основано на атрибутах из столбцов нескольких таблиц, связанных друг с другом и, в конечном итоге, с таблицей фактов связью первичного и внешнего ключей. Например, на следующей схеме показаны таблицы, необходимые для полного описания измерения Product в примере проекта AdventureWorksDW :

Таблицы для измерения Продукта AdventureWorksAS

Чтобы полностью описать продукт, в измерение «Продукт» необходимо включить категорию и подкатегорию продукта. Однако эти сведения не находятся непосредственно в таблице main для измерения DimProduct. Связь внешнего ключа от DimProduct к DimProductSubcategory, которая, в свою очередь, имеет отношение внешнего ключа к таблице DimProductCategory , позволяет включить сведения о категориях и подкатегориях продуктов в измерение Product.

Схема «снежинка» и ссылочная связь

В некоторых ситуациях возможен выбор между использованием схемы «снежинка» для определения атрибутов измерения из нескольких таблиц и определением двух отдельных измерений с последующим определением ссылочной связи измерений между ними. На следующей диаграмме показан этот сценарий.

Логическая схема для примера упоминаемого измерения

На предыдущей схеме таблица фактов FactResellerSales не имеет связи внешнего ключа с таблицей измерения DimGeography . Однако таблица фактов FactResellerSales имеет связь внешнего ключа с таблицей измерения DimReseller , которая, в свою очередь, имеет связь внешнего ключа с таблицей измерения DimGeography . Чтобы определить измерение Reseller, содержащее географические сведения о каждом торговом посреднике, необходимо получить эти атрибуты из таблиц измерения DimGeography и DimReseller . Однако в SQL Server Analysis Services можно добиться того же результата, создав два отдельных измерения и связав их в группе мер, определив связь ссылочных измерений между двумя измерениями. Дополнительные сведения о связях эталонных измерений см. в разделе Связи измерений.

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

Обработка измерения

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

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

Все подчиненные объекты измерения, включая иерархии, уровни и члены, защищены с помощью ролей в SQL Server Analysis Services. Безопасность измерения может быть применена ко всем кубам в базе данных, использующим это измерение, или к конкретному кубу. Дополнительные сведения о безопасности измерений см. в статье Предоставление разрешений для измерения (службы Analysis Services).

См. также:

Хранение измерений
Переводы измерений
Измерения с поддержкой записи