SlideShare una empresa de Scribd logo
An Evening with…

Arkho Innova Meetup Series
• Un espacio para compartir experiencias
y conocimiento
• Un espacio para hacer relaciones entre
equipos con intereses afines
• Un espacio para pasarla bien
Gracias por su asistencia!!!
Overview
• ¿Qué es Liquibase?
• Objetivos y funcionalidades principales
• Equipo de desarrollo trabajando con Liquibase y
su proceso de adaptación.
• Visión del equipo una vez adoptada la tecnología.
• Ejemplo 1
• Ejemplo 2
• Best Practices
• Resumen
¿Qué es Liquibase?
Gestión de cambios en
una base de datos
An evening with... Liquidbase
Código
¿Qué ocurre cuando hay
cambios en la base de datos?
Error SQL..?
Con este cambio
quedo como Rey
Me mandan el script SQL
con los cambios please
Database changes
Primeros pasos
Liquibase desde línea de comando
• Bajar liquibase desde 

http://www.liquibase.org/download/
index.html
• Extraer Zip e instalar liquibase para
ejecutarlo por línea de comandos.



$ liquibase —help
Liquibase desde Maven
• Bajar liquibase desde 

http://www.liquibase.org/download/index.html
• Extraer Zip e instalar liquibase para ejecutarlo por línea de comandos.



$ mvn liquibase:<comando>
Archivo changelog.xml
• Bitácora de cambios
• Id del cambio
• Autor del cambio
• Cambio realizado
• Otros parámetros
Ejemplo changelog.xml
Parámetros changelog + usados
id ID del cambio. Se recomienda utilizar YYYYMMDD+num
author Nombre de quien realiza el cambio.
dbms Motor de base de datos soportado que se está utilizando.
runAlways Ejecuta este cambio siempre. Incluso si ya fue ejecutado previamente.
runOnChange Ejecuta el cambio la primera vez y luego cada vez que detecte que ese valor fue modificado.
failOnError Ante un error detiene la ejecución del changelog y arroja un error.
Rollback
Equipo de desarrollo y el cambio de
paradigma
Nuestra experiencia
• Tiempo de comprensión
• Tiempo de adaptación
• Resistencia al cambio
• Solución de conflictos
• Felicidad
Tiempo de comprensión
• Lo que demora el equipo en comprender el
funcionamiento de la herramienta.
• Curva de aprendizaje logarítmica
Tiempo de adaptación
• El equipo se debe acostumbrar a trabajar con la herramienta.
• Resistencia al cambio
Resistencia al cambio
• Cuesta no realizar las modificaciones
directamente en la base de datos.
• Se acostumbra a cambiar algo hasta
que funcione sin hacer un análisis
previo real de lo que se requiere.
Solución de conflictos
• Cambié algo en la base de datos, luego hice el cambio en mi
changelog.
• Me arroja error. ¿Qué hago?
Felicidad
• El equipo se compenetra en el
uso de la herramienta.
• Los deployments luego de un
cambio son transparentes
• Levantar un ambiente se hace
cada vez más fácil.
Visión actual del equipo
An evening with... Liquidbase
Ejemplo 1
Primer encuentro con liquibase
Ejemplo 1
• Liquibase por línea de comandos
• Generar chagelog inicial
• Generar modificaciones en la base de datos
Ejemplo 2
Primer encuentro con liquibase
Ejemplo 2
• Iniciar proyecto con Liquibase desde cero.
• Liquibase y Maven
• Liquibase como herramienta de integración continua.
An evening with... Liquidbase
Changelogs por releases
• Ayuda a mantener ordenado el
versionamiento (legibilidad)
• Fácil encontrar cambios hechos
en alguna etapa del proyecto
ChangeSets eficientes
• Ayuda a mantener ordenadas
las modificaciones dentro del
changelog (legibilidad)
• Fácil estructuración de
rollbacks
Uso eficiente de id y comment
• Mejora la solución de
problemas
• Aclara la lectura de los
cambios para todo el equipo
Resumen
Beneficios
• Se mantiene un historial de todos los cambios realizados en la base
de datos.
• Se hace más eficiente el trabajo en equipo.
• Levantar un ambiente ya sea local o remoto se simplifica de manera
enorme.
• Disminuye la cantidad de involucrados en un proceso de deploy.
• Importante apoyo en el proceso de migración de una base de datos a
otra.
Desventajas
Desventajas liquibase
Código fuente
• https://github.com/harenas/meetup-liquibase-ejemplo-1
• https://github.com/harenas/meetup-liquibase-ejemplo-2
An Evening with…

