CHAPTER 2. Theoretical Framework
2.3. Professional Learning Communities
2.3.4. Professional Learning Communities and school culture
Na seção anterior, foi apresentado modelo DFM (Dimensional Fact Model). Golfarelli cita cinco fases para construir tal modelo:
• Construir a árvore de atributos
• Ajustar (cortar e enxertar) a árvore de atributos
• Definir as dimensões
• Definir os atributos dos fatos
• Definir as hierarquias
Para demonstrar o desenvolvimento e aplicação das etapas citadas acima, Golfarelli, utilizar um esquema E/R como exemplo. O esquema mostrado na figura 5.12 representa o fato VENDA. Cada instância deste fato corresponde a um produto incluído do cupom de venda. O atributo PreçoUnitário foi colocado em VENDA ao invés de PRODUTO. Isto porque o preço do produto pode variar ao longo do tempo.
64
5.2.5.1. Definição dos fatos
Os fatos são os elementos principais envolvidos na construção de um data warehouse. Eles correspondem ao registro quantitativo e qualitativo de determinado evento hora sendo registrado. Estes eventos ocorrem dinamicamente durante a vida da empresa. No modelo E/R, um fato poder ser representado por uma entidade. Também pode ser representado através de um relacionamento n-para-n. Na prática, este relacionamento n- para-n acaba sendo transformado em uma entidade.
As entidades atualizadas freqüentemente, ou seja, as que sofrem maior atividade de inclusão, são boas candidatas para entidades de fatos. Entidades que sofrem pequeno grau de atualização e que representam propriedades estruturais e domínio dificilmente serão eleitas entidades de fatos (entidade tipo e categoria)
Através dos esquemas E/R identificamos os fatos. Estes tornam-se a raiz para o novo esquema fato do modelo DF. No exemplo que será desenvolvido a partir de agora, a discussão será concentrada na entidade F representada pelo fato venda. Este fato está representado no esquema E/R pelo relacionamento venda o qual representa o evento venda de um produto. A figura 5.13 mostra como este relacionamento foi transformado em entidade.
65
5.2.5.2. Construir a árvore de atributos
Dada uma parte de um esquema E/R e sendo F uma entidade pertencente a esta parte, chamamos árvore de atributos aquela que:
• Cada vértice corresponde a um atributo do esquema;
• A raiz corresponde ao identificador da entidade F;
• Para cada vértice v, a funcionalidade correspondente ao atributo determina todos os atributos correspondentes aos descendentes de v.
A árvore de atributos pode ser gerada de forma semi-automática através do uso de um algoritmo. Entretanto, a árvore resultante precisa de alguns ajustes em função de: (GOLFARELLI et al., 1998)
• Existência de relacionamentos muito-para-muitos;
• Transformar relacionamentos um-para-um em atributos não dimensionais;
• Verificação de relacionamentos opcionais do E/R;
Para exemplificar, suponhamos que F seja a entidade escolhida para representar um fato. Através da transformação automática a árvore de atributos resultante correspondente ao esquema E/R é mostrado na figura 5.14.
66
5.2.5.3. Ajuste da árvore
A etapa de ajuste da árvore de atributos tem a finalidade de eliminar níveis de detalhe desnecessários á um ambiente de data warehouse. O processo de ajuste consiste de duas operações:
Poda: Tem o objetivo de cortar (podar) as sub-árvores. Os atributos cortados serão
eliminados do esquema e conseqüentemente não será possível efetuar agregação de dados sobre estes atributos.
Enxerto: O processo de enxerto é usado quando um vértice possui informações que
não são importantes, mas seus descendentes precisam ser preservados. Por exemplo, classificar os produtos por categoria não considerando a informação referente ao tipo de produto.
Neste exemplo do fato venda, o detalhe do cupom não é uma informação interessante a ser mantida no esquema. Através da operação de poda, a árvore de atributos resulta como mostrado na figura 5.15. Em geral, esta operação resulta na redução da granularidade do data warehouse.
67
5.2.5.4. Definição das dimensões
Uma vez criada a árvore de atributos segue-se com a definição das dimensões que farão parte do esquema ora sendo constituído. Os vértices que estão ligados diretamente à raiz da árvore são atributos candidatos a tornar-se dimensões. A escolha dos atributos de dimensão representa uma etapa importante na construção do data warehouse pois determina a granularidade das entidades de fatos.
O tempo é uma dimensão reconhecidamente importante no data warehouse visto que registra as variações ocorridas num determinado período de tempo bem como permite uma análise da sua evolução. Por este motivo, o atributo date foi ligado diretamente à raiz do esquema de fato para representar explicitamente uma dimensão. Além da dimensão tempo, este esquema possui também as dimensões produto e loja como pode ser verificado na figura 5.15. Ao completar esta etapa o esquema fato relativo pode ser desenhado através da adição das dimensões escolhidas a raiz do esquema.
5.2.5.5. Definição dos atributos dos fatos
Fatos representam uma medida quantitativa ou qualitativa da ocorrência de determinados eventos. Estes são tipicamente atributos numéricos que acumulam a soma das ocorrências de um fato, ou outra expressão que identifique valores mínimos, médios ou máximos.
Os atributos dos fatos são registrados no esquema (no retângulo que representa o fato). Para facilitar o projeto lógico do esquema fato, é muito aconselhado que seja criado um dicionário de dados (metadados) que explicite o atributo e de que forma ele foi calculado identificando sua origem.
No exemplo aqui sendo desenvolvido temos os seguintes atributos: Quantidade vendida=SUM(VENDA.Quantidade)
TotalVendido=SUM(VENDA.Quantidade * VENDA.PreçoUnitário) NúmeroDeClientes = COUNT(VENDA)
5.2.5.6. Definição das hierarquias
A definição das hierarquias das dimensões é a última etapa na construção do esquema fato. Ao longo de cada hierarquia, os atributos devem ser arranjados em forma de árvore tal que os relacionamentos x-para-um permaneçam entre cada um dos nós descendentes da hierarquia.
Nesta etapa, a árvore de atributos já demonstra razoável organização em suas hierarquias. Entretanto, ajustes podem ser efetuados com o objetivo de eliminar detalhes irrelevantes do esquema e também, novos níveis de agregação podem ser inseridos para enriquecer o esquema dimensional.
Os atributos que não serão usados para agregação e, portanto, possuem apenas objetivos informativos, podem ser classificados e identificados como atributos não dimensionais.