Como o SMR se originou…
Ao executar um DWH, as alterações nos bancos de dados de origem quase sempre causam impacto. O grau de impacto do curso depende da natureza e extensão das mudanças, mas também da "inteligência" do DWH, ou até que ponto o DWH pode lidar com tais mudanças. Essa inteligência é muitas vezes inexistente e, nesse caso, cabe aos administradores / usuários tomar medidas oportunas e adaptar o DWH ao banco de dados de origem alterado.
Na prática, não sempre é conhecido no tempo se há mudanças e, em caso afirmativo, quais mudanças. Nesse caso, a consequência é que o DWH simplesmente "quebra".
Às vezes, o fornecedor (externo ou interno) do banco de dados de origem informa os administradores sobre alterações, mas isso nem sempre é o caso. O perigo aqui é que a alteração do banco de dados já passou no teste de aceitação e está em produção há algum tempo sem nenhum problema, após o qual o DWH repentinamente se "quebra".
Exemplo: uma definição de coluna muda de 50 para 100 caracteres, somente quando mais de 50 caracteres são realmente usados ocorre um erro nos processos que mantêm os dados no DWH porque 'algo' não se ajusta mais, em muitos casos a situação de erro será primeiro ocorrem na produção.
Para evitar paralisações da produção, é importante que cada mudança seja detectada e sinalizada o mais rápido possível - ou seja, durante ou mesmo antes do teste - para que isso possa ser levado em consideração e os problemas possam ser evitados.
A solução para o problema acima é relativamente simples; Ao manter um repositório de metadados sobre os bancos de dados de origem relevantes, você pode comparar periodicamente (diariamente?) com a origem e marcar as alterações (detectar e relatar).
Isso é exatamente o que o SMR faz.
Assista o video... (em inglês)