SlideShare uma empresa Scribd logo
1 de 15
IGOR MACEDO
IGOR.MACEDO@ESX.COM.BR
DevOps: Gestão e
publicação de Dados
SQL Server
#VSSUMMIT
O QUE É DEVOPS?
#VSSUMMIT
“DevOps is the union of people,
process, and products to enable
continuous delivery of value to
our end users.”
CI/CD SHOW
CENÁRIOS COMUNS
#VSSUMMIT
Mudanças em banco de dados:
 Não fazem parte do pipeline de deployment
 Possuem um processo de deployment diferente
DATABASE É UM COMPONENTE
PECULIAR
#VSSUMMIT
Definição
(estrutura
)
Estado
(dados
persistentes)
+
PRIMEIRO PASSO
#VSSUMMIT
DATABASE AS CODE
#VSSUMMIT
 Guardar todos os scripts executados no banco?
 Descrever o banco de dados como um código (scripts)?
DATABASE AS CODE
#VSSUMMIT
“Integrar o ciclo de vida do banco de dados
(dev, test, deploy, ops, etc)
ao ciclo de vida de toda aplicação”
BASEADO NO ESTADO (DECLARATIVO)
#VSSUMMIT
Dev Pro
d
Tes
t
“Como a base de dados deve parecer”
BASEADO EM TRANSIÇÕES DE
ESTADO
OU MIGRAÇÕES (IMPERATIVO)
#VSSUMMIT
Dev Test Prod
“Como a base de dados deve mudar”
DUAS ABORDAGENS
Estado Migrações
Dev Test Prod
Dev Prod
Qual a sua fonte de verdade?
Não existe bala de prata!
“Como a base de dados deve parecer”
“Como a base de dados deve muda
DEMO
#VSSUMMIT
 SQL Server Data Tools (state based)
 Redgate ReadyRoll (migrations based)
PROS E CONTRAS
Estado Migraçõ
esMelhor experiência de
desenvolvimento (resolução de
conflitos e merge);
Difícil lidar com migrações de
dados;Baixa coesão entre mudanças de
schema e mudanças em dados;
Dependência da ferramenta que
gera scripts;
Mais produtivo: scripts de
update gerados
automaticamente por uma
ferramenta;
Testes confiáveis;
Deployments repetíveis e
confiáveis;Alta coesão entre mudanças de
Schemas e Dados;
Desenvolvedores tem total
controle sobre o deployment;
Difícil de revisar migrações
quando o volume de
mudanças no banco é muito
grande;Difícil para lidar com conflitos;
Menos produtivo: trabalho
manual de gerar scripts de
update e assegurar sua ordem
CONCLUSÃO
Estado Migraçõ
es
“Bom para problemas com
“Bom para lidar com
migração de dados”
• Aplicações complexas que
possuem muita lógica de negócio
no banco de dados (procedures,
functions, etc);
• e/ou com muitas pessoas
trabalhando (merges
complicados);
• e/ou com muitas alterações em
banco;
• e/ou muitas dependências
externas;
• Aplicações que ainda não estão
• Base de dados
predominantemente cadastral
(sem logica de negocio, poucas
prodedures, functions, etc);
• Aplicações com baixa
frequência de mudança no
banco,
• ou mudanças
predominantemente refatoração
de tabelas e migração de dados,
• e/ou times de desenvolvimento
pequeno;
IGOR MACEDO
IGOR.MACEDO@ESX.COM.BR
#VSSUMMIT
MUITOOBRIGADO!

Mais conteúdo relacionado

Mais procurados

Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Tiago Marchetti Dolphine
 
Controlando cargas de trabalho com o resource governor no SQL Server 2014
Controlando cargas de trabalho com o resource governor no SQL Server 2014Controlando cargas de trabalho com o resource governor no SQL Server 2014
Controlando cargas de trabalho com o resource governor no SQL Server 2014Marcos Freccia
 
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
QCon SP 2016 -  WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...QCon SP 2016 -  WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...Tiago Marchetti Dolphine
 
Windows Server 2016 | Hyperconvergência
Windows Server 2016 | HyperconvergênciaWindows Server 2016 | Hyperconvergência
Windows Server 2016 | HyperconvergênciaFabio Hara
 
Windows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSWindows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSFabio Hara
 
Azure infrastructure as a service overview
Azure infrastructure as a service overviewAzure infrastructure as a service overview
Azure infrastructure as a service overviewFabio Hara
 
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...WSO2
 
