Enabling Continuous Delivery with Database Practices

Size: px
Start display at page:

Download "Enabling Continuous Delivery with Database Practices"

Transcription

1 Enabling Continuous Delivery with Database Practices Pramod ThoughtWorks Inc.

2 Agenda Why Continuous Delivery Collaboration with the data team Automation for data Refactoring databases Deploying database changes

3 Why Continuous Delivery?

4 To get fast feedback from users, release frequently

5 Reduce risk of releasing

6 Learning and responding to customer needs is critical

7 Achieve Continuous Delivery

8 Close collaboration between everyone involved in delivery

9 Extensive automation of all parts involved in delivery process

10 Reduce the gap between development and operations

11 How does continuous delivery apply to databases?

12 Collaboration techniques

13 Pair the DBA s and Developers

14

15 Version control all database scripts and artifacts

16

17 Automation techniques

18 Let developers provision application database

19

20

21

22

23

24

25

26

27

28

29

30

31 Andy Jai Laptop/Desktop Application Database

32 Continuously Integrate database changes

33 Database changes applied by DBA Team Check in application code and database migration scripts Local dev environment Integration environment PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build Dev Database

34 Check in application code and database migration scripts Local dev environment Integration environment PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build Dev Database

35 Check in application code and database migration scripts Local dev environment Integration environment Migration scripts (DBA) PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build

36 Check in application code and database migration scripts Local dev environment Migration scripts (DBA) Migration scripts Integration environment PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build Integration Database

37 Check in application code and database migration scripts Local dev environment Migration scripts (DBA) Migration scripts Integration environment PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build Integration Database

38 Check in application code and database migration scripts Local dev environment Migration scripts (DBA) Migration scripts Integration environment PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine PROD UAT QA Environment Dev DB Update and build Integration Database Apply migration scripts

39 Check in application code and database migration scripts Local dev environment Migration scripts (DBA) Migration scripts Integration environment Package Migration scripts PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine Artifacts War Jar PROD UAT QA Environment Dev DB Update and build Integration Database Apply migration scripts

40 Check in application code and database migration scripts Local dev environment Migration scripts (DBA) Migration scripts Integration environment Package Migration scripts Apply Migration scripts PROD UAT QA ANT Maven Gradle Rake Source Control Continuous Integration Engine Artifacts War Jar PROD UAT QA Environment Dev DB Update and build Integration Database Apply migration scripts War Jar

41 Benefits of CI with databases

42 Benefits of CI with databases Test application code and database at one place

43 Benefits of CI with databases Test application code and database at one place Generate code and database artifacts

44 Benefits of CI with databases Test application code and database at one place Generate code and database artifacts Integrate application and database changes in an independent environment

45 Benefits of CI with databases Test application code and database at one place Generate code and database artifacts Integrate application and database changes in an independent environment Show current state of application and database to all

46 DB artifacts in CI application artifact for build <<n>> database artifact for build <<n>>

47 Deployment

48 Deployment Database migration/upgrade should be a development time task not deployment time task

49 Deployment Database migration/upgrade should be a development time task not deployment time task Package all the migration scripts, during Continuous Integration cycle

50 Deployment Database migration/upgrade should be a development time task not deployment time task Package all the migration scripts, during Continuous Integration cycle Apply the migration scripts

51 Deployment Database migration/upgrade should be a development time task not deployment time task Package all the migration scripts, during Continuous Integration cycle Apply the migration scripts Deploy frequently to reduce risk

52 Database refactoring

53

54 A database refactoring is a small change to your database schema (the DDL, data, and DB code) which improves its design without changing its semantics.

55 A database refactoring is a small change to your database schema (the DDL, data, and DB code) which improves its design without changing its semantics.

56 A database refactoring is a small change to your database schema (the DDL, data, and DB code) which improves its design without changing its semantics. A database refactoring improves its design while retaining both its behavioral and informational semantics.

57

58 Timeline of Change

