Serviços de middleware: Data Quality Assurance
Você deveria criar dois serviços diferentes de garantia de qualidade (QA) no fluxo de serviços de middleware. Você tem que executar as primeiras tarefas de controle de qualidade contra o extracto da fonte de dados antes de executar quaisquer serviços mais middleware.
garantia de qualidade de dados: parte I
Tente pegar (e correto) erros e problemas, como no início do processo quanto possível. Movendo dados pelo pipeline para o armazém de dados é inútil se os problemas são tão significativas que quer impor significativamente mais esforço para corrigir mais tarde no processo ou simplesmente não pode ser corrigido.
Então, quais os tipos de problemas que você deve procurar? Aqui estão algumas delas:
Valores em elementos de dados que excedem um intervalo razoável: Um cliente apresentou 150 milhões de ordens de compra no mês passado, por exemplo, ou um empregado trabalhou na empresa por 4.297 anos, de acordo com o banco de dados empregado, a data de contratação armazenado.
Valores em elementos de dados que não se encaixam na lista oficial e completa dos valores admissíveis: Um valor pode ter um um código, por exemplo, quando os únicos valores permitidos para esse campo são M e F. (Se esse campo foram rotulados de gênero, pode estar para andrógina!)
inconsistências de mesa Cruz: Para entradas na tabela de CUSTOMER_ORDER, sem entradas correspondentes (conforme identificado por CUSTOMER_ID) existem no CUSTOMER_MASTER_TABLE.
inconsistências Cross-campo: Registros que têm um estado incorreto ou código postal para a cidade indicada.
Os valores em falta: Registros que têm valores ausentes em certos domínios em que deverão ser conteúdo.
As lacunas de dados: Por exemplo, uma tabela de origem deve conter uma linha de dados que inclui total de unidades vendidas e dólares de vendas para cada mês ao longo dos últimos dois anos. Para um grande número de clientes, no entanto, não existem linhas por pelo menos uma das referidas meses.
dados incompletos: Se as informações sobre todos os produtos que a empresa vende é suposto estar disponíveis, por exemplo, são todos os produtos incluídos no extrato?
Violações de regras de negócios: Se uma regra de negócio afirma que apenas um atacadista pode vender produtos a qualquer um dos clientes da empresa, você deve verificar para ver se quaisquer registos de clientes indicam as vendas realizadas por mais de um atacadista, o que poderia indicar dados incorretos na fonte.
corrupção de dados desde o último extrato: Se a extração ocorre mensalmente, por exemplo, você deve manter o controle de valores de dados ou os montantes que devem ser constantes, tais como vendas por cliente por mês. Se, em um mês subsequente, o valor das vendas por cliente e por alterações mês para um determinado cliente para um mês anterior, os dados subjacentes pode ter sido danificado.
inconsistências de ortografia: nome de um cliente é escrito de várias maneiras diferentes, por exemplo.
O que você faz quando você encontra problemas? Você pode tentar uma das seguintes técnicas:
Aplicar uma regra de correção automática. Quando você encontrar uma ortografia inconsistente, por exemplo, fazer uma pesquisa em uma tabela mestre de correções ortográficas anteriores e fazer automaticamente a alteração nos dados.
Anular o registro de um membro da equipe para analisar e corrigir mais tarde. Neste caso, você pode fazer a parte humana do QA em conjunto com correção automática.
Por exemplo, correções automáticas são feitos, se possível, e um relatório sobre outros problemas são colocados em um arquivo separado e enviado para a pessoa QA. Quando a pessoa QA faz todas as correções manuais, você mesclar as correções de volta para os dados que passaram pelo processo de controle de qualidade automático.
Refrigerar seus jatos. Se você descobrir problemas suficientes que são sérios ou exigir uma quantidade indeterminada de pesquisa, considere interromper todo o processo até depois de encontrar e corrigir o problema.
Você pode fazer o processo de QA muito mais eficiente, e muito menos problemático, se você executar uma análise de sistemas-fonte completo. Se você tem uma ideia bastante boa sobre que tipos de problemas de dados que você pode encontrar em cada fonte de dados, você pode reprogramar o seu processo de QA para detectar e (espero) corrigir esses problemas antes de continuar.
Historicamente, as organizações tratado o processo de QA armazém de dados como um fluxo unidirecional. Os problemas são corrigidos antes que os dados é movido mais para dentro do fluxo dos processos de middleware mas nunca é corrigido nas fontes de dados. A maioria dos novos armazéns de dados tem um built-in loop de feedback do processo de QA que corrige problemas de qualidade de dados nos dados de origem.
garantia de qualidade de dados: parte II
Após a conclusão dos processos de transformação, os dados devem ser QA'd - novamente. Você nunca sabe que tipo de erro ou discrepância no processo de transformação poderia ter introduzido nos dados. Depois de ter ocorrido mudanças, quaisquer processos de QA anteriores não são mais válidas.
Executar os dados consolidados, transformados através do mesmo tipo de medidas de controle de qualidade discutidas aqui. Embora você provavelmente não encontrar tantos erros rudimentares (como erros ortográficos ou valores que estão fora de alcance) se você fez um trabalho minucioso em seu QA primeiro nível, você ainda quer ter a certeza. Além disso, garantir que o código ou scripts usados para transformação de dados não acidentalmente causar erros novos a se infiltrar.
O objetivo deste segundo nível de controle de qualidade é ter certeza de que seus dados consolidada e transformada está pronto para carregar no armazém de dados - assim como mais um passo ocorre, se necessário.