Por que é importante mapear dependências de dados e como fazer isso

Publicados: 2022-12-18

Nota do editor: este artigo foi originalmente publicado no blog Iteratively em 8 de fevereiro de 2021.


Em algum momento, você estará trabalhando com uma pilha de tecnologia bagunçada e desorganizada. Talvez sua organização tenha começado a usar novos produtos antes de considerar como eles interagem com os outros. Ou você herdou o código de outra pessoa. O mapeamento de dependências de dados mostrará a você e sua equipe como os dados fluem e interagem com os sistemas em sua pilha.

As empresas perdem dinheiro com a proliferação de dados e ficam mais suscetíveis a vulnerabilidades de segurança e regulamentações dispendiosas.

Ter um mapa de dependência de dados não apenas ajudará você a entender melhor sua pilha de tecnologia, mas também permitirá que você tome decisões mais informadas no futuro.

Aqui está o que você pode fazer para ajudar a limpar as coisas.

Os benefícios do mapeamento de dependência

A princípio, pode parecer muito trabalho extra para configurar – e pode ser – mas há motivos claros pelos quais você deve criar um mapa de dependência de dados.

Os mapas de dependência de dados oferecem uma visão holística de seus dados, permitindo que as equipes de dados criem melhores planos de rastreamento. Eles também podem garantir que nenhum dos sistemas de rastreamento seja interrompido quando o código analítico for atualizado ou removido. Isso é especialmente importante quando você está alterando o código na origem e suas implicações nos sistemas downstream. Acompanhar as implicações que a mudança pode ter nos sistemas dependentes economizará tempo para você e sua equipe, pois você pode ver onde os sistemas dependentes podem quebrar devido às alterações.

Parece ótimo, certo? Há muitos benefícios resultantes da criação de um mapa de dependência de dados.

Melhor compreensão do ambiente tecnológico

Um mapa bem projetado permite que qualquer pessoa veja facilmente como os sistemas interagem, ajudando você a rastrear quais sistemas interagem com os dados e para onde os dados vão, passo a passo.

Isso também ajuda no planejamento de produtos ou componentes futuros, pois você pode ver onde eles podem ajudar na integração ou migração de dados.

Precisão melhorada

Mapear suas dependências de dados ajudará você a manter a precisão dos dados conforme eles se movem da origem ao destino. E isso contribui muito para aumentar a confiança na qualidade do seu data center.

Ao fornecer à sua equipe uma visão completa de sua infraestrutura e dependências, você pode acompanhar como cada componente funciona com os outros.

Você também pode usar um mapa de dependência de dados para identificar as causas principais das interrupções do aplicativo. Se estiver tendo um problema com um aplicativo, você pode começar de onde ele se originou e voltar pelo mapa para ver se há uma causa raiz específica. É na infraestrutura? Uma aplicação? Uma ameaça externa?

Mais facilidade para identificar riscos

Mapear suas dependências de dados oferece aos usuários visibilidade clara de sua pilha de tecnologia, o que pode ajudar a determinar possíveis pontos de falha que colocam seus negócios em risco. Se feito corretamente, o mapeamento de dados pode ser uma ferramenta eficaz para sua organização, pois geralmente ajuda uma empresa nas seguintes áreas:

  • Qualidade dos dados: à medida que o volume de fontes de dados aumenta, o mapeamento de dados é mais complexo do que nunca. O mapeamento das dependências de dados fecha a lacuna entre os modelos de dados, garantindo que os tomadores de decisão possam analisar quando os dados são movidos em sua pilha.
  • Ataques cibernéticos e violações de dados: à medida que as empresas obtêm informações a partir dos dados, proteger as informações dos usuários tornou-se uma obrigação. Um mapa de dados pode ajudar uma organização a identificar onde os principais conjuntos de dados são armazenados, processados ​​e transmitidos. Depois que as organizações descobrem isso, elas podem tomar as medidas necessárias para evitar que informações confidenciais acabem nas mãos erradas.

O que considerar antes do mapeamento de dependência

Claro, você pode fazer um mapa físico com post-its, mas existem muitas ferramentas digitais que podem ajudar você e sua equipe a criar uma versão digital. Mas antes de começar com o mapeamento de dados, há duas coisas que você deve considerar:

Primeiro, determine a direcionalidade da dependência

Ao começar com o mapeamento de dependência, é crucial saber como as coisas irão falhar. Ao determinar onde as coisas falharão, você identifica vulnerabilidades em sua pilha. Quando você pode identificar falhas mais rapidamente em sua organização, pode encontrar a maneira mais rápida de resolver o problema em questão. Isso não apenas economizará o tempo de seus funcionários, mas também economizará o dinheiro de sua organização a longo prazo.

Mantenha simples

Embora os mapas de dados devam ser abrangentes para dar conta de muitas fontes de dados, eles não devem ser complicados de entender. Os mapas de dados devem conter informações relevantes para sua organização e ser atualizados regularmente, mas não há necessidade de exagerar ao mapear suas dependências. Um mapa de dados complicado pode ser mais prejudicial do que útil para sua organização.

