Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:
SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
O espaço do cubo é o resultado da combinação dos membros das hierarquias de atributos de um cubo e as respetivas medidas. Portanto, o espaço do cubo é determinado pelo produto combinatório de todos os membros da hierarquia de atributos no cubo e pelas medidas do cubo, definindo o tamanho máximo do cubo. É importante notar que este espaço inclui todas as combinações possíveis de membros da hierarquia de atributos; até combinações que podem ser consideradas impossíveis no mundo real, ou seja, combinações onde a cidade é Paris e os países/regiões são Inglaterra, Espanha, Japão, Índia ou outro lugar.
Autoexistências e espaço cúbico
O conceito de autoexistência limita este espaço cúbico às células que realmente existem. Os membros de uma hierarquia de atributos numa dimensão podem não existir com membros de outra hierarquia de atributos na mesma dimensão.
Por exemplo, se tiver um cubo que tem uma hierarquia de atributos Cidade, uma hierarquia de atributos País e uma medida de Valor de Vendas na Internet, o espaço desse cubo inclui apenas os membros que existem juntos. Por exemplo, se a hierarquia de atributos da Cidade incluir as cidades de Nova Iorque, Londres, Paris, Tóquio e Melbourne; e a hierarquia de atributos por país inclui os países/regiões Estados Unidos, Reino Unido, França, Japão e Austrália; então o espaço do cubo não inclui o espaço (célula) na interseção de Paris e dos Estados Unidos.
Ao consultar células que não existem, as células inexistentes retornam nulos; ou seja, não podem conter cálculos e não se pode definir um cálculo que escreva neste espaço. Por exemplo, a seguinte afirmação inclui células que não existem.
SELECT [Customer].[Gender].[Gender].Members ON COLUMNS,
{[Customer].[Customer].[Aaron A. Allen]
,[Customer].[Customer].[Abigail Clark]} ON ROWS
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]
Observação
Esta consulta utiliza a função Members (Set) (MDX) para devolver o conjunto de membros da hierarquia de atributos de género no eixo da coluna, e cruza este conjunto com o conjunto especificado de membros da hierarquia de atributos Customer no eixo da linha.
Quando executa a consulta anterior, a célula na interseção de Aaron A. Allen e Feminino apresenta um valor nulo. De forma semelhante, a célula na interseção de Abigail Clark e Male apresenta um nulo. Estas células não existem e não podem conter um valor, mas células que não existem podem aparecer no resultado devolvido por uma consulta.
Quando se usa a função Crossjoin (MDX) para devolver o produto cruzado dos membros da hierarquia de atributos de hierarquias de atributos na mesma dimensão, o auto-existe limita essas tuplas que são devolvidas ao conjunto de tuplas que realmente existem, em vez de devolver um produto cartesiano completo. Por exemplo, execute e depois examine os resultados da execução da consulta seguinte.
SELECT CROSSJOIN
(
{[Customer].[Country].[United States]},
[Customer].[State-Province].Members
) ON 0
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]
Observação
Note que 0 é usado para designar o eixo da coluna, que é uma abreviatura para eixo (0) - que é o eixo da coluna.
A consulta anterior apenas retorna células para membros de cada hierarquia de atributos presentes na consulta que coexistem entre si. A consulta anterior também pode ser escrita usando a nova variante * da função * (Crossjoin) (MDX ).
SELECT
[Customer].[Country].[United States] *
[Customer].[State-Province].Members
ON 0
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]
A consulta anterior também podia ser escrita da seguinte forma:
SELECT [Customer].[State-Province].Members
ON 0
FROM [Adventure Works]
WHERE (Measures.[Internet Sales Amount],
[Customer].[Country].[United States])
Os valores das células devolvidos serão idênticos, embora os metadados no conjunto de resultados sejam diferentes. Por exemplo, com a consulta anterior, a hierarquia de País foi movida para o eixo do slicer (na cláusula WHERE) e, por isso, não aparece explicitamente no conjunto de resultados.
Cada uma destas três consultas anteriores demonstra o efeito do comportamento auto-existente no SQL Server Analysis Services.
User-Defined Hierarquias e Espaço Cúbico
Os exemplos anteriores neste tópico definem posições no espaço do cubo usando hierarquias de atributos. No entanto, também pode definir uma posição no espaço do cubo usando hierarquias definidas pelo utilizador que tenham sido definidas com base em hierarquias de atributos numa dimensão. Uma hierarquia definida pelo utilizador é uma hierarquia de atributos concebida para facilitar a navegação dos dados do cubo pelos utilizadores.
Por exemplo, a consulta CROSSJOIN na secção anterior também poderia ter sido escrita da seguinte forma:
SELECT CROSSJOIN
(
{[Customer].[Country].[United States]},
[Customer].[Customer Geography].[State-Province].Members
)
ON 0
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]
Na consulta anterior, a hierarquia definida pelo utilizador da Geografia do Cliente dentro da dimensão do Cliente é usada para definir a posição no espaço do cubo que anteriormente era definida usando uma hierarquia de atributos. A mesma posição no espaço do cubo pode ser definida usando hierarquias de atributos ou hierarquias definidas pelo utilizador.
Relações de atributos e espaço de cubos
Definir relações de atributos entre atributos relacionados melhora o desempenho da consulta (facilitando a criação de agregações apropriadas) e afeta o membro de uma hierarquia de atributos relacionada que aparece com um membro de hierarquia de atributos. Por exemplo, quando define uma tupla que inclui um membro da hierarquia de atributos Cidade e a tupla não define explicitamente o membro da hierarquia de atributos País, pode esperar que o membro padrão da hierarquia de atributos País seja o membro relacionado da hierarquia de atributos País. No entanto, isto só é verdade se for definida uma relação de atributos entre a hierarquia de atributos Cidade e a hierarquia de atributos País.
O exemplo seguinte devolve o membro de uma hierarquia de atributos relacionada que não está explicitamente incluído na consulta.
WITH MEMBER Measures.x AS
Customer.Country.CurrentMember.Name
SELECT Measures.x ON 0,
Customer.City.Members ON 1
FROM [Adventure Works]
Observação
Note que a palavra-chave WITH é usada juntamente com as funções CurrentMember (MDX) e Name (MDX) para criar um membro calculado para uso na consulta. Para obter mais informações, consulte A Consulta Básica MDX (MDX).
Na consulta anterior, o nome do membro da hierarquia de atributos País associado a cada membro da hierarquia de atributos Estado é devolvido. O membro esperado do País aparece (porque é definida uma relação de atributos entre os atributos da Cidade e do País). No entanto, se não fosse definida nenhuma relação de atributos entre hierarquias de atributos na mesma dimensão, o membro (Todos) seria devolvido, como ilustrado na consulta seguinte.
WITH MEMBER Measures.x AS
Customer.Education.Currentmember.Name
SELECT Measures.x ON 0,
Customer.City.Members ON 1
FROM [Adventure Works]
Na consulta anterior, o membro (Todos) ("Todos os Clientes") é retornado, porque não existe relação entre Educação e Cidade. Portanto, o membro (All) da hierarquia de atributos Educação seria o membro padrão da hierarquia de atributos Educação usada para qualquer tuplo que envolva a hierarquia de atributos Cidade no qual um membro de Educação não é explicitamente especificado.
Contexto de cálculo
Ver também
Conceitos-chave em MDX (Serviços de Análise)
Tuplas
Autoexists
Trabalhar com Membros, Tuplas e Conjuntos (MDX)
Totais Visuais e Totais Não Visuais
Referência de Linguagem MDX (MDX)
Referência de Expressões Multidimensionais (MDX)