Arkho Innova Meetup Series

Más contenido relacionado

PDF
Escalabilidad y alto rendimiento con Symfony2
Ricard Clau
 
PDF
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Jordi Llonch
 
PPTX
Docker y todo eso... más o menos
Eduard Tomàs
 
PDF
Symfony2 Introducción
strate
 
PPTX
Kubernetes: Do's, don'ts and why's
Eduard Tomàs
 
PDF
Introduccion a Elastic Beanstalk AWS Roadshow Bogota Mexico
Hermann Pais
 
PDF
[El comercio]php zend framework (speech)
Ernesto Anaya
 
PPTX
V2 presentacion jclic dia 1 24052021
JULIO CORDOVA
 
Escalabilidad y alto rendimiento con Symfony2
Ricard Clau
 
DeSymfonyDay 2014 - To mock or not to mock - Spanish
Jordi Llonch
 
Docker y todo eso... más o menos
Eduard Tomàs
 
Symfony2 Introducción
strate
 
Kubernetes: Do's, don'ts and why's
Eduard Tomàs
 
Introduccion a Elastic Beanstalk AWS Roadshow Bogota Mexico
Hermann Pais
 
[El comercio]php zend framework (speech)
Ernesto Anaya
 
V2 presentacion jclic dia 1 24052021
JULIO CORDOVA
 

Similar a An evening with... Liquidbase (20)

PDF
Introduccion a netbeans
Alfonso Sanchez
 
PDF
Manual de Netbeans
Gaby Villarreal
 
PDF
1 introduccioi81n-a-netbeans
Orlandin Medina
 
PDF
introduccion-a-netbeans
Mauricio Benalcazar Rey
 
PDF
1 introduccioi81n-a-netbeans
Mariela Beatriz Rivas Gonzàlez
 
PDF
1 introduccioi81n-a-netbeans
Orlando Gómez
 
PPTX
Tutorial neatbeans(3)
Francisco Javier Altamirano
 
PPTX
Tutorial neatbeans(3)
Diuxy Martinez
 
PDF
Manual netbeans_2
Beydasanchezhernandez
 
PDF
manual de netbeans
ariannalizeeth
 
PDF
MANUAL
arecerv
 
PDF
manual 1
ariannalizeeth
 
PDF
MANUAL NETBEANS 2
ariannalizeeth
 
PDF
MANUAL NETBEANS
ariannalizeeth
 
PDF
Netbeans manual
Esmeralda Salvador
 
PDF
1 introduccioi81n-a-netbeans
Hiram Yasser Leija Salas
 
PDF
Manualnetbeans2 141006101152-conversion-gate02jjj
Joselyn Aguirre
 
PDF
MANUAL DE NETBEANS
Alfa Mercado
 
PDF
Manualnetbeans2 141
Joselyn Aguirre
 
Introduccion a netbeans
Alfonso Sanchez
 
Manual de Netbeans
Gaby Villarreal
 
1 introduccioi81n-a-netbeans
Orlandin Medina
 
introduccion-a-netbeans
Mauricio Benalcazar Rey
 
1 introduccioi81n-a-netbeans
Mariela Beatriz Rivas Gonzàlez
 
1 introduccioi81n-a-netbeans
Orlando Gómez
 
Tutorial neatbeans(3)
Francisco Javier Altamirano
 
Tutorial neatbeans(3)
Diuxy Martinez
 
Manual netbeans_2
Beydasanchezhernandez
 
manual de netbeans
ariannalizeeth
 
MANUAL
arecerv
 
manual 1
ariannalizeeth
 
MANUAL NETBEANS 2
ariannalizeeth
 
MANUAL NETBEANS
ariannalizeeth
 
Netbeans manual
Esmeralda Salvador
 
1 introduccioi81n-a-netbeans
Hiram Yasser Leija Salas
 
Manualnetbeans2 141006101152-conversion-gate02jjj
Joselyn Aguirre
 
MANUAL DE NETBEANS
Alfa Mercado
 
Manualnetbeans2 141
Joselyn Aguirre
 
Publicidad

