A sua empresa já efetivou a migração de dados ou o projeto ainda está sendo elaborado? A pergunta pode ser limitada, mas acredite: essa situação acontece mais cedo ou mais tarde.
O cenário é derivado da modernização da Tecnologia da Informação (TI) e da transformação digital, que exigem modificações incrementais nos sistemas utilizados na organização. Além disso, a mudança também pode ser necessária para uma estratégia de rip-and-place, ou seja, quando um software antigo será totalmente substituído por outro novo.
A questão é que, em qualquer desses casos, é preciso ter um processo bem-definido para iniciar a migração. A falta de planejamento pode levar a custos inesperados, afetar o retorno do investimento (ROI) e até trazer outros tipos de prejuízos, como a perda de informações.
É por isso que, neste post, abordaremos os principais aspectos desse procedimento. Explicaremos sua importância, as metodologias que podem ser adotadas, o plano e os processos que fazem parte dele, bem como os riscos inerentes.
Assim, você saberá o que deve fazer e quais cuidados tomar ao longo do caminho. Gostou? Então, acompanhe!
Importância da migração de dados
As atualizações tecnológicas crescentes e ágeis geram um contexto de obsolescência, em que os softwares e hardwares utilizados apresentam redução de sua vida útil, ao mesmo tempo em que diferentes inovações são incorporadas. Esse é um dos principais fatores que incentivam a transferência de dados. Porém, existem outros.
Processos de reestruturação societária, cisões e fusões também podem exigir essa atitude, porque costumam evidenciar os sistemas legados, que deixarão de existir. Nesse caso, as informações armazenadas devem ser repassadas à nova plataforma.
Outro motivo (relacionado ao primeiro e tão comum quanto ele) é a incapacidade do sistema atual de suportar as demandas organizacionais. Em outras palavras, ele tem pouca ou nenhuma escalabilidade. Essa situação pode ser gerada por ausência de espaço de armazenamento, processamento insuficiente e ineficiente ou por novas necessidades.
Em todas as situações, é preciso adotar a migração de dados, para evitar que as soluções utilizadas se tornem gargalos. Ainda assim, esse é um procedimento complexo, porque exige 100% de acerto já na primeira tentativa. Caso contrário, pode causar prejuízos à organização, inclusive financeiros.
Então, como alcançar o êxito? Não existe uma resposta correta. Cada projeto tem suas particularidades, e essas variáveis precisam ser respeitadas. É assim que você assegura a continuidade do trabalho sem imprevistos maiores.
Como funciona a migração de dados?
Esse procedimento sempre envolve dois repositórios, que contemplam uma base de origem e uma de destino. O objetivo é que as informações armazenadas no primeiro sejam passadas completamente para o segundo, de acordo com a modelagem de dados.
Assim, novas estruturas são criadas na solução de destino, e seus significados são preservados, qualquer que seja sua disposição na base de origem. Apesar disso, é comum os dados exigirem certa transformação para serem repassados ao destino, a fim de atenderem às especificações requisitadas pelo sistema a ser implementado.
Dentro desse escopo, diversas atividades administrativas e procedimentos operacionais são obrigatórios. Eles visam ao planejamento da atividade e são uma parte maior do que simplesmente fazer uma migração de dados. Perceba que o fim é relevante, mas, sem um plano preciso, a chance de falhar é maior.
O planejamento também garante alguns benefícios, como:
- redução de erros comuns na limpeza de dados antes da migração;
- aceleração dos projetos de transferência de dados, com diminuição do tempo gasto com o Extract, Transform, Load (ETL) — ou Extrair, Transformar, Carregar;
- minimização dos riscos por contar com tecnologia, metodologia e serviços eficientes;
- redução dos custos totais dos projetos.
Mais que isso, outros fatores interferem no procedimento, como:
- planejamento;
- definição da estratégia a ser usada com base em risco, segurança e conforto operacional;
- direcionamento do negócio;
- janela produtiva;
- tarefas de rollback — isto é, o encerramento da transação com o descarte das alterações realizadas;
- comunicação interna.
Desse modo, fica evidente que migrar os dados é uma técnica que precisa estar alinhada às necessidades organizacionais. Ela deve partir da melhor estratégia de movimentação para transferir os dados e ter como base uma metodologia bem-ajustada, para garantir o sucesso logo de cara.
Metodologias de migração de dados
Definir um método para realizar esse propósito é fundamental. Todo o trabalho deve partir disso, porque é dessa forma que você garante mais eficiência na atividade.
Para chegar à metodologia mais adequada para iniciar a análise das tabelas, você pode partir de alguns questionamentos. Por exemplo: “tenho maior volume de dados, atributos ou chaves estrangeiras?”. Além disso, vale a pena realizar as seguintes funções:
- levantar conceitos-chave;
- validar esses itens com a área de negócios;
- planejar a abordagem ao conhecimento do sistema;
- desenvolver tabelas auxiliares que permitam autenticar os mapeamentos de origem e destino;
- traçar a validação de testes.
Essas orientações são indicadas para garantir uma migração mais suave e sem tantas turbulências. Contudo, é preciso ser ainda mais específico. Um começo é definir qual método será usado para migrar o sistema. Ele pode ser:
- direto: o processo é feito de uma só vez, sem espaço para imprevistos. Tudo deve ser testado, homologado e validado, e também é recomendado contar com uma equipe técnica para suporte;
- por etapas ou módulos: o sistema é dividido em estágios que podem ser implementados individualmente, para evitar uma mudança tão brusca. A vantagem é passar para o próximo nível somente quando tudo estiver correto com o atual, medida que minimiza os problemas;
- piloto: uma unidade ou um grupo é usado como teste para verificar se o sistema atendeu aos processos. Para dar certo, é preciso que todas as seções tenham processos semelhantes ou iguais. Além disso, esse método pode ser trabalhado junto ao paralelo, para mais segurança e contingência;
- paralelo: os usuários replicam no novo sistema o que fazem no atual, para que, em caso de falha, os dados na solução antiga possam ser acessados. Apesar de seguro, é um método lento e que impacta negativamente a produtividade e a velocidade de implantação.
Além desses critérios, várias outras metodologias podem ser usadas para migrar os dados corporativos. Há procedimentos realizados no storage e via:
- gerenciadores de volume;
- Fabric, que é um tipo de Storage Area Network (SAN);
- host ou sistema operacional;
- aplicação.
Cada um requer critérios específicos para alcançar o êxito. No entanto, qualquer uma das técnicas pode ser inviabilizada devido à circunstância dos dados armazenados. Por isso, o primeiro passo é saber como ele se encontra gerenciado e hospedado logicamente.
Por exemplo: ele pode estar em um Logical Volume Manager (LVM), que é um gerenciador de volume com possibilidade de realizar a migração online. Por sua vez, pode estar hospedado em um arquivo do sistema estático, o que requer uma interrupção da aplicação para gerar consistência dos dados e assegurar que seja executado de maneira offline.
Desse modo, fica claro que várias ações podem ser tomadas a partir do contexto em que a empresa e seus dados estão inseridos. No entanto, alguns métodos ajudam a complementar e tornar todo o processo mais simples e ágil. Confira alguns dos principais.
Lean IT
Prevê um sistema produtivo para aumentar a eficiência, elevar o tempo de fabricação, diminuir a espera e evitar desperdícios. Essa metodologia foi criada na Toyota com a finalidade de desenvolver produtos e serviços apenas com o uso dos recursos necessários.
Na TI, esse método foi adaptado devido à necessidade de integração e à obrigatoriedade de gerar valor. A partir de alterações contínuas e incrementais, é possível aperfeiçoar os processos e fazer melhorias quando houver a oportunidade para isso.
Para a migração de dados, o Lean IT é uma metodologia eficiente para otimizar todo o processo e alcançar um melhor custo-benefício. Entre as técnicas de trabalho que podem ser usadas, estão:
- Kanban: busca o fluxo contínuo por meio de cartões que indicam quais etapas devem ser executadas e em que estágio cada nível está. A vantagem é detectar problemas e desafios a serem eliminados;
- Kaizen: é a ideia de aplicar, na rotina empresarial, a proposta de melhorar os processos continuamente. Pode ser empregada junto ao ciclo PDCA (planejar, fazer, verificar e agir), para solucionar os problemas mais rapidamente;
- Cobit e ITIL: são frameworks que contribuem para a implantação da governança de TI. Porém, o primeiro visa a definição, implementação, fiscalização, mensuração e aprimoramento dos controles para procedimentos específicos, enquanto o segundo foca as melhores práticas de gestão.
Metodologia ágil
Aplicar esse método pode ser feito de maneira total ou parcial. Pelo menos algumas de suas táticas são válidas para aprimorar a estratégia de transferência dos dados. Assim, é possível empregar melhorias incrementais a partir de ciclos de implementação mais curtos.
Primeiro, você pode aplicar os métodos ágeis pelo Pre-Migration Impact Assessment (PMIA). Essa é uma simulação rápida da migração — em poucos dias ou semanas. O propósito é verificar a viabilidade da ideia, os custos implicados, a tecnologia solicitada, as habilidades críticas e os imprevistos que podem surgir.
Em seguida, pode usar os incrementos iniciais dos principais setores e executar os ciclos de criação. Com isso, é possível analisar a qualidade dos dados. Na próxima etapa, chega o momento de implementar as melhorias estratégicas a partir de unidades específicas, para ser mais fácil gerenciar a atividade.
De maneira geral, a metodologia ágil é um bom recurso para trazer rapidez à migração. O Scrum é a técnica mais adotada dentro desse método e consiste nos aspectos já citados.
Essas metodologias têm que ser embasadas por um plano de migração de dados, que deve estar verdadeiramente alinhado às demandas da empresa.
Plano de migração de dados
Nesse momento, a ideia é verificar quais são os requisitos operacionais e de negócio que impactarão a atividade de transferência dos dados. Por isso, as partes envolvidas na operação devem ser consultadas.
A partir das informações coletadas nessa e em outras etapas, é definido se a migração é:
- simples: equivale à transferência em uma interação e sem modificações estruturais significativas;
- de complexidade média: pode ser a mudança dos dados de um sistema para um conjunto de soluções. Várias iterações são exigidas;
- complexa: é a solução que permite a coexistência de 2 sistemas.
Agora você já está pronto para elaborar o plano do projeto. Esse documento deve contemplar o detalhamento da estratégia de:
- migração;
- calendarização;
- identificação de recursos necessários;
- requisitos técnicos e de negócio;
- expectativas;
- resultados finais.
Também é necessário ter um plano de execução. O próximo passo é definir dois aspectos principais, descritos a seguir.
Detalhamento das rotinas de migração
A definição das fontes de dados que serão transferidas e de sua origem requer a determinação das rotinas, com o consequente mapeamento dos itens do sistema legado e do novo. Aproveite e analise as informações dispostas no repositório original, a fim de detectar arquivos duplicados, redundantes ou desatualizados.
Limpar esses elementos ajuda a aumentar a qualidade dos documentos.
Nessa etapa, cabe o uso do design de serviços, e algumas técnicas contribuem para o resultado positivo. As de ETL são as mais recomendadas. Vale a pena especificar questões a respeito de:
- inventário de aplicações envolvidas;
- métodos e ferramentas a serem utilizados;
- diagrama arquitetural do ambiente;
- padrões de conectividade das bases de dados de origem e destino;
- critérios de retenção de dados;
- requisitos de linguagem e de segurança;
- mapeamento e correspondência entre entidades físicas e seus atributos;
- modificações necessárias.
Detalhamento do plano de testes
Nesse caso, é preciso incluir a informação necessária para assegurar que os requisitos identificados anteriormente tenham sido cumpridos. É importante ser bastante específico e responder a questões do tipo:
- todos os atributos determinados pelo utilizador foram migrados?
- a quantidade de registros de metadados é igual à do sistema antigo?
- existem problemas com o encoding, ou seja, ao nível da codificação?
- algum arquivo foi corrompido no processo?
- os invariantes do sistema antigo foram preservados no atual?
A implementação do plano de testes pode ser executada por meio de rotinas automáticas, scripts, de modo manual ou uma combinação de todos os métodos.
Perceba que, aqui, acabam as etapas que contemplam a estratégia de migração dos dados. Os níveis até esse momento devem abranger a gestão da inovação, para garantir que a nova solução seja capaz de atender a todas as necessidades organizacionais.
Da mesma forma, é indicado aplicar o Enterprise Asset Management, ou gestão dos ativos do negócio. Essa prática inclui os itens tangíveis e intangíveis, inclusive a infraestrutura de TI. Assim, é possível empregar boas práticas para controlar os bens da empresa e identificar oportunidades de melhoria.
Processos de migração de dados
Nessa etapa de desenvolvimento, um dos focos é manter o compliance em TI e garantir que os aspectos determinados sejam cumpridos. Alguns itens que deixaram de ser mapeados na etapa anterior podem ser detectados. Nesse caso, é preciso dar um passo atrás e solucionar as dúvidas.
Outras questões que requerem atenção são a integridade dos dados e os IDs. A primeira situação é necessária porque a migração dos dados pode ser demorada, e isso aumenta a ocorrência de imprevistos, como acabar a energia elétrica ou surgir um campo null.
De toda forma, nem todas as situações podem ser previstas no planejamento. Por isso, é recomendado criar processos que cuidem da integridade das informações. Assim, se houver alguma eventualidade, é possível desfazer o necessário e gravar o que ainda está em falta.
Já no caso dos IDs, o sugerido é decidir se o número será mantido ou se será criado um campo com a identificação do sistema legado. Lembre-se de que as tabelas costumam ter numerações únicas de registro, que atuam como identificadores. Portanto, fazer essa análise é essencial.
A partir disso, chega o momento de determinar a estratégia da atividade. Nas etapas posteriores, esse quesito já foi pensado, mas aqui é preciso considerar se a migração acontecerá com base em backup, para futuro tratamento dos dados, ou com interrupção no sistema. Nesta última possibilidade, é preciso determinar, por meio de simulações, de quanto tempo será a parada.
Automação
Para reduzir custos, erros humanos e o tempo de inatividade do sistema, o processo de migração precisa ser automatizado. Uma plataforma de integração pode fazer a diferença nesse momento, porque automatiza os procedimentos que estão armazenados.
Outra vantagem é que a plataforma pode oferecer conectores pré-construídos, que vão gerar economia de tempo e ainda evitar a ocorrência de erros. O sistema antigo e o atual podem ser mantidos em funcionamento, sem perda de transações e risco de inatividade.
Portanto, essa é uma dica interessante, que pode agilizar o procedimento e ainda oferecer um bom retorno sobre o investimento. Outra ideia que contribui para a atividade é transformar as informações sistematicamente, por meio de ferramentas de automação de processos de negócios e mapeadores de dados.
Dessa forma, você poderá tratar bancos de dados, arquivos simples e XML, campos definidos pelos usuários, variáveis de fluxo, constantes e strings, armazenamento de dados operacionais e expressões lógicas e aritméticas.
Testes
Essa é a etapa que assegura a qualidade da migração realizada. Por meio dela, é possível obter subsídios para o design, a codificação e a revisão sistemática de especificações, a fim de evitar os erros.
Entre as falhas que podem ser encontradas, estão as físicas e as lógicas. As primeiras são facilmente tratadas e se referem à natureza sintática do mapeamento dos campos. As segundas devem voltar para a análise e o design da migração, porque estão relacionados à semântica.
Vale a pena responder a algumas perguntas nesse momento, como:
- os dados foram carregados no prazo adequado?
- quantos registros devem ser criados em cada objeto?
- os dados foram corretamente formatados?
- as transformações foram realizadas de acordo com o esperado?
Os testes ainda podem ser quantitativos, quando são criados selects que contabilizam os registros da base de origem e os comparam com o destino. Também são pegas amostras, para verificar se os dados gravados são condizentes com os anteriores.
Uma ideia que pode ser colocada em prática é criar um ambiente de homologação com o novo sistema para acessar a base nova com os dados legados e requisitar testes ao cliente, a fim de saber se está tudo adequado.
Por fim, tenha em mente que o processo de migração deve ser continuamente validado, para se ter certeza de que os dados estão precisos e completos. Além disso, é necessário oferecer um suporte pós-migração, para identificar a necessidade de otimizações, ajustes e refinamentos.
Riscos da migração de dados
Como indicamos, essa atividade é complexa, havendo muitas falhas inerentes ao processo. Todos os itens expostos até aqui neste artigo servem para reduzir a chance de complicações e garantir que todos os dados sejam preservados.
Afinal, ninguém quer fazer uma migração de documentos importantes, para implementar a ideia de smart contracts, por exemplo, e perceber que algum arquivo foi perdido, certo? Porém, mesmo seguindo todas as determinações, falhas podem surgir no meio do processo.
Por isso, é indicado conhecer os erros mais comuns. Veja agora quais são os principais riscos aos quais sua organização está sujeita ao realizar a transferência de dados para outro sistema.
Falhas humanas
Os colaboradores tendem a oferecer resistência às novidades e se sentir ameaçados por elas. Com a implantação de um novo sistema, problemas podem acontecer — tanto de propósito, quanto pela falta de vontade de aprender ou pela ausência de capacitação.
Para evitar essa situação, é indicado migrar os dados por etapas, a fim de reduzir a insatisfação e garantir o tempo necessário para surtir os efeitos positivos dos treinamentos e da comunicação.
Ajustes são comuns nesse processo, tanto no operacional quanto em relação ao estratégico. Saber lidar com isso é imprescindível para garantir o avanço tecnológico e a compreensão de todos os colaboradores sobre o valor dessa questão.
Tratamento dos dados
Para evitar problemas durante a migração, os arquivos precisam ser tratados corretamente. Esse é um dos principais problemas técnicos que podem acontecer, já que é comum que o novo sistema lide com os dados de maneira diferente daquela adotada pelo legado.
O problema pode ser mitigado por meio da definição de critérios de organização das informações durante a adaptação. O objetivo é evitar seu esfacelamento e a consequente perda de valor.
Capacidade da ferramenta adotada
O sistema a ser utilizado deve atender às demandas organizacionais. Caso contrário, será ineficiente. Os principais aspectos a serem avaliados são:
- velocidade, continuidade e segurança das operações e sistemas;
- recuperação imediata, em caso de falhas;
- gestão e controle dos dados transferidos;
- acerto total;
- integridade dos dados;
- cronograma de execução do projeto;
- atualizações permanentes.
Assim, fica claro que a migração de dados é um assunto sério e que merece atenção. Ela ajuda a trazer eficiência ao funcionamento operacional da empresa, além de garantir o compliance e evitar a obsolescência dos sistemas utilizados.
Gostou de saber mais sobre esse assunto? Assine a nossa newsletter e confira outros conteúdos relevantes para aprimorar o setor tecnológico do seu negócio!