Знакомство с измерениями
Применимо к: 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 :
Чтобы полностью описать продукт, в измерение «Продукт» необходимо включить категорию и подкатегорию продукта. Однако эти сведения не находятся непосредственно в таблице main для измерения DimProduct. Связь внешнего ключа от DimProduct к DimProductSubcategory, которая, в свою очередь, имеет отношение внешнего ключа к таблице DimProductCategory , позволяет включить сведения о категориях и подкатегориях продуктов в измерение Product.
Схема «снежинка» и ссылочная связь
В некоторых ситуациях возможен выбор между использованием схемы «снежинка» для определения атрибутов измерения из нескольких таблиц и определением двух отдельных измерений с последующим определением ссылочной связи измерений между ними. На следующей диаграмме показан этот сценарий.
На предыдущей схеме таблица фактов FactResellerSales не имеет связи внешнего ключа с таблицей измерения DimGeography . Однако таблица фактов FactResellerSales имеет связь внешнего ключа с таблицей измерения DimReseller , которая, в свою очередь, имеет связь внешнего ключа с таблицей измерения DimGeography . Чтобы определить измерение Reseller, содержащее географические сведения о каждом торговом посреднике, необходимо получить эти атрибуты из таблиц измерения DimGeography и DimReseller . Однако в SQL Server Analysis Services можно добиться того же результата, создав два отдельных измерения и связав их в группе мер, определив связь ссылочных измерений между двумя измерениями. Дополнительные сведения о связях эталонных измерений см. в разделе Связи измерений.
Одним из преимуществ последнего сценария является возможность создать одно измерение географии, а затем создать несколько измерений куба, основанных на этом измерении географии, без использования дополнительного пространства хранилища. Например, можно связать одно из измерений куба географии с измерением посредника, а другое измерение куба географии с измерением заказчика. Связанные разделы:Связи измерений, Определение связей, на которые указывает ссылка, и Свойства ссылочной связи
Обработка измерения
После создания измерения его необходимо обработать перед тем, как можно будет просматривать элементы атрибутов и иерархии в измерении. После изменения структуры измерения или обновления данных в его базовых таблицах измерение необходимо обработать еще раз перед тем, как можно будет просмотреть эти изменения. При обработке измерения после изменения структуры также необходимо обработать и все кубы, включающие это измерение. В противном случае куб будет недоступен для просмотра.
Безопасность
Все подчиненные объекты измерения, включая иерархии, уровни и члены, защищены с помощью ролей в SQL Server Analysis Services. Безопасность измерения может быть применена ко всем кубам в базе данных, использующим это измерение, или к конкретному кубу. Дополнительные сведения о безопасности измерений см. в статье Предоставление разрешений для измерения (службы Analysis Services).
См. также:
Хранение измерений
Переводы измерений
Измерения с поддержкой записи