Um mapa de dados deve ser simples o suficiente para um leigo entender, então, da próxima vez que houver um problema em sua pilha, um colega poderá encontrar facilmente a raiz do problema e resolvê-lo em um período de tempo razoável.

As três técnicas de mapeamento de dependência de dados mais comuns

Embora o mapeamento de dados varie de acordo com a complexidade da pilha de tecnologia da sua organização, essas três técnicas de mapeamento de dependência de dados são as mais comuns entre as empresas.

1. Mapeamento manual

A maioria dos sistemas de dados cresceu a um ponto em que agora são muito complicados para rastrear manualmente. No entanto, o mapeamento manual é um ótimo ponto de partida se seu sistema de dados for pequeno e você não espera que ele cresça.

Com o mapeamento manual, os desenvolvedores usam linguagens como SQL, C++, XSLT e Java. Embora essa solução exija muito trabalho inicial, ela pode ser feita, mas não será tão eficaz quanto o esquema ou o mapeamento automatizado.

2. Mapeamento de esquema

O software de mapeamento de esquema compara as fontes de dados com o esquema de destino, gerando conexões. Após a conclusão, um desenvolvedor deve entrar manualmente no software e verificar se as informações estão corretas e fazer as alterações necessárias.

Após a conclusão do mapa de dados, o software gera o código para carregar os dados. Isso geralmente é chamado de estratégia semiautomatizada, pois depende de equipes para verificar novamente o trabalho realizado pelo software antes de prosseguir.

3. Mapeamento automatizado

As soluções automatizadas tornaram-se cada vez mais populares, pois não exigem experiência em codificação. Esses usuários de software arrastam e soltam linhas entre bancos de dados, facilitando o mapeamento de relacionamentos em um período de tempo razoável. Embora essas soluções façam a maior parte do trabalho pesado, os usuários ainda fariam bem em verificar se há erros humanos.

Ferramentas para mapear dependências de dados

Felizmente, existem muitas ferramentas disponíveis que podem ajudá-lo a mapear suas dependências de dados. Aqui estão alguns que recomendamos:

  • Datafold: esta empresa de linhagem de dados ajuda as empresas a visualizar seu ecossistema de dados. Ele garante às empresas que uma alteração no esquema de uma tabela não afetará a funcionalidade em outro lugar. Embora a empresa ofereça uma versão gratuita para empresas, sua solução paga oferece vários benefícios, incluindo integração com o Slack e suporte por bate-papo ao vivo no produto.
  • Monte Carlo: Uma solução de linhagem de dados totalmente automatizada que cobre toda a sua pilha de dados, Monte Carlo alerta sua organização quando os dados são interrompidos. Isso significa que você pode corrigir o problema antes que ele chegue ao usuário final. É uma solução totalmente automatizada que cobre toda a sua pilha de dados. O Monte Carlo é uma solução paga que permite que as empresas comecem com uma avaliação gratuita.
  • Datadog : a ferramenta APM do Datadog permite que as organizações entendam as dependências do serviço enquanto as monitoram em tempo real e alertam os usuários quando um sistema está inoperante. A empresa oferece um teste gratuito por até 14 dias.
  • Prometheus: esta solução de código aberto permite monitorar o desempenho do aplicativo. A solução é conhecida por sua alta confiabilidade e tempo de atividade. O Prometheus irá alertá-lo sobre quaisquer mudanças importantes no comportamento de seus aplicativos, para que você possa investigar imediatamente a causa.

Por que o mapeamento de dependência de dados pode ser adequado para você

Qualquer empresa verdadeiramente orientada a dados deve mapear suas dependências de dados. Os dados que são mal mapeados ou não mapeados eventualmente levarão a problemas downstream, pois os dados trafegam de ponta a ponta dentro de sua organização. Mapear suas dependências de dados é uma tarefa assustadora para as empresas, especialmente quando você depende de dados para tomar decisões de negócios informadas.

Pense em mapear suas dependências de dados como uma tarefa que futuramente você agradecerá mais tarde. Não somos perfeitos - os dados estão fadados a quebrar em algum ponto, independentemente de quão perfeita pensamos que nossa solução atual é, e você sabe o que mais? Está tudo bem. O processo de mapear suas dependências de dados garantirá que, quando os dados forem quebrados, isso não levará a um problema maior no futuro. Reserve um tempo para mapear suas dependências de dados; você economizará muito tempo procurando quais outros sistemas foram afetados pela falha. Quando feito corretamente, o mapeamento de dados garante que os dados da sua organização não sejam apenas corretos, mas também confiáveis.

Sua organização começou a mapear suas dependências de dados? Você tem alguma lição que gostaria de compartilhar? Junte-se à comunidade Amplitude.

Comece a usar o Amplitude