A idéia por trás multidimensionais Databases

bancos de dados multidimensionais (MDDBs) jogar fora as convenções de seus antepassados ​​relacionais e organizar os dados de uma forma que é altamente propício para a análise multidimensional. Para entender bancos de dados multidimensionais, portanto, você deve primeiro entender os conceitos básicos das funções analíticas realizadas com os dados armazenados neles.

análise multidimensional é construído em torno de alguns conceitos de organização de dados simples - especificamente, fatos e dimensões:

  • fatos: UMA fato é um exemplo de algum acontecimento ou evento em particular e as propriedades do evento todos armazenados numa base de dados. Você vendeu um relógio a um cliente última sexta-feira à tarde? Isso é um fato. A sua loja de receber um carregamento de anéis 76 de classe ontem de um determinado fornecedor? Isso é outro fato.

  • dimensões: UMA dimensão é um descritor de chave, um índice, pelo qual você pode acessar fatos de acordo com o valor (ou valores) que deseja. Por exemplo, você pode organizar seus dados de vendas de acordo com essas dimensões: tempo, do cliente e do produto.

O básico

Nestes exemplos simples, você pode organizar e visualizar seus dados de vendas como uma matriz tridimensional, indexados pelas dimensões do tempo, clientes e produtos:

  • 79 deles para $ 8.833 - em Outubro de 2008 (a dimensão de tempo), o Cliente A (a dimensão do cliente) anéis de classe (a dimensão do produto) comprado.

  • Em 2007 (a dimensão de tempo), o Cliente A (a dimensão do cliente) comprou muitos produtos diferentes (a dimensão do produto) - um total de 3.333 unidades por US $ 55.905 (os fatos).

Observe os diferentes sutil entre a forma como as dimensões são utilizadas nestes dois exemplos. Na primeira, a dimensão de tempo refere-se a um mês-a dimensão cliente refere-se a um cliente- específica e a dimensão do produto é para um produto específico.

No segundo exemplo, no entanto, o tempo é de um ano, não é um cliente mês- ainda é o mesmo (um cliente individual) - e o produto é para toda a linha de produtos.

análise multidimensional suporta a noção de hierarquias em dimensões. Por exemplo, você pode organizar o tempo em uma hierarquia de anos de quartas-de-mês. Você pode ver fatos (ou a consolidação dos fatos) no banco de dados em qualquer um desses níveis: por ano, trimestre ou mês.

Da mesma forma, você pode organizar os produtos em uma hierarquia de produtos específicos do tipo do produto família de produtos. anéis de classe pode ser um de tipo de produto # 147 de classe anel, estilo moderno, pedra ônix # 148- pode ser um produto específico. Além disso, anéis de classe, relógios, outros anéis e outros itens todos iriam rolar para dentro da família de produtos de jóias.

Existe um limite para o número de dimensões?

Teoricamente, você pode ter tantas dimensões em seu modelo multidimensional, se necessário. A pergunta sempre existe, no entanto, de saber se o seu produto de banco de dados multidimensional pode apoiá-los. Mas aqui é uma questão mais importante - mesmo se um produto permite um certo número de dimensões (15, por exemplo), faz sentido para criar um modelo desse tamanho?

Você deve trabalhar em estreita colaboração com seus usuários para determinar se o número de dimensões torna a sua solução muito complexa - e, portanto, limitar a população de usuários - ou melhora a facilidade de uso - e, portanto, expandir a população de usuários.

Você pode, por exemplo, adicionar geografia à lista dimensão que contém tempo, do cliente e do produto para que você possa ver e organizar os fatos de acordo com territórios de vendas, estados, cidades e lojas específicas.

Como você deve escolher os níveis em uma hierarquia?

Os níveis em uma hierarquia permitem que você execute drill-down funcionalidade. E por ter vários níveis dentro de uma hierarquia, você pode rapidamente obter respostas às suas perguntas por causa da informação que foi criado em cada um desses níveis especificados, para que a informação está apenas esperando por suas perguntas.

Como bancos de dados multidimensionais têm estruturas bastante rígidos construídos em torno da pré-cálculo de fatos (criação e armazenamento de agregados no banco de dados, em vez de executar a agregação em tempo de relatório e cálculo), os mais dimensões que você tem e quanto mais níveis em cada dimensão que você tem, maior a suas necessidades de armazenamento e quanto mais tempo a sua construção ou de carga vezes .

estruturas de banco de dados físicos em um MDDB

Embora quase todos os produtos MDDB são construídas em torno do conceito de fatos, dimensões e hierarquias, ninguém veio acima com uma definição padrão MDDB. No mundo relacional, não padronização também tem sido um pouco de um problema, particularmente em relação aos recursos de valor agregado, tais como restrições e procedimentos armazenados.

A estrutura básica de mesa linha-coluna relacional, no entanto, tem sido bastante fácil de exportar ou descarregar em um arquivo simples de algum tipo e, em seguida, carregá-lo com outro produto RDBMS.

No mundo MDDB, os vendedores tomaram uma variedade de diferentes abordagens para representações físicas dos respectivos produtos de dados. Eles estão todos buscando formas de superar problemas de armazenamento e complexidade causados ​​por um grande número de dimensões (por exemplo, mais de 15) e níveis de profundidade de hierarquias (por exemplo, 20 níveis de profundidade).

Quando você está avaliando produtos, não pego em se preocupar com técnicas de armazenamento físico: Apenas certifique-se as representações lógicas que vêm com os produtos (como as hierarquias, níveis e fatos) pode atender às suas necessidades de negócios. Eliminar produtos que parecem desajeitado ou que tenham, por exemplo, um modelo de hierarquia que não parece muito certo para os seus dados.

Então, depois de encontrar os produtos que parecem se encaixar o seu negócio, chutar os pneus um pouco (por assim dizer) para ver como eles funcionam dentro.

menu