Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O espaço do cubo é o resultado da interação entre os membros das hierarquias de atributo de um cubo com as medidas desse cubo. Portanto, o espaço do cubo é determinado pelo produto combinatorial de todos os membros da hierarquia de atributos no cubo e pelas medidas do cubo e define o tamanho máximo do cubo. É importante observar que esse espaço inclui todas as combinações possíveis de membros da hierarquia de atributos; combinações que podem ser consideradas impossíveis no mundo real, ou seja, combinações em que a cidade é Paris e os países/regiões são Inglaterra ou Espanha ou Japão ou Índia ou em outro lugar.
Autoexists e espaço cúbico
O conceito de autoexistas limita esse espaço de cubo às células que realmente existem. Membros de uma hierarquia de atributo em uma dimensão podem não existir com membros de outra hierarquia de atributos na mesma dimensão.
Por exemplo, se você tiver um cubo que tenha uma hierarquia de atributos de Cidade, uma hierarquia de atributos de País e uma medida de Valor de Vendas da Internet, o espaço do cubo incluirá apenas os membros que coexistem entre si. Por exemplo, se a hierarquia de atributos da cidade incluir as cidades Nova York, Londres, Paris, Tóquio e Melbourne; e a hierarquia de atributo País inclui os países Estados Unidos, Reino Unido, França, Japão e Austrália; em seguida, o espaço do cubo não inclui o espaço (célula) na interseção de Paris e Estados Unidos.
Ao consultar células que não existem, as células não existentes retornam nulos; ou seja, eles não podem conter cálculos e você não pode definir um cálculo que grava nesse espaço. Por exemplo, a declaração a seguir 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
Essa consulta usa a função Membros (Conjunto) (MDX) para retornar o conjunto de membros da hierarquia de atributos de gênero no eixo de coluna e cruza esse conjunto com o conjunto especificado de membros da hierarquia de atributos cliente no eixo de linha.
Quando você executa a consulta anterior, a célula na interseção de Aaron A. Allen e Female exibe um valor nulo. Da mesma forma, a cela na interseção de Abigail Clark e Male exibe um nulo. Essas células não existem e não podem conter um valor, mas as células que não existem podem aparecer no resultado retornado por uma consulta.
Quando você usa a função Crossjoin (MDX) para retornar o produto cruzado dos membros de hierarquia de atributos das hierarquias de atributo na mesma dimensão, o auto-exists limita essas tuplas retornadas ao conjunto de tuplas que realmente existem, em vez de retornar um produto cartesiano completo. Por exemplo, execute e examine os resultados da execução da consulta a seguir.
SELECT CROSSJOIN
(
{[Customer].[Country].[United States]},
[Customer].[State-Province].Members
) ON 0
FROM [Adventure Works]
WHERE Measures.[Internet Sales Amount]
Observação
Observe que 0 é usado para designar o eixo de coluna, que é abreviação para eixo(0) – que é o eixo da coluna.
A consulta anterior retorna apenas células para membros de cada hierarquia de atributo na consulta que coexistem uns com os outros. A consulta anterior também pode ser gravada 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 pode ser escrita da seguinte maneira:
SELECT [Customer].[State-Province].Members
ON 0
FROM [Adventure Works]
WHERE (Measures.[Internet Sales Amount],
[Customer].[Country].[United States])
Os valores de células retornados serão idênticos, embora os metadados no conjunto de resultados sejam diferentes. Por exemplo, com a consulta anterior, a hierarquia País foi movida para o eixo de segmentação (na cláusula WHERE) e, portanto, não aparece explicitamente no conjunto de resultados.
Cada uma dessas três consultas anteriores demonstra o efeito do comportamento existente automaticamente no SQL Server Analysis Services.
User-Defined hierarquias e espaço em cubo
Os exemplos anteriores neste tópico definem posições no espaço do cubo usando hierarquias de atributo. No entanto, você também pode definir uma posição no espaço do cubo usando hierarquias definidas pelo usuário que foram definidas com base em hierarquias de atributo em uma dimensão. Uma hierarquia definida pelo usuário é uma hierarquia de hierarquias de atributo projetadas para facilitar a navegação de dados de cubo pelos usuários.
Por exemplo, a CROSSJOIN consulta na seção anterior também pode ter sido escrita da seguinte maneira:
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 mencionada, a hierarquia de Geografia do Cliente definida pelo usuário na dimensão do Cliente é usada para definir a posição no espaço do cubo que já tinha sido estabelecida através do uso de uma hierarquia de atributos. A posição idêntica no espaço do cubo pode ser definida usando hierarquias de atributo ou hierarquias definidas pelo usuário.
Relações de atributo e espaço em cubo
Definir relações de atributo 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 da hierarquia de atributos. Por exemplo, quando você define uma tupla que inclui um membro da hierarquia de atributos da cidade e a tupla não define explicitamente o membro da hierarquia de atributos do país, você pode esperar que o membro padrão da hierarquia de atributos do país seja o membro relacionado da hierarquia de atributos do país. No entanto, isso só será verdadeiro se uma relação de atributo for definida entre a hierarquia de atributos de Cidade e a hierarquia de atributos Country.
O exemplo a seguir retorna o membro de uma hierarquia de atributos relacionada que não está incluída explicitamente 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
Observe que a WITH palavra-chave é usada com as funções MDX (CurrentMember) e Name (MDX) para criar um membro calculado para uso na consulta. Para obter mais informações, consulte Consulta Básica de MDX (MDX).
Na consulta anterior, o nome do membro da hierarquia de atributos País associado a cada membro da hierarquia de atributos de Estado é retornado. O membro País esperado é exibido (porque uma relação de atributo é definida entre os atributos Cidade e País). No entanto, se nenhuma relação de atributo fosse definida entre hierarquias de atributo na mesma dimensão, o membro (Todos) seria retornado, conforme ilustrado na consulta a seguir.
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 (All) ("Todos os Clientes") é retornado, porque não há relação entre Educação e Cidade. Portanto, o membro (Todos) da hierarquia de atributos Educação seria o membro padrão da hierarquia de atributos Educação usado em qualquer tupla que envolva a hierarquia de atributos City em que um membro da Educação não seja fornecido explicitamente.
Contexto de Cálculo
Consulte Também
Principais conceitos no MDX (Analysis Services)
Tuplas
Autoexists
Trabalhando 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)