59 Timeline of Change Deploy new changes, migrate data, put in scaffolding code refactoring{ Start Implement the Expand

60 Timeline of Change Deploy new changes, migrate data, put in scaffolding code refactoring{ Start Implement the Transition Transition Period (old and new){ Expand

61 Timeline of Change Deploy new changes, migrate data, put in scaffolding code Remove old schema, scaffolding code Start Transition End refactoring{ Implement the Transition Period (old and new){ completed{ Refactoring Expand Contract

62 Keeping Old and New alive

63 Keeping Old and New alive DB Should be able to handle multiple versions of the application

64 Keeping Old and New alive DB Should be able to handle multiple versions of the application Create Interfaces in the database

65 Keeping Old and New alive DB Should be able to handle multiple versions of the application Create Interfaces in the database Wrap tables with views

66 Keeping Old and New alive DB Should be able to handle multiple versions of the application Create Interfaces in the database Wrap tables with views Create calculated columns

67 Keeping Old and New alive DB Should be able to handle multiple versions of the application Create Interfaces in the database Wrap tables with views Create calculated columns Create triggers to sync data

68 Expand Contract an example

69 Expand Contract an example Start name = Pramod Sadalage

70 Expand Contract an example Start name = Pramod Sadalage Expand name = Pramod Sadalage firstname = Pramod lastname = Sadalage

71 Expand Contract an example Start name = Pramod Sadalage Expand name = Pramod Sadalage firstname = Pramod lastname = Sadalage Contract firstname = Pramod lastname = Sadalage

72 More on expand contract

73 More on expand contract Start name = Pramod Sadalage

74 More on expand contract Expand Start name = Pramod Sadalage Without data migration name = Pramod Sadalage firstname = null lastname = null With data migration name = Pramod Sadalage firstname = Pramod lastname = Sadalage

75 More on expand contract Expand Start name = Pramod Sadalage Without data migration name = Pramod Sadalage firstname = null lastname = null With data migration name = Pramod Sadalage firstname = Pramod lastname = Sadalage

76 More on expand contract Expand Start name = Pramod Sadalage Without data migration name = Pramod Sadalage firstname = null lastname = null With data migration name = Pramod Sadalage firstname = Pramod lastname = Sadalage

77 More on expand contract Expand Start name = Pramod Sadalage Without data migration name = Pramod Sadalage firstname = null lastname = null With data migration name = Pramod Sadalage firstname = Pramod lastname = Sadalage Contract firstname = Pramod lastname = Sadalage

78 Simple scenario - DBDeploy ALTER TABLE Customer ADD firstname VARCHAR2(60); ALTER TABLE Customer ADD lastname VARCHAR2(60);! --//@UNDO! ALTER TABLE Customer DROP COLUMN firstname VARCHAR2(60); ALTER TABLE Customer DROP COLUMN lastname VARCHAR2(60);

79 With synchronized data ALTER TABLE Customer ADD firstname VARCHAR2(60); ALTER TABLE Customer ADD lastname VARCHAR2(60); CREATE OR REPLACE TRIGGER SynchronizeName BEFORE INSERT OR UPDATE ON Customer REFERENCING OLD AS OLD NEW AS NEW FOR EACH ROW BEGIN IF :NEW.Name IS NULL THEN :NEW.Name := :NEW.firstname ' ' :NEW.lastname; END IF; IF :NEW.name IS NOT NULL THEN :NEW.firstname := extractfirstname(:new.name); :NEW.lastname := extractlastname(:new.name); END IF; END; /!

80 Migrate and Synchronize data ALTER TABLE Customer ADD firstname VARCHAR2(60); ALTER TABLE Customer ADD lastname VARCHAR2(60); UPDATE Customer set firstname = extractfirstname (name); UPDATE Customer set lastname = extractlastname (name);! CREATE OR REPLACE TRIGGER SynchronizeName BEFORE INSERT OR UPDATE. //@UNDO UPDATE Customer set name = firstname lastname WHERE name IS NULL; ALTER TABLE Customer DROP COLUMN firstname; ALTER TABLE Customer DROP COLUMN lastname;

81 Contract ALTER TABLE Customer DROP COLUMN name;! ALTER TABLE Customer ADD name VARCHAR2(120); UPDATE Customer set name = firstname lastname WHERE name IS NULL;

82 Contract ALTER TABLE Customer DROP SET UNUSED COLUMN name;! When drop takes forever! ALTER TABLE Customer ADD name VARCHAR2(120); UPDATE Customer set name = firstname lastname WHERE name IS NULL;

83 Keep legacy apps happy ALTER TABLE Customer DROP COLUMN name; ALTER TABLE CUSTOMER ADD (name AS (generatename (firstname,lastname)) );! ALTER TABEL Customer DROP COLUMN name; ALTER TABLE Customer ADD name VARCHAR2(120); UPDATE Customer set name = firstname lastname WHERE name IS NULL;! Virtual column in oracle is computed for every read

84 Another example

85 Migration script ALTER TABLE custordr rename to customerorder;! CREATE OR REPLACE VIEW custordr AS SELECT custordrid, ponumber, ordrdt, shipdate, sptoadid FROM customerorder ; --//@UNDO! DROP VIEW custordr; ALTER TABLE customerorder RENAME TO custordr;

86 data in migrations

87 data in migrations INSERT INTO businessunit ( businessunitid, name, regionid ) VALUES ( 22, 'John Doe Services', 1 ); INSERT INTO businessunit ( businessunitid, name, regionid ) VALUES ( 23, 'Bob Products', 1 ); INSERT INTO businessunit ( businessunitid, name, regionid ) VALUES ( 24, 'Carr Machinery', 1 );

88 data in migrations INSERT INTO currency ( currencyid, name, code ) VALUES ( 2, 'Canadian Dollar', 'CAD' ); INSERT INTO currency ( currencyid, name, code ) VALUES ( 3, 'Australian Dollar', 'AUD' ); INSERT INTO currency ( currencyid, name, code ) VALUES ( 4, 'EMU Euro', 'EUR' );

89 data in migrations DELETE FROM contact ct WHERE NOT EXISTS (SELECT 1 FROM customer p WHERE ct.contactid=p.contactid) and EXISTS (SELECT 1 FROM (SELECT customerid, COUNT(*) FROM contact WHERE customerid IS NOT NULL GROUP BY customerid HAVING COUNT(*) >1) ct2 WHERE ct.customerid=ct2.customerid);

90 Tips

91 Tips Large refactorings are risky

92 Tips Large refactorings are risky Sequence of many small refactorings can create the desired change

93 Tips Large refactorings are risky Sequence of many small refactorings can create the desired change Migration scripts should be checked in and run on local dev/ci/qa/uat/prod etc.

94 Tips Large refactorings are risky Sequence of many small refactorings can create the desired change Migration scripts should be checked in and run on local dev/ci/qa/uat/prod etc. Changes to data are also migrations

95 Tracking Changes

96 Tracking Changes Each change is a delta/migration script

97 Tracking Changes Each change is a delta/migration script Migration scripts are development time activity not deployment time tasks

98 Tracking Changes Each change is a delta/migration script Migration scripts are development time activity not deployment time tasks Package migration scripts for automated deployment

99 Tracking Changes Each change is a delta/migration script Migration scripts are development time activity not deployment time tasks Package migration scripts for automated deployment Same scripts for: developers, QA, UAT and Production

100 Continuous Delivery Deployment should be easy ant -propertyfile qa.properties upgrade ant -propertyfile live.properties upgrade

101

102 sadalage.com databaserefactoring.com

Nick Ashley TOOLS. The following table lists some additional and possibly more unusual tools used in this paper.

Nick Ashley TOOLS. The following table lists some additional and possibly more unusual tools used in this paper. TAKING CONTROL OF YOUR DATABASE DEVELOPMENT Nick Ashley While language-oriented toolsets become more advanced the range of development and deployment tools for databases remains primitive. How often is

More information

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation Practicing Continuous Delivery using Hudson Winston Prakash Oracle Corporation Development Lifecycle Dev Dev QA Ops DevOps QA Ops Typical turn around time is 6 months to 1 year Sprint cycle is typically

More information

Continuous integration for databases using

Continuous integration for databases using Continuous integration for databases using Red Wie Sie Gate die tools Microsoft SQL An overview Continuous integration for databases using Red Gate tools An overview Contents Why continuous integration?

More information

Continuous integration for databases using Red Gate tools

Continuous integration for databases using Red Gate tools Whitepaper Continuous integration for databases using Red Gate tools A technical overview Continuous Integration source control develop Dev Dev Dev build test Automated Deployment Deployment package Testing

More information

Oracle Database 10g Express

Oracle Database 10g Express Oracle Database 10g Express This tutorial prepares the Oracle Database 10g Express Edition Developer to perform common development and administrative tasks of Oracle Database 10g Express Edition. Objectives

More information

A basic create statement for a simple student table would look like the following.

A basic create statement for a simple student table would look like the following. Creating Tables A basic create statement for a simple student table would look like the following. create table Student (SID varchar(10), FirstName varchar(30), LastName varchar(30), EmailAddress varchar(30));

More information

Continuous integration for databases using Redgate tools

Continuous integration for databases using Redgate tools Continuous integration for databases using Redgate tools Wie Sie die Microsoft SQL Server Data Tools mit den Tools von Redgate ergänzen und kombinieren können An overview 1 Continuous integration for

More information

DBdeployer. About the Speaker: CJ Estel, Operations Database Engineer CoverMyMeds cj@cjestel.net

DBdeployer. About the Speaker: CJ Estel, Operations Database Engineer CoverMyMeds cj@cjestel.net DBdeployer About the Speaker: CJ Estel, Operations Database Engineer CoverMyMeds cj@cjestel.net Github: https://github.com/covermymeds/dbdeployer https://github.com/cjestel Company Tech Blog: https://www.scriptscribe.org/

More information

Create a Database Driven Application

Create a Database Driven Application Create a Database Driven Application Prerequisites: You will need a Bluemix account and an IBM DevOps Services account to complete this project. Please review the Registration sushi card for these steps.

More information

ATTACHMENT 6 SQL Server 2012 Programming Standards

ATTACHMENT 6 SQL Server 2012 Programming Standards ATTACHMENT 6 SQL Server 2012 Programming Standards SQL Server Object Design and Programming Object Design and Programming Idaho Department of Lands Document Change/Revision Log Date Version Author Description

More information

Agile Development and Schema Evolution. Schema Evolution Agile Development & Databases Case Study on the Herschel Project

Agile Development and Schema Evolution. Schema Evolution Agile Development & Databases Case Study on the Herschel Project Agile Development and Schema Evolution Schema Evolution Agile Development & Databases Case Study on the Herschel Project Schema Evolution Adapt the logical/physical data model of a database Reasons Performance

More information

Top 10 Oracle SQL Developer Tips and Tricks

Top 10 Oracle SQL Developer Tips and Tricks Top 10 Oracle SQL Developer Tips and Tricks December 17, 2013 Marc Sewtz Senior Software Development Manager Oracle Application Express Oracle America Inc., New York, NY The following is intended to outline

More information

SQL DBA Bundle. Data Sheet. Data Sheet. Introduction. What does it cost. What s included in the SQL DBA Bundle. Feedback for the SQL DBA Bundle

SQL DBA Bundle. Data Sheet. Data Sheet. Introduction. What does it cost. What s included in the SQL DBA Bundle. Feedback for the SQL DBA Bundle Data Sheet SQL DBA Bundle Data Sheet Introduction What does it cost What s included in the SQL DBA Bundle Feedback for the SQL DBA Bundle About Red Gate Software Contact information 2 2 3 7 8 8 SQL DBA

More information

ALM: Continuous Integration. José Almeida, Microsoft

ALM: Continuous Integration. José Almeida, Microsoft ALM: Continuous Integration José Almeida, Microsoft Agenda Issues Addressed Getting Started What is CI? CI Practices About Continuous Integration What is Continuous Integration? CI is the thread that ties

More information

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS @huibschoots & @mieldonkers INTRODUCTION Huib Schoots Tester @huibschoots Miel Donkers Developer @mieldonkers TYPICAL Experience with Continuous Delivery?

More information

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery!

Continuous Delivery for Alfresco Solutions. Satisfied customers and happy developers with!! Continuous Delivery! Continuous Delivery for Alfresco Solutions Satisfied customers and happy developers with!! Continuous Delivery! About me Roeland Hofkens #rhofkens roeland.hofkens@westernacher.com http://opensource.westernacher.com

More information

How To Create A Table In Sql 2.5.2.2 (Ahem)

How To Create A Table In Sql 2.5.2.2 (Ahem) Database Systems Unit 5 Database Implementation: SQL Data Definition Language Learning Goals In this unit you will learn how to transfer a logical data model into a physical database, how to extend or

More information

SQL Server Training Course Content

SQL Server Training Course Content SQL Server Training Course Content SQL Server Training Objectives Installing Microsoft SQL Server Upgrading to SQL Server Management Studio Monitoring the Database Server Database and Index Maintenance

More information

<Insert Picture Here> Application Change Management and Data Masking

<Insert Picture Here> Application Change Management and Data Masking Application Change Management and Data Masking Jagan R. Athreya (jagan.athreya@oracle.com) Director of Database Manageability Oracle Corporation 1 The following is intended to outline

More information

Database Schema Deployment. Lukas Smith - lukas@liip.ch CodeWorks 2009 - PHP on the ROAD

Database Schema Deployment. Lukas Smith - lukas@liip.ch CodeWorks 2009 - PHP on the ROAD Database Schema Deployment Lukas Smith - lukas@liip.ch CodeWorks 2009 - PHP on the ROAD Agenda The Challenge ER Tools Diff Tools Data synchronisation Tools Logging Changes XML Formats SCM Tools Manual

More information

php tek 2006 in Orlando Florida Lukas Kahwe Smith smith@pooteeweet.org

php tek 2006 in Orlando Florida Lukas Kahwe Smith smith@pooteeweet.org Database Schema Deployment php tek 2006 in Orlando Florida Lukas Kahwe Smith smith@pooteeweet.org Agenda: The Challenge Diff Tools ER Tools Synchronisation Tools Logging Changes XML Formats SCM Tools Install

More information

Best Practices for Application Release & Deploy Success Integrating Datical and IBM UrbanCode Deploy. What is slowing my application releases?

Best Practices for Application Release & Deploy Success Integrating Datical and IBM UrbanCode Deploy. What is slowing my application releases? Best Practices for Application Release & Deploy Success Integrating Datical and IBM UrbanCode Deploy or What is slowing my application releases? Agenda Vision DevOps rapidly produce/deliver software products

More information

Oracle Database 12c Enables Quad Graphics to Quickly Migrate from Sybase to Oracle Exadata

Oracle Database 12c Enables Quad Graphics to Quickly Migrate from Sybase to Oracle Exadata Oracle Database 12c Enables Quad Graphics to Quickly Migrate from Sybase to Oracle Exadata Presented with Prakash Nauduri Technical Director Platform Migrations Group, Database Product Management Sep 30,

More information

Continuous Integration: Put it at the heart of your development

Continuous Integration: Put it at the heart of your development Continuous Integration: Put it at the heart of your development Susan Duncan Tools Product Manager, Oracle 1 Program Agenda What is CI? What Does It Mean To You? Make it Hudson Evolving Best Practice For

More information

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8 1 Copyright 2011, Oracle and/or its affiliates. All rights The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated

More information

Phase Name 1 Initiation. 2 Requirements. 3 Design

Phase Name 1 Initiation. 2 Requirements. 3 Design No Phase Name 1 Initiation 2 Requirements 3 Design 4 Pre-Migration 5 Pre-Migrate 6 Pre-Migrate 7 Migrate 8 Migrate 9 Migrate 10 Migrate 11 Post-Migrate 12 Post-Migrate 13 Post-Migrate 14 Post-Migrate 15

More information

Applying Agile SCM to Databases

Applying Agile SCM to Databases Applying Agile SCM to Databases Steve Berczuk, Steve Konieczka, Brad Appleton January 2004 Many applications have database components, and these components evolve in the same environment as your code and

More information

DbSchema Tutorial with Introduction in SQL Databases

DbSchema Tutorial with Introduction in SQL Databases DbSchema Tutorial with Introduction in SQL Databases Contents Connect to the Database and Create First Tables... 2 Create Foreign Keys... 7 Create Indexes... 9 Generate Random Data... 11 Relational Data

More information

Vladimir Bakhov AT-Consulting vbakhov@at-consulting.ru +7 (905) 7165446

Vladimir Bakhov AT-Consulting vbakhov@at-consulting.ru +7 (905) 7165446 Vladimir Bakhov AT-Consulting vbakhov@at-consulting.ru +7 (905) 7165446 Svetlana Panfilova AT-Consulting spanfilova@at-consulting.ru +7 (903) 1696490 Google group for this presentation is vobaks Source

More information

SQL Object Level Recovery Native 1.1

SQL Object Level Recovery Native 1.1 SQL Object Level Recovery Native 1.1 September 2009 Note: these pages apply to a version of this product that is not the current released version. For the latest support documentation, please see http://documentation.red-gate.com

More information

Solving the database deployment problem

Solving the database deployment problem Solving the database deployment problem with Visual Studio ALM and Database Lifecycle Management (DLM) 1 Contents Overview 4 Background: Application Lifecycle Management (ALM) and Microsoft Visual Studio

More information

Oracle Database 10g: Introduction to SQL

Oracle Database 10g: Introduction to SQL Oracle University Contact Us: 1.800.529.0165 Oracle Database 10g: Introduction to SQL Duration: 5 Days What you will learn This course offers students an introduction to Oracle Database 10g database technology.

More information

Database Build and Release will get started soon

Database Build and Release will get started soon #sqlinthecity Database Build and Release will get started soon Ernest Hwang Principal Software Engineer, Practice Fusion http://practicefusion.com/careers/ While you re waiting, check out SQL Prompt #sqlinthecity

More information

OBJECT PERSISTENCE AND AGILE SOFTWARE DEVELOPMENT

OBJECT PERSISTENCE AND AGILE SOFTWARE DEVELOPMENT OBJECT PERSISTENCE AND AGILE SOFTWARE DEVELOPMENT A White Paper by Dirk Bartels and Robert Benson sponsored by Versant Corporation 2009, Versant Corporation 255 Shoreline Drive, Suite 450 Redwood City,

More information

Tracking Database Schema Changes. Guidelines on database versioning using Devart tools

Tracking Database Schema Changes. Guidelines on database versioning using Devart tools Tracking Database Schema Changes Guidelines on database versioning using Devart tools Table of Contents Introduction...3 Typical Development Environments...3 Database versioning problems...4 Improving

More information

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS

SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS SUCCESFUL TESTING THE CONTINUOUS DELIVERY PROCESS @pascal_dufour & @hrietman INTRODUCTION Pascal Dufour Agile Tester @Pascal_Dufour Harald Rietman Developer Scrum Master @hrietman TYPICAL Experience with

More information

Introduction to SQL and database objects

Introduction to SQL and database objects Introduction to SQL and database objects IBM Information Management Cloud Computing Center of Competence IBM Canada Labs 1 2011 IBM Corporation Agenda Overview Database objects SQL introduction The SELECT

More information

Develop your Database using Database Projects from SQL Server Data Tools (SSDT)

Develop your Database using Database Projects from SQL Server Data Tools (SSDT) Develop your Database using Database Projects from SQL Server Data Tools (SSDT) Prepared for SQL Saturday #441 September 2015 Sep-15 1 Agenda Slides - 25 minutes What is SSDT and declarative development

More information

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification

Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries

More information

Tips and Tricks in Migrating SharePoint

Tips and Tricks in Migrating SharePoint Tips and Tricks in Migrating SharePoint Mike Maadarani SharePoint Architect 23 May 2015 Bronze Web Or Argent Merci à nos commanditaires! SharePint! Ce soir à 18h Le Trèfle, 3971 Rue Ontario E Welcome &

More information

HP Quality Center. Upgrade Preparation Guide

HP Quality Center. Upgrade Preparation Guide HP Quality Center Upgrade Preparation Guide Document Release Date: November 2008 Software Release Date: November 2008 Legal Notices Warranty The only warranties for HP products and services are set forth

More information

Zero Downtime Deployments with Database Migrations. Bob Feldbauer twitter: @bobfeldbauer email: bob.feldbauer@timgroup.com

Zero Downtime Deployments with Database Migrations. Bob Feldbauer twitter: @bobfeldbauer email: bob.feldbauer@timgroup.com Zero Downtime Deployments with Database Migrations Bob Feldbauer twitter: @bobfeldbauer email: bob.feldbauer@timgroup.com Deployments Two parts to deployment: Application code Database schema changes (migrations,

More information

Continuous Delivery Workshop

Continuous Delivery Workshop Continuous Delivery Workshop deployment pipelines Workshop materials created by Jez Humble, Martin Fowler, Tom Sulston, & Neal Ford deployment pipelines tests, synergistic practices, incremental deployment

More information

A Migration Methodology of Transferring Database Structures and Data

A Migration Methodology of Transferring Database Structures and Data A Migration Methodology of Transferring Database Structures and Data Database migration is needed occasionally when copying contents of a database or subset to another DBMS instance, perhaps due to changing

More information

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco

Delivery. Continuous. Jez Humble and David Farley. AAddison-Wesley. Upper Saddle River, NJ Boston Indianapolis San Francisco Continuous Delivery Jez Humble and David Farley AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Cape Town Sydney Tokyo Singapore

More information

Data Archiving - Solutions, Challenges, Considerations & 3rd Party Tools. Putting Customer First

Data Archiving - Solutions, Challenges, Considerations & 3rd Party Tools. Putting Customer First Data Archiving - Solutions, Challenges, Considerations & 3rd Party Tools Agenda Introduction Case Study Setup Data Archiving Process Limitations/Challenges Alternate Methods of Data Archiving Q&A Introduction

More information

Managing Third Party Databases and Building Your Data Warehouse

Managing Third Party Databases and Building Your Data Warehouse Managing Third Party Databases and Building Your Data Warehouse By Gary Smith Software Consultant Embarcadero Technologies Tech Note INTRODUCTION It s a recurring theme. Companies are continually faced

More information

Protecting Data Assets and Reducing Risk

Protecting Data Assets and Reducing Risk Protecting Data Assets and Reducing Risk Michelle Malcher Enterprise Database Security Oracle Open World 2014 2014 Wells Fargo Bank, N.A. All rights reserved. For public use. 1 Introduction Michelle Malcher

More information

Continuous Integration and Delivery. manage development build deploy / release

Continuous Integration and Delivery. manage development build deploy / release Continuous Integration and Delivery manage development build deploy / release test About the new CI Tool Chain One of the biggest changes on the next releases of XDK, will be the adoption of the New CI

More information

Continuous Delivery. Alejandro Ruiz

Continuous Delivery. Alejandro Ruiz Continuous Delivery Alejandro Ruiz True reality How the customer explained it How the project leader understood it How the analyst designed it How the programmer wrote it What the customer really needed

More information

DevOps for the Mainframe

DevOps for the Mainframe DevOps for the Mainframe Rosalind Radcliffe IBM Distinguished Engineer, Enterprise Modernization Solution Architect rradclif@us.ibm.com 1 Please note IBM s statements regarding its plans, directions, and

More information

SQL 2: GETTING INFORMATION INTO A DATABASE. MIS2502 Data Analytics

SQL 2: GETTING INFORMATION INTO A DATABASE. MIS2502 Data Analytics SQL 2: GETTING INFORMATION INTO A DATABASE MIS2502 Data Analytics Our relational database A series of tables Linked together through primary/foreign key relationships To create a database We need to define

More information

Virtuoso Replication and Synchronization Services

Virtuoso Replication and Synchronization Services Virtuoso Replication and Synchronization Services Abstract Database Replication and Synchronization are often considered arcane subjects, and the sole province of the DBA (database administrator). However,

More information

ACCELERATE DEVOPS USING OPENSHIFT PAAS

ACCELERATE DEVOPS USING OPENSHIFT PAAS ACCELERATE DEVOPS USING OPENSHIFT PAAS September 3, 2014 AGENDA World we live in today IT organization: Charter, goals, and challenges DevOps: Problem statement, what, and why How to enable DevOps Application

More information

Green Migration from Oracle

Green Migration from Oracle Green Migration from Oracle Greenplum Migration Approach Strong Experiences on Oracle Migration Automate all tasks DDL Migration Data Migration PL-SQL and SQL Scripts Migration Data Quality Tests ETL and

More information

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer.

Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Test: Final Exam - Database Programming with SQL Review your answers, feedback, and question scores below. An asterisk (*) indicates a correct answer. Section 8 Lesson 1 1. Which SQL statement below will

More information

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina

In This Lecture. SQL Data Definition SQL SQL. Notes. Non-Procedural Programming. Database Systems Lecture 5 Natasha Alechina This Lecture Database Systems Lecture 5 Natasha Alechina The language, the relational model, and E/R diagrams CREATE TABLE Columns Primary Keys Foreign Keys For more information Connolly and Begg chapter

More information

Oracle(PL/SQL) Training

Oracle(PL/SQL) Training Oracle(PL/SQL) Training 30 Days Course Description: This course is designed for people who have worked with other relational databases and have knowledge of SQL, another course, called Introduction to

More information

Agile Techniques for Object Databases

Agile Techniques for Object Databases db4o The Open Source Object Database Java and.net Agile Techniques for Object Databases By Scott Ambler 1 Modern software processes such as Rational Unified Process (RUP), Extreme Programming (XP), and

More information

Visual Studio Team Edition for Database Professionals. Woody Pewitt Developer Evangelist woodyp@microsoft.com

Visual Studio Team Edition for Database Professionals. Woody Pewitt Developer Evangelist woodyp@microsoft.com Visual Studio Team Edition for Database Professionals Woody Pewitt Developer Evangelist woodyp@microsoft.com Process and Architecture Guidance Visual Studio Industry Partners Visual Studio Team System

More information

Migrate Topaz databases from One Server to Another

Migrate Topaz databases from One Server to Another Title Migrate Topaz databases from One Server to Another Author: Olivier Lauret Date: November 2004 Modified: Category: Topaz/BAC Version: Topaz 4.5.2, BAC 5.0 and BAC 5.1 Migrate Topaz databases from

More information

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited Continuous Integration: Improving Software Quality and Reducing Risk Preetam Palwe Aftek Limited One more title Do you love bugs? Or Are you in love with QC members? [Courtesy: Smita N] Agenda Motivation

More information

Migrations from Oracle/Sybase/DB2 to Microsoft SQL Server it s easy!

Migrations from Oracle/Sybase/DB2 to Microsoft SQL Server it s easy! Migrations from Oracle/Sybase/DB2 to Microsoft SQL Server it s easy! January 2010 Dmitry Balin dmitry@dbbest.com Academy Enterprise Partner Group Successful migrations DB Best Technologies about us Established

More information

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and

We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and We (http://www.newagesolution.net) have extensive experience in enterprise and system architectures, system engineering, project management, and software design and development. We will be presenting a

More information

Best Approaches to Database Auditing: Strengths and Weaknesses. henry.parnell@lumigent.com

Best Approaches to Database Auditing: Strengths and Weaknesses. henry.parnell@lumigent.com Best Approaches to Database Auditing: Strengths and Weaknesses henry.parnell@lumigent.com Agenda Why are audit records of Database Operations required in some cases? And why is collecting them difficult?

More information

Geodatabase Programming with SQL

Geodatabase Programming with SQL DevSummit DC February 11, 2015 Washington, DC Geodatabase Programming with SQL Craig Gillgrass Assumptions Basic knowledge of SQL and relational databases Basic knowledge of the Geodatabase We ll hold

More information

Introduction to Triggers using SQL

Introduction to Triggers using SQL Introduction to Triggers using SQL Kristian Torp Department of Computer Science Aalborg University www.cs.aau.dk/ torp torp@cs.aau.dk November 24, 2011 daisy.aau.dk Kristian Torp (Aalborg University) Introduction

More information

Relational Database Concepts

Relational Database Concepts Relational Database Concepts IBM Information Management Cloud Computing Center of Competence IBM Canada Labs 1 2011 IBM Corporation Agenda Overview Information and Data Models The relational model Entity-Relationship

More information

Oracle Total Recall with Oracle Database 11g Release 2

Oracle Total Recall with Oracle Database 11g Release 2 An Oracle White Paper September 2009 Oracle Total Recall with Oracle Database 11g Release 2 Introduction: Total Recall = Total History... 1 Managing Historical Data: Current Approaches... 2 Application

More information

Introduction to Agile Software Development Process. Software Development Life Cycles

Introduction to Agile Software Development Process. Software Development Life Cycles Introduction to Agile Software Development Process Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 AGENDA Software Development Life Cycles Waterfall Model Iterative

More information

Oracle Database Security Solutions

Oracle Database Security Solutions Oracle Database Security Solutions Eric Cheung Senior Manager, Technology Sales Consulting Eric.cheung@oracle.com May 2008 Key Drivers for Data Security Privacy and Compliance Sarbanes-Oxley

More information

Improving database development. Recommendations for solving development problems using Red Gate tools

Improving database development. Recommendations for solving development problems using Red Gate tools Improving database development Recommendations for solving development problems using Red Gate tools Introduction At Red Gate, we believe in creating simple, usable tools that address the problems of software

More information

Oracle Database 10g: Program with PL/SQL

Oracle Database 10g: Program with PL/SQL Oracle University Contact Us: Local: 1800 425 8877 Intl: +91 80 4108 4700 Oracle Database 10g: Program with PL/SQL Duration: 5 Days What you will learn This course introduces students to PL/SQL and helps

More information

SQL. Short introduction

SQL. Short introduction SQL Short introduction 1 Overview SQL, which stands for Structured Query Language, is used to communicate with a database. Through SQL one can create, manipulate, query and delete tables and contents.

More information

Oracle Database Development Standards For DNR Staff and Contractors. Table of Contents

Oracle Database Development Standards For DNR Staff and Contractors. Table of Contents Oracle Database Development Standards For DNR Staff and Contractors Table of Contents INTRODUCTION...2 DATABASE ORGANIZATION...2 DATABASE PROCEDURES...3 Development...3 Testing...3 Production Release...4

More information

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management

IKAN ALM Architecture. Closing the Gap Enterprise-wide Application Lifecycle Management IKAN ALM Architecture Closing the Gap Enterprise-wide Application Lifecycle Management Table of contents IKAN ALM SERVER Architecture...4 IKAN ALM AGENT Architecture...6 Interaction between the IKAN ALM

More information

Oracle Database 12c: New Features for Administrators

Oracle Database 12c: New Features for Administrators Oracle University Contact Us: 67 52 67 24 Oracle Database 12c: New Features for Administrators Duration: 5 Days What you will learn In the Oracle Database 12c: New Features for Administrators course, you

More information

<Insert Picture Here> Edition-based redefinition: the key to online application upgrade

<Insert Picture Here> Edition-based redefinition: the key to online application upgrade Edition-based redefinition: the key to online application upgrade Bryn Llewellyn Product Manager, Database Server Technologies, Oracle HQ The following is intended to outline our

More information

Exploring SQL Server Data Tools in Visual Studio 2013

Exploring SQL Server Data Tools in Visual Studio 2013 Exploring SQL Server Data Tools in Visual Studio 2013 Contents Azure account required for last exercise... 3 Optimized productivity One set of tools for everything... 3 Using SSIS project to export a table

More information

IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3 April 8, 2016. Integration Guide IBM

IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3 April 8, 2016. Integration Guide IBM IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3 April 8, 2016 Integration Guide IBM Note Before using this information and the product it supports, read the information

More information

Why Zalando trusts in PostgreSQL

Why Zalando trusts in PostgreSQL Why Zalando trusts in PostgreSQL A developer s view on using the most advanced open-source database Henning Jacobs - Technical Lead Platform/Software Zalando GmbH Valentine Gogichashvili - Technical Lead

More information

WHITEPAPER. Improving database development

WHITEPAPER. Improving database development WHITEPAPER Improving database development Introduction At Redgate, we believe in creating simple, usable tools that address the problems of software developers and technology businesses. In considering

More information

Oracle Database: Develop PL/SQL Program Units

Oracle Database: Develop PL/SQL Program Units Oracle University Contact Us: 1.800.529.0165 Oracle Database: Develop PL/SQL Program Units Duration: 3 Days What you will learn This Oracle Database: Develop PL/SQL Program Units course is designed for

More information

Continuous Application Delivery From concept to reality. Carsten Lentz Sr. Solution strategist carsten.lentz@ca.com

Continuous Application Delivery From concept to reality. Carsten Lentz Sr. Solution strategist carsten.lentz@ca.com Continuous Application Delivery From concept to reality Carsten Lentz Sr. Solution strategist carsten.lentz@ca.com Agenda - Introduction to customer case A Danish insurance company started the journey,

More information

101-301 Guide to Mobile Testing

101-301 Guide to Mobile Testing 101-301 Guide to Mobile Testing Perfecto Mobile & Toronto Association of System and Software Eran Kinsbruner & Joe Larizza 2014 What To Do? Great News Your first Mobile Project has arrived! You have been

More information

Shadowbase Data Replication Solutions. William Holenstein Senior Manager of Product Delivery Shadowbase Products Group

Shadowbase Data Replication Solutions. William Holenstein Senior Manager of Product Delivery Shadowbase Products Group Shadowbase Data Replication Solutions William Holenstein Senior Manager of Product Delivery Shadowbase Products Group 1 Agenda Introduction to Gravic Shadowbase Product Overview Shadowbase for Business

More information

Structured Query Language. Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics

Structured Query Language. Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Structured Query Language HANS- PETTER HALVORSEN, 2014.03.03 Faculty of Technology, Postboks 203,

More information

Why continuous delivery needs devops, and why devops needs infrastructure-as-code. Sriram Narayan @sriramnarayan 25-Oct-2012

Why continuous delivery needs devops, and why devops needs infrastructure-as-code. Sriram Narayan @sriramnarayan 25-Oct-2012 Why continuous delivery needs devops, and why devops needs infrastructure-as-code Sriram Narayan @sriramnarayan 25-Oct-2012 about me Part of ThoughtWorks Studios Go team Have consulted as Tech Principal,

More information

NeXUS REPOSITORY managers

NeXUS REPOSITORY managers PRODUCT OVERVIEW NeXUS REPOSITORY managers Nexus OSS, Nexus Pro and Nexus Pro+ Nexus repository managers help organizations build better software, faster. Like a supply chain, applications are built by

More information

SQL Server 2016 New Features!

SQL Server 2016 New Features! SQL Server 2016 New Features! Improvements on Always On Availability Groups: Standard Edition will come with AGs support with one db per group synchronous or asynchronous, not readable (HA/DR only). Improved

More information

SQL Server. 2012 for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach

SQL Server. 2012 for developers. murach's TRAINING & REFERENCE. Bryan Syverson. Mike Murach & Associates, Inc. Joel Murach TRAINING & REFERENCE murach's SQL Server 2012 for developers Bryan Syverson Joel Murach Mike Murach & Associates, Inc. 4340 N. Knoll Ave. Fresno, CA 93722 www.murach.com murachbooks@murach.com Expanded

More information

Measurable Improvements in E-Business Suite Application Management with OEM 12c

Measurable Improvements in E-Business Suite Application Management with OEM 12c Measurable Improvements in E-Business Suite Application Management with OEM 12c January 29, 2014 Copyright 2014. Apps Associates LLC. 1 Welcome Julian Troake Marketing Director Apps Associates LLC Copyright

More information

Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software Systems @georgebarnett

Automated performance testing using Maven & JMeter. George Barnett, Atlassian Software Systems @georgebarnett Automated performance testing using Maven & JMeter George Barnett, Atlassian Software Systems @georgebarnett Create controllable JMeter tests Configure Maven to create a repeatable cycle Run this build

More information

Instructions Account creation & Management for Maine Schools

Instructions Account creation & Management for Maine Schools Maine Department of Education, 2007 Instructions Account creation & Management for Maine Schools General School PrepMe Contact Person School Admin Account Student Account Creation Using MEDMS Download

More information

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Copyright 2012, Oracle and/or its affiliates. All rights reserved. 1 Oracle Database Security Advanced Security Option Thanos Terentes Printzios DB & Options Specialist A&C Technology Adoption Office Oracle Partner Business Development, ECEMEA 2 What is a customers INFORMATION

More information

Entity store. Microsoft Dynamics AX 2012 R3

Entity store. Microsoft Dynamics AX 2012 R3 Microsoft Dynamics AX 2012 R3 Entity store This document describes the primary scenarios and features of Entity store. Entity store is a database that is used for analytical scenarios such as near-real-time

More information

Maintaining Stored Procedures in Database Application

Maintaining Stored Procedures in Database Application Maintaining Stored Procedures in Database Application Santosh Kakade 1, Rohan Thakare 2, Bhushan Sapare 3, Dr. B.B. Meshram 4 Computer Department VJTI, Mumbai 1,2,3. Head of Computer Department VJTI, Mumbai

More information

DATABASE VIRTUALIZATION AND INSTANT CLONING WHITE PAPER

DATABASE VIRTUALIZATION AND INSTANT CLONING WHITE PAPER DATABASE VIRTUALIZATION AND INSTANT CLONING TABLE OF CONTENTS Brief...3 Introduction...3 Solutions...4 Technologies....5 Database Virtualization...7 Database Virtualization Examples...9 Summary....9 Appendix...

More information

GETTING STARTED WITH CONTINUOUS DELIVERY. Lana Kalashnyk @lana_vk wcgp.co

GETTING STARTED WITH CONTINUOUS DELIVERY. Lana Kalashnyk @lana_vk wcgp.co GETTING STARTED WITH CONTINUOUS DELIVERY Lana Kalashnyk @lana_vk wcgp.co ABOUT ME Lana Kalashnyk BAAS Computer Science minor Business Administration AS in Computer Science emphasis on Networking Cisco

More information

Continuous Delivery Software-Deployments ohne graue Haare. 3. April 2012 Corsin Decurtins

Continuous Delivery Software-Deployments ohne graue Haare. 3. April 2012 Corsin Decurtins Continuous Delivery Software-Deployments ohne graue Haare 3. April 2012 Corsin Decurtins Some numbers 4 15 deployments per year bank, insurance company, government, transport authority deployments per

More information