Modelo do Rational Insight data warehouse

O IBM Rational Insight data warehouse (RIDW) é o componente que armazena dados de vários sistemas operacionais em um formato que facilita o relatório analítico e fornece o mecanismo necessário para otimização de consulta, análise multidimensional e tendência histórica. Sua estrutura de dados é diferente da estrutura de sistemas transacionais ativos, que geralmente armazenam informações em formato normalizado. Embora os dados recebidos passem por vários estágios durante os quais eles são armazenados temporariamente em tabelas normalizadas, o formato final usado é um esquema em estrela. Esta seção descreve a estrutura de dados básica do RIDW.

Áreas de armazenamento de dados

O RIDW contém três áreas de armazenamento de dados:

Área de configuração

Esta área armazena importantes informações de configuração sobre entidades, como origens de dados e calendários do produto. A área de configuração contém as configurações de referência do armazém. Ela possui quatro tabelas principais:
Tabela 1.
Nome da tabela Propósito da tabela
SYS_CONFIG Contém informações de configuração do sistema, como o tipo de calendário de dimensão de data.
ETL_INFO Contém informações de configuração de extract, transform, and load (ETL), como o planejamento de ETL (diário, semanal ou mensal)
Para compatibilidade com várias origens de dados, o RIDW suporta os tipos de dados ISO e gregoriano. É possível selecionar as definições de configuração quando o armazém é instalado e antes da execução de uma transação ETL.

Armazém de dados operacional

Esta é a área na qual as informações reunidas das origens de dados durante o processo ETL são recebidas, consolidadas e armazenadas. O RIDW suporta os seguintes produtos: IBM Rational ClearQuest (esquemas Corporativo e ALM), IBM Rational ClearCase, IBM Rational Requisite Pro, IBM Rational Team Concert, IBM Rational Test Manager, IBM Rational Quality Manager, IBM Rational Team Manager e Microsoft Project. Os dados são então limpos e processados para assegurar consistência entre várias origens. Os princípios de design do banco de dados RIDW buscam assegurar o seguinte:
  • Rastreabilidade de dados para seus sistemas operacionais de origem
  • Agrupamento de elementos baseados em assuntos
  • Apresentação de uma área normalizada unificada independente de origens de dados
Colunas de controle
O processo ETL inclui algumas colunas adicionais que contêm informações de controle usadas pelo RIDW posteriormente. Por exemplo, as três colunas mandatórias a seguir fornecem informações de identificação:
  • EXTERNAL_KEY1 armazena a chave natural se ela for um número inteiro
  • EXTERNAL_KEY2 armazena a chave natural se ela for de tipo varchar
  • SOURCE_ID armazena o valor GUID da origem de dados
Os usuários finais não precisam configurar o GUID, pois ele é designado a uma origem de dados durante a fase de design.

Também são incluídas duas colunas de controle adicionais: ISSOFDELETED e REC_DATETIME.

ISSOFDELETED é usada para marcar um registro que foi excluído fisicamente da origem original. Seu valor deve ser configurado como 1 se o registro for excluído e como 0 se não for excluído.
Nota: Os registros na área normalizada nunca devem ser excluídos fisicamente, pois podem estar vinculados a medidas na área de fatos e de dimensões.
REC_DATETIME é uma coluna de registro de data e hora cujo valor é configurado pelo banco de dados sempre que um registro é inserido e, subsequentemente, é atualizado pelo ETL caso um registro seja atualizado.

Surrogate keys

Surrogate keys são as chaves primárias criadas pelo processo ETL. Elas são necessárias para substituir as diferenças entre os formatos das chaves primárias de diferentes origens. Em cada tabela extraída, o RIDW cria suas próprias chaves primárias e retém a chave original nas colunas EXTERNAL_KEY1 ou EXTERNAL_KEY2. Surrogate keys são números inteiros baseados em 0.

Tabelas de classificação

Estas são tabelas que representam artefatos comumente usados como, projetos, pedidos, requisitos, tarefas, atividades e componentes. Elas são reconhecíveis por seu nome, que contém a palavra “CLASSIFICATION”. Cada tabela de classificação possui um tipo de registro predefinido que representa um entendimento comum do artefato. A conversão de tabelas extraídas em tabelas de classificação é gerenciada pelo processo ETL.

Registro simulado

Todas as tabelas de classificações e de artefatos contêm uma linha simulada identificável por um valor de chave primária de -1. As linhas simuladas suportam a normalização de dados em caso de valores nulos para as restrições de referência definidas.

Área de Fatos e de Dimensões

A área de fatos e de dimensões implementa um design de esquema em estrela, que é um conjunto de tabelas de fatos, de dimensões e de rastreabilidade histórica. Uma tabela de fatos contém as medidas ou ‘fatos’ de um processo de negócios específico. Por exemplo, se o gerenciamento do projeto for um processo que você deseja medir, uma tabela de fatos correspondente poderá conter o número de requisitos. As tabelas de dimensões contêm atributos usados para restringir e agrupar dados ao executar consultas de data warehousing. Se o número de requisitos for uma tabela de fatos, será possível usar o tipo de requisito como uma dimensão.

Convenções de design

Os nomes de tabelas de dimensões começam com “D_” e possuem surrogate keys para identificar registros. Os nomes de tabelas de fatos começam com “F_”, enquanto as tabelas que fornecem insight histórico sobre medidas localizadas nas tabelas de fatos começam com “H_”. A chave primária geralmente é uma combinação de surrogate key da medida e da surrogate key do artefato que contribuiu para a medida. Os nomes de tabelas de fatos com “F_C_” são equivalentes à sua tabela de fatos de tendência original, com exceção de que armazenam apenas a captura instantânea mais recente dos dados, enquanto seus complementos acumulam dados para permitir tendência no decorrer do tempo. O data mart também contém um conjunto de visualizações que fornecem uma janela para o armazém de dados operacional, com a finalidade de pesquisa detalhada para obter detalhes adicionais ou para a possibilidade de fornecer relatórios de lista.

Colunas de controle

Todas as tabelas de fatos possuem uma coluna que faz referência à dimensão de data D_DATE. Para tabelas de tendências, a data neste contexto indica a data em que a captura instantânea dos dados foi obtida. Para as outras tabelas de fatos, a data reflete a ocorrência de um evento, como a criação de um registro. A captura instantânea dos dados pode ser marcada para indicar uma base ‘por dia’, ‘por semana’ ou ‘por mês’, dependendo do valor armazenado na tabela SYS_CONFIG na área de configuração. Outras colunas de controle incluem a coluna REC_DATEIME, que serve como uma marca de registro para a inserção ou atualização de um registro.

Indicador de registro NULL

Como no armazém de dados operacional, as tabelas de dimensões contêm uma linha de indicador NULL identificável por um valor de chave primária de -1. Isto representa o valor NULL para tabelas com limitadores.