Azure Stack | Visão Geral
Azure Stack | Visão GeralAzure Stack | Visão Geral
Azure Stack | Visão GeralFabio Hara
 
Sql server 2016 discovery day
Sql server 2016   discovery daySql server 2016   discovery day
Sql server 2016 discovery dayRoberto Fonseca
 
Banco de dados na nuvem e isso é possível
Banco de dados na nuvem e isso é possívelBanco de dados na nuvem e isso é possível
Banco de dados na nuvem e isso é possívelMarcos Freccia
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosRodolfo Fadino Junior
 
QCon SP 2017 - Reactive Microservices e a experiência do iFood
QCon SP 2017 - Reactive Microservices e a experiência do iFoodQCon SP 2017 - Reactive Microservices e a experiência do iFood
QCon SP 2017 - Reactive Microservices e a experiência do iFoodTiago Marchetti Dolphine
 
WSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e SuportesWSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e SuportesEdgar Silva
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETRenato Groff
 
TechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsTechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsAlan Carlos
 

Mais procurados (20)

Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
 
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
Microservices: uma abordagem para arquitetura de aplicações (Devcamp 2015)
 
Controlando cargas de trabalho com o resource governor no SQL Server 2014
Controlando cargas de trabalho com o resource governor no SQL Server 2014Controlando cargas de trabalho com o resource governor no SQL Server 2014
Controlando cargas de trabalho com o resource governor no SQL Server 2014
 
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
QCon SP 2016 -  WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...QCon SP 2016 -  WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
QCon SP 2016 - WebAPIs e delivery: Matando a fome de 1 milhão de pedidos men...
 
Windows Server 2016 | Hyperconvergência
Windows Server 2016 | HyperconvergênciaWindows Server 2016 | Hyperconvergência
Windows Server 2016 | Hyperconvergência
 
Windows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMSWindows Server 2016, System Center 2016 e OMS
Windows Server 2016, System Center 2016 e OMS
 
Azure infrastructure as a service overview
Azure infrastructure as a service overviewAzure infrastructure as a service overview
Azure infrastructure as a service overview
 
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...
WSO2 API Forum Brazil - Substituindo Servidores de Aplicações por Arquitetura...
 
Azure Stack | Visão Geral
Azure Stack | Visão GeralAzure Stack | Visão Geral
Azure Stack | Visão Geral
 
Sql server 2016 discovery day
Sql server 2016   discovery daySql server 2016   discovery day
Sql server 2016 discovery day
 
Banco de dados na nuvem e isso é possível
Banco de dados na nuvem e isso é possívelBanco de dados na nuvem e isso é possível
Banco de dados na nuvem e isso é possível
 
Desenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São CarlosDesenvolvimento web com .NET Core - Meetup São Carlos
Desenvolvimento web com .NET Core - Meetup São Carlos
 
Microservices
MicroservicesMicroservices
Microservices
 
QCon SP 2017 - Reactive Microservices e a experiência do iFood
QCon SP 2017 - Reactive Microservices e a experiência do iFoodQCon SP 2017 - Reactive Microservices e a experiência do iFood
QCon SP 2017 - Reactive Microservices e a experiência do iFood
 
Architecture performance using micro services
Architecture performance using micro servicesArchitecture performance using micro services
Architecture performance using micro services
 
Windows 2008 - Novos Recursos
Windows 2008 - Novos RecursosWindows 2008 - Novos Recursos
Windows 2008 - Novos Recursos
 
WSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e SuportesWSO2 - Portfólio de Produtos, Soluções e Suportes
WSO2 - Portfólio de Produtos, Soluções e Suportes
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NETArquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
 
DevTalk 08/2019
DevTalk 08/2019DevTalk 08/2019
DevTalk 08/2019
 
TechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsTechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOps
 

Semelhante a DevOps e gestão de dados SQL Server

Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoraçãoelliando dias
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_jsgustavobeavis
 
Migrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseMigrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseRoberto Fonseca
 
Boas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azureBoas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azureMarcondes Alexandre
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Finaljcaroso
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoCaio Candido
 
Refactoring Databases
Refactoring DatabasesRefactoring Databases
Refactoring DatabasesIsmael
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azuretdc-globalcode
 
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...Fabrízio Mello
 
Tendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareTendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareNorberto Santos
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Eric Gallardo
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRElvis Rocha
 
Introdução ao AWS Database Migration Service
Introdução ao AWS Database Migration ServiceIntrodução ao AWS Database Migration Service
Introdução ao AWS Database Migration ServiceAmazon Web Services LATAM
 
Migrations com Entity Framework Core
Migrations com Entity Framework CoreMigrations com Entity Framework Core
Migrations com Entity Framework CoreCaio Lorensetti
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - TreinamentoCaio Lima
 
O fator manutenção no ciclo de vida de data warehouse
O fator manutenção no ciclo de vida de data warehouseO fator manutenção no ciclo de vida de data warehouse
O fator manutenção no ciclo de vida de data warehouseEderson Schwaickardt
 
Azure SQL DataWarehouse
Azure SQL DataWarehouseAzure SQL DataWarehouse
Azure SQL DataWarehouseVitor Fava
 

Semelhante a DevOps e gestão de dados SQL Server (20)

Banco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e RefatoraçãoBanco de Dados Ágeis e Refatoração
Banco de Dados Ágeis e Refatoração
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_js
 
Migrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure DatabaseMigrando Aplicações para o SQL Azure Database
Migrando Aplicações para o SQL Azure Database
 
Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0
 
Boas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azureBoas práticas para migração do sql server para o windows azure
Boas práticas para migração do sql server para o windows azure
 
Tesi Dados Final
Tesi Dados FinalTesi Dados Final
Tesi Dados Final
 
MIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como CódigoMIT DevOps IaC - Infra como Código
MIT DevOps IaC - Infra como Código
 
Trabalho de sgbd
Trabalho de sgbdTrabalho de sgbd
Trabalho de sgbd
 
Refactoring Databases
Refactoring DatabasesRefactoring Databases
Refactoring Databases
 
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on AzureTDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
TDC2018SP | Trilha Arq .Net - Serverless Reactive Programming on Azure
 
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
 
Tendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de SoftwareTendências e Dicas para o Desenvolvimento de Software
Tendências e Dicas para o Desenvolvimento de Software
 
Treinamento ASP.NET 2014
Treinamento ASP.NET 2014Treinamento ASP.NET 2014
Treinamento ASP.NET 2014
 
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BRJBoss Fuse Service Works - O Fuse além da integração - PT-BR
JBoss Fuse Service Works - O Fuse além da integração - PT-BR
 
Introdução ao AWS Database Migration Service
Introdução ao AWS Database Migration ServiceIntrodução ao AWS Database Migration Service
Introdução ao AWS Database Migration Service
 
Migrations com Entity Framework Core
Migrations com Entity Framework CoreMigrations com Entity Framework Core
Migrations com Entity Framework Core
 
jCompany for SAP NetWeaver
jCompany for SAP NetWeaverjCompany for SAP NetWeaver
jCompany for SAP NetWeaver
 
ODI Series - Treinamento
ODI Series - TreinamentoODI Series - Treinamento
ODI Series - Treinamento
 
O fator manutenção no ciclo de vida de data warehouse
O fator manutenção no ciclo de vida de data warehouseO fator manutenção no ciclo de vida de data warehouse
O fator manutenção no ciclo de vida de data warehouse
 
Azure SQL DataWarehouse
Azure SQL DataWarehouseAzure SQL DataWarehouse
Azure SQL DataWarehouse
 

Mais de Igor Rosa Macedo

Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Igor Rosa Macedo
 
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...Igor Rosa Macedo
 
Desmistificando Git para usuários TFVC
Desmistificando Git para usuários TFVCDesmistificando Git para usuários TFVC
Desmistificando Git para usuários TFVCIgor Rosa Macedo
 
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...Igor Rosa Macedo
 
DevOps Summit 2016 - Release Management em Ambientes Híbridos
DevOps Summit 2016 - Release Management em Ambientes HíbridosDevOps Summit 2016 - Release Management em Ambientes Híbridos
DevOps Summit 2016 - Release Management em Ambientes HíbridosIgor Rosa Macedo
 
Alm connection - Maio 2014
Alm connection - Maio 2014Alm connection - Maio 2014
Alm connection - Maio 2014Igor Rosa Macedo
 
SemanAcademicaUFUMonteCarmelo
SemanAcademicaUFUMonteCarmeloSemanAcademicaUFUMonteCarmelo
SemanAcademicaUFUMonteCarmeloIgor Rosa Macedo
 

Mais de Igor Rosa Macedo (10)

Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017
 
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
SonarQube - Como avaliar seus fornecedores e garantir a qualidade de suas ent...
 