Más de Arkhotech (17)

PDF
An Evening with Agile lean design_thinking
Arkhotech
 
PDF
An Evening with Meetup microservices-s2
Arkhotech
 
PDF
An evening with...Rust
Arkhotech
 
PDF
An Evening with... Go Lang
Arkhotech
 
PDF
An evening with... Docker
Arkhotech
 
PDF
An evening with "Rework" - Reinventando nuestra forma de trabajar
Arkhotech
 
PDF
An evening with... Microservices - Session 1
Arkhotech
 
PDF
An evening with... Scrum
Arkhotech
 
PDF
An evening with... DevOps
Arkhotech
 
PDF
An evening with ... Ionic Framework Meetup
Arkhotech
 
PDF
An evening with... BPM redhat Meetup
Arkhotech
 
PDF
An evening with... Continuous Integration and Bamboo intro Meetup
Arkhotech
 
PDF
An evening with... Agile Metrics Meetup
Arkhotech
 
PDF
An evening with... Apache hadoop Meetup
Arkhotech
 
PPTX
An evening with... Polymer Intro Meetup
Arkhotech
 
PDF
An evening with... Oracle Endeca Guided Search & Experience Manager Meetup
Arkhotech
 
PDF
An evening with... No SQL Meetup
Arkhotech
 
An Evening with Agile lean design_thinking
Arkhotech
 
An Evening with Meetup microservices-s2
Arkhotech
 
An evening with...Rust
Arkhotech
 
An Evening with... Go Lang
Arkhotech
 
An evening with... Docker
Arkhotech
 
An evening with "Rework" - Reinventando nuestra forma de trabajar
Arkhotech
 
An evening with... Microservices - Session 1
Arkhotech
 
An evening with... Scrum
Arkhotech
 
An evening with... DevOps
Arkhotech
 
An evening with ... Ionic Framework Meetup
Arkhotech
 
An evening with... BPM redhat Meetup
Arkhotech
 
An evening with... Continuous Integration and Bamboo intro Meetup
Arkhotech
 
An evening with... Agile Metrics Meetup
Arkhotech
 
An evening with... Apache hadoop Meetup
Arkhotech
 
An evening with... Polymer Intro Meetup
Arkhotech
 
An evening with... Oracle Endeca Guided Search & Experience Manager Meetup
Arkhotech
 
An evening with... No SQL Meetup
Arkhotech
 
Publicidad

Último (10)

PDF
UML (Lenguaje unificado Modelado) como estandar para proyectos
somespark13
 
PPTX
Los Atributos de calidad del software.pptx
DanielMartinez382863
 
PPT
Cap. 2.DeSistemasOperativosMonopuestoppt
davidperez4125081
 
PPTX
QUINTO BÁSICO 5 DE MAYO- clases de algoritmos.pptx
sotosanmartinfrancis
 
PPTX
La Inteligencia Artificial en la Vida Cotidiana
Romeo Santos
 
PPT
Cap. 1DESistemasOperativosMonopuesto.ppt
davidperez4125081
 
PDF
Descargar Micromundos Pro y proceso de instalación
AngelitoDeLaNoche
 
PPTX
Taller de ROBOTICA- clase sobre arduino - 1.pptx
sotosanmartinfrancis
 
PPTX
Algoritmos de localizacion de Robots móviles
yrosascunam
 
PPTX
Evaluación de la arquitectura de software.pptx
DanielMartinez382863
 
UML (Lenguaje unificado Modelado) como estandar para proyectos
somespark13
 
Los Atributos de calidad del software.pptx
DanielMartinez382863
 
Cap. 2.DeSistemasOperativosMonopuestoppt
davidperez4125081
 
QUINTO BÁSICO 5 DE MAYO- clases de algoritmos.pptx
sotosanmartinfrancis
 
La Inteligencia Artificial en la Vida Cotidiana
Romeo Santos
 
Cap. 1DESistemasOperativosMonopuesto.ppt
davidperez4125081
 
Descargar Micromundos Pro y proceso de instalación
AngelitoDeLaNoche
 
Taller de ROBOTICA- clase sobre arduino - 1.pptx
sotosanmartinfrancis
 
Algoritmos de localizacion de Robots móviles
yrosascunam
 
Evaluación de la arquitectura de software.pptx
DanielMartinez382863
 

An evening with... Liquidbase