iltam database version control

23
www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY CONTROL.DEPLOY.PROTECT.C OMPLY Database Version Control ILTAM – January 2013

Upload: uridbmaestro

Post on 11-May-2015

174 views

Category:

Technology


0 download

DESCRIPTION

Presentation on dbMaestro TeamWork - a Database Change Management solution with the unique Database Change Policy enforcement and supports all development methods such as waterfall, agile and DevOps

TRANSCRIPT

Page 1: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

CONTROL.DEPLOY.PROTECT.COMPLY

Database Version Control

ILTAM – January 2013

Page 2: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

About dbMaestrodbMaestro provides the first and only DCM (Database Change Management) solution allowing IT organizations to improve the service provided to the business by adopting best practices methodologies to the Database Tier. Leveraging unique technology that enforces Change Policy and Deployment automation, dbMaestro enables the Development & IT teams to mitigate deployment and development risks and increase team collaboration, thus keep availability of the main services, while increase the updates rate.

Introduction

Uri Margalit: Director of Products at dbMaestro +20 years experience in enterprise management R&D Director at Precise / VERITAS / Symantec

Page 3: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

dbMaestro: Orchestrate Your DatabaseStreamline Database Development Process

Reduce DatabaseDevelopment Costs

Instill Change Policy Enforcement

Mitigate Deployment Risks

Automate Deployment Process

Reduce Deployment cost by 95%

Page 4: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

4

DCM DCM – Database Change Management Part of ALM (Application Lifecycle Management)

solutions

Page 5: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

5

Risks of not Having a DCM Lack of Visibility into the Lifecycle of Releases Problems with Concurrent Database Development Inconsistent Database Environments Little or No Capability for Automated Tasks Meeting Release Schedules with Desired Quality Less Agility in Responding to Scope Changes

Page 6: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

Version Control Concepts Structure of repository & gained functionality

6

File based Separation of Working

environment and repository File Locking Check out / in Baseline Tag / Label Head / Latest Rollback Compare / Merge Deploy / Build

Page 7: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

SCM Concepts in the database world Traditional SCM concept doesn’t fit the Database

world… A database is not a collection of files DDL (Data Definition Language) DML (Data Manipulation Language) DDL extraction No debug environment Content ? Database duplication – constant synchronization

7

Page 8: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

SCM Concepts in the database world Moving changes… Development to QA, integration and production

Code – simple file copy & registration DB objects cant just be “moved” – content… What do we do with db content changes ?

So the whole thing was neglected for years...

Manual process where created to deal with real life situations

8

Page 9: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

9

Without DCM - Two Isolated Processes

Check-Out Script

Modify Script

Get updated Script from DB

Check-In Script

Compile Scriptin DB

Debug Scriptin DB

Version Control Process Development Process

Page 10: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

10

DATABASE ?!Any Change Tested Over Night

ALM without DCM

SCM Native CodeBusiness

Req. Integration

Conflict code Resolver

Automated Deployment

Continuous Integration

File Based Version Control: Java, .NET, C#, C++

Change Management Systems

Correlate Change with Activity

Merge Code

Agile

Quick Iterations

Reduce Overhead

Increase Team Satisfaction

Page 11: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

11

Development & Version Control Process

With DCM - One Enforced Process

Check-Out Object

Modify Object in DB

Run Applications’

Tests

Check-In Object

Page 12: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

12

ALM with DCM

SCM Native CodeDCM

Database Code

Business Req.

Integration

Conflict code Resolver

Automated Deployment

Continuous Integration

Any Change Tested Over Night

File Based Version Control: Java, .NET, C#, C++

Change Management Systems

Correlate Change with Activity

Merge Code

MergeDatabaseChanges

Agile

Quick Iterations

Reduce Overhead

Increase Team Satisfaction

Database Version Control

Change Policy

Automatic Deployment Script

Page 13: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

13

Benefits - Development Database Changes Repository Following SCM methods (Check-Out/Check-In) All Changes are documented Control Who can do What, Where, When & Why

Page 14: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

14

Benefits - Deployment Integrated Deployment Engine Business Level Audit Roles & Responsibilities Enforcement

Page 15: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

15

Demo

Page 16: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

16

Change Policy Enforcement

Page 17: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

17

Impact Analysis

Page 18: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

18

Conflict Resolver - Code

Page 19: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

19

Conflict Resolver - Content

Page 20: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

20

Deployment Script

Page 21: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

21

Baseline in Deployments

Source vs. Target

Action

= No Action

≠ ?

Source vs. Baseline

Target vs. Baseline

Action

= = No Action

≠ = Override

= ≠ Ignore

≠ ≠ Merge

You do not have all the information

With Baseline the unknown is now known

Page 22: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

22

SummaryBuild a good Safety NetReduce Deployment issues Control Your Database DevelopmentKnow Who did What, Where, When and WhyAutomate Deployments

Page 23: Iltam database version control

www.dbmaestro.com CONTROL.DEPLOY.PROTECT.COMPLY

23

Thank You

Thank you for your time

Uri [email protected]