DevChamps 2016
DevChamps 2016DevChamps 2016
DevChamps 2016
 
QA Ninja Conference 2017
QA Ninja Conference 2017QA Ninja Conference 2017
QA Ninja Conference 2017
 
Desmistificando Git para usuários TFVC
Desmistificando Git para usuários TFVCDesmistificando Git para usuários TFVC
Desmistificando Git para usuários TFVC
 
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...
TFS Extensions: Novas possibilidades para integrar suas iniciativas de DevOps...
 
DevOps Summit 2016 - Release Management em Ambientes Híbridos
DevOps Summit 2016 - Release Management em Ambientes HíbridosDevOps Summit 2016 - Release Management em Ambientes Híbridos
DevOps Summit 2016 - Release Management em Ambientes Híbridos
 
Alm connection - Maio 2014
Alm connection - Maio 2014Alm connection - Maio 2014
Alm connection - Maio 2014
 
SemanAcademicaUFUMonteCarmelo
SemanAcademicaUFUMonteCarmeloSemanAcademicaUFUMonteCarmelo
SemanAcademicaUFUMonteCarmelo
 
DatabaseCI_ALMSummit2014
DatabaseCI_ALMSummit2014DatabaseCI_ALMSummit2014
DatabaseCI_ALMSummit2014
 

DevOps e gestão de dados SQL Server

  • 1. IGOR MACEDO IGOR.MACEDO@ESX.COM.BR DevOps: Gestão e publicação de Dados SQL Server #VSSUMMIT
  • 2. O QUE É DEVOPS? #VSSUMMIT “DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.”
  • 4. CENÁRIOS COMUNS #VSSUMMIT Mudanças em banco de dados:  Não fazem parte do pipeline de deployment  Possuem um processo de deployment diferente
  • 5. DATABASE É UM COMPONENTE PECULIAR #VSSUMMIT Definição (estrutura ) Estado (dados persistentes) +
  • 7. DATABASE AS CODE #VSSUMMIT  Guardar todos os scripts executados no banco?  Descrever o banco de dados como um código (scripts)?
  • 8. DATABASE AS CODE #VSSUMMIT “Integrar o ciclo de vida do banco de dados (dev, test, deploy, ops, etc) ao ciclo de vida de toda aplicação”
  • 9. BASEADO NO ESTADO (DECLARATIVO) #VSSUMMIT Dev Pro d Tes t “Como a base de dados deve parecer”
  • 10. BASEADO EM TRANSIÇÕES DE ESTADO OU MIGRAÇÕES (IMPERATIVO) #VSSUMMIT Dev Test Prod “Como a base de dados deve mudar”
  • 11. DUAS ABORDAGENS Estado Migrações Dev Test Prod Dev Prod Qual a sua fonte de verdade? Não existe bala de prata! “Como a base de dados deve parecer” “Como a base de dados deve muda
  • 12. DEMO #VSSUMMIT  SQL Server Data Tools (state based)  Redgate ReadyRoll (migrations based)
  • 13. PROS E CONTRAS Estado Migraçõ esMelhor experiência de desenvolvimento (resolução de conflitos e merge); Difícil lidar com migrações de dados;Baixa coesão entre mudanças de schema e mudanças em dados; Dependência da ferramenta que gera scripts; Mais produtivo: scripts de update gerados automaticamente por uma ferramenta; Testes confiáveis; Deployments repetíveis e confiáveis;Alta coesão entre mudanças de Schemas e Dados; Desenvolvedores tem total controle sobre o deployment; Difícil de revisar migrações quando o volume de mudanças no banco é muito grande;Difícil para lidar com conflitos; Menos produtivo: trabalho manual de gerar scripts de update e assegurar sua ordem
  • 14. CONCLUSÃO Estado Migraçõ es “Bom para problemas com “Bom para lidar com migração de dados” • Aplicações complexas que possuem muita lógica de negócio no banco de dados (procedures, functions, etc); • e/ou com muitas pessoas trabalhando (merges complicados); • e/ou com muitas alterações em banco; • e/ou muitas dependências externas; • Aplicações que ainda não estão • Base de dados predominantemente cadastral (sem logica de negocio, poucas prodedures, functions, etc); • Aplicações com baixa frequência de mudança no banco, • ou mudanças predominantemente refatoração de tabelas e migração de dados, • e/ou times de desenvolvimento pequeno;