SlideShare une entreprise Scribd logo
1  sur  22
Deploying Database Changes: Performance Matters Rapidly deploying database code in 24/7 environments Vlado Barun Ed Putkonen Hotsos Symposium 3/2010
Disclaimer This presentation IS NOT about Oracle RDBMS internals Cool new features (i.e. edition based redefinition) This presentation IS about Response Time Change Management Process – ultra-light Live SQL*Plus demos In production Proven approach to reduce deployment issues in dev/qa/stage/production
Who we are Vlado Barun, M.Sc. 14 years in the Database Arena (Oracle - 9 years) DBA, Database Developer, Database Architect,  DBA Manager, Data Modeler, Consultant, … OCP, OCE  SQL, MCP Ed Putkonen 20 Years of Relational DB Experience Developer, Designer, DBA
Jewelry Television (jtv.com) facts Established 1993 1000+ Employees, HQ in Knoxville, TN Largest retailer of loose Gemstones Broadcast to 70+ million households #4 online Jewelry, #139 online Retail
JTV environment Retail operations are 24x7x365 No regularly scheduled maintenance windows In-house developed applications Agile SDLC – Scrum
Typical Deployment Scenario Add new and/or change existing objects (tables, triggers, packages, etc.)  Driven by an effort to implement a new application feature, bug fix, tuning, etc. Deployment execution time is a small percentage of overall effort Analysis/Design/Dev/QA – days/weeks Deployment duration – seconds/minutes
Common challenges - symptoms Time pressure Project is already behind schedule Rapid pace of production deployments  Uncertainty  Changes are made up to the last minute Which change to deploy, which version? Outage Risk 70% of outages due to human errors* Downtime costs are substantial 		* Source: “Database Administration: The Complete Guide to Practices and Procedures” by Craig Mullins, pg 238
Time-to-Market vs Availability Frequent deployments result in Faster time-to-market => increased business value Higher probability of mistakes => lower system availability Common responses to availability issue Enforce bureaucratic process => reduced frequency of deployments Just complain about it, but make no real changes
Deployment Response Time Profile Event	Duration		 ------------------------	----------------------- Waiting for Information	hours/days	95.77% Preparation	minutes/hours	 4.16% Execution	seconds/minutes	 0.07% ,[object Object]
What, how, when, …
Preparation
Prepare a deployment script, login, …
Execution,[object Object]
Change Management – ultra light At a minimum CM has to unambiguously define: What which script(s) need to be deployed which version(s) How which sequence chain of communication When date/time approvals?
JTV deployment process/toolset Bugzilla for issue tracking Remedy for approvals Tickets transformed into SQL*Plus scripts Tools for generating scripts include templates, Powerdesigner, TOAD, SQL Developer, OEM Scripts in version control using subversion Approved tickets deployed via SQL*Plus
Demo 1 Execute a deployment
Deployment Script elements Subversion Folder  Templates Logging Rollback
Closer look at templates Main Login Connect DDL Find Invalid Objects Recompile Invalid Objects
Demo 2 Build a deployment from scratch
How to get started Before each deployment, ensure* that you have answers to all the questions  use existing collaboration tools, if available Minimize manual deployments script your deployments utilize script templates reuse scripts to deploy to dev, qa, prod Version control your scripts Log everything** and publish the logs
Change Management – ultra light At a minimum CM has to unambiguously define: What which script(s) need to be deployed which version(s) How which sequence Chain of communication When Date/time Approvals?
How to get started Before each deployment, ensure* that you have answers to all the questions  use existing collaboration tools, if available Minimize manual deployments script your deployments utilize  templates reuse scripts to deploy to dev, qa, prod Version control your scripts Log everything** and publish the logs

Contenu connexe

Tendances

DevOps for vSphere Admins
DevOps for vSphere AdminsDevOps for vSphere Admins
DevOps for vSphere AdminsJon Hildebrand
 
Kanban introduction
Kanban introductionKanban introduction
Kanban introductionTomas Rybing
 
Kanban introduction
Kanban introductionKanban introduction
Kanban introductionAhmed Hammad
 
Operation and Support using Agile
Operation and Support using AgileOperation and Support using Agile
Operation and Support using AgileTal Aviv
 
Enterprise transformation models their utility, common pitfalls and adaptive IT
Enterprise transformation models their utility, common pitfalls and adaptive ITEnterprise transformation models their utility, common pitfalls and adaptive IT
Enterprise transformation models their utility, common pitfalls and adaptive ITPuppet
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationMubashir Ali
 
Modernising Change Management with Enterprise DevOps
Modernising Change Management with Enterprise DevOpsModernising Change Management with Enterprise DevOps
Modernising Change Management with Enterprise DevOpsPuppet
 
Geek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustGeek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustIDERA Software
 
Chapter 2 Time boxing & agile models
Chapter 2   Time boxing & agile modelsChapter 2   Time boxing & agile models
Chapter 2 Time boxing & agile modelsGolda Margret Sheeba J
 
From Scrum to Kanban
From Scrum to KanbanFrom Scrum to Kanban
From Scrum to KanbanNeil Johnson
 
Virtualization performance management
Virtualization performance managementVirtualization performance management
Virtualization performance managementKenneth de Brucq
 
Event-driven BPM the JBoss way
Event-driven BPM the JBoss wayEvent-driven BPM the JBoss way
Event-driven BPM the JBoss wayKris Verlaenen
 
Lean kanban team assessment
Lean kanban team assessmentLean kanban team assessment
Lean kanban team assessmentRavi Tadwalkar
 

Tendances (15)

DevOps for vSphere Admins
DevOps for vSphere AdminsDevOps for vSphere Admins
DevOps for vSphere Admins
 
Kanban introduction
Kanban introductionKanban introduction
Kanban introduction
 
Wbs
WbsWbs
Wbs
 
Kanban introduction
Kanban introductionKanban introduction
Kanban introduction
 
Operation and Support using Agile
Operation and Support using AgileOperation and Support using Agile
Operation and Support using Agile
 
Enterprise transformation models their utility, common pitfalls and adaptive IT
Enterprise transformation models their utility, common pitfalls and adaptive ITEnterprise transformation models their utility, common pitfalls and adaptive IT
Enterprise transformation models their utility, common pitfalls and adaptive IT
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost Estimation
 
Modernising Change Management with Enterprise DevOps
Modernising Change Management with Enterprise DevOpsModernising Change Management with Enterprise DevOps
Modernising Change Management with Enterprise DevOps
 
Geek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We TrustGeek Sync I In Database Automation We Trust
Geek Sync I In Database Automation We Trust
 
Chapter 2 Time boxing & agile models
Chapter 2   Time boxing & agile modelsChapter 2   Time boxing & agile models
Chapter 2 Time boxing & agile models
 
From Scrum to Kanban
From Scrum to KanbanFrom Scrum to Kanban
From Scrum to Kanban
 
Virtualization performance management
Virtualization performance managementVirtualization performance management
Virtualization performance management
 
Event-driven BPM the JBoss way
Event-driven BPM the JBoss wayEvent-driven BPM the JBoss way
Event-driven BPM the JBoss way
 
Thur Venture
Thur VentureThur Venture
Thur Venture
 
Lean kanban team assessment
Lean kanban team assessmentLean kanban team assessment
Lean kanban team assessment
 

Similaire à Database change deployments: Performance matters

Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight DeploymentBest Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight DeploymentMarc Nehme
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseDBmaestro - Database DevOps
 
Understanding System Performance
Understanding System PerformanceUnderstanding System Performance
Understanding System PerformanceTeradata
 
Alok_Patle_Resume
Alok_Patle_ResumeAlok_Patle_Resume
Alok_Patle_Resumealok patle
 
KunalMehta_Resume
KunalMehta_ResumeKunalMehta_Resume
KunalMehta_ResumeKunal Mehta
 
Varun v resume_tc
Varun v resume_tcVarun v resume_tc
Varun v resume_tcVarun V
 
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORA
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORASummary of Accelerate - 2019 State of Devops report by Google Cloud's DORA
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORARagavendra Prasath
 
ABHINAV KAUSHIK(IT Professional)
ABHINAV KAUSHIK(IT Professional)ABHINAV KAUSHIK(IT Professional)
ABHINAV KAUSHIK(IT Professional)Abhinav Kaushik
 
Getting Ready for Ligtning Process Builder
Getting Ready for Ligtning Process BuilderGetting Ready for Ligtning Process Builder
Getting Ready for Ligtning Process BuilderFred Cadena
 
A Blueprint for a Successful DevOps Metamorphosis
A Blueprint for a Successful DevOps MetamorphosisA Blueprint for a Successful DevOps Metamorphosis
A Blueprint for a Successful DevOps MetamorphosisXebiaLabs
 
Best practice adoption (and lack there of)
Best practice adoption (and lack there of)Best practice adoption (and lack there of)
Best practice adoption (and lack there of)John Pape
 
Resume Manoj Kumar M
Resume Manoj Kumar MResume Manoj Kumar M
Resume Manoj Kumar MManoj Kumar
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Enkitec
 

Similaire à Database change deployments: Performance matters (20)

Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight DeploymentBest Practices and Lessons Learned on Our IBM Rational Insight Deployment
Best Practices and Lessons Learned on Our IBM Rational Insight Deployment
 
Webinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterpriseWebinar - Devops platform for the evolving enterprise
Webinar - Devops platform for the evolving enterprise
 
Understanding System Performance
Understanding System PerformanceUnderstanding System Performance
Understanding System Performance
 
Waldo Wollrabe Resume
Waldo Wollrabe ResumeWaldo Wollrabe Resume
Waldo Wollrabe Resume
 
Alok_Patle_Resume
Alok_Patle_ResumeAlok_Patle_Resume
Alok_Patle_Resume
 
Tarun_Medimi
Tarun_MedimiTarun_Medimi
Tarun_Medimi
 
Nitin Paliwal
Nitin PaliwalNitin Paliwal
Nitin Paliwal
 
KunalMehta_Resume
KunalMehta_ResumeKunalMehta_Resume
KunalMehta_Resume
 
Varun v resume_tc
Varun v resume_tcVarun v resume_tc
Varun v resume_tc
 
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORA
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORASummary of Accelerate - 2019 State of Devops report by Google Cloud's DORA
Summary of Accelerate - 2019 State of Devops report by Google Cloud's DORA
 
ABHINAV KAUSHIK(IT Professional)
ABHINAV KAUSHIK(IT Professional)ABHINAV KAUSHIK(IT Professional)
ABHINAV KAUSHIK(IT Professional)
 
Getting Ready for Ligtning Process Builder
Getting Ready for Ligtning Process BuilderGetting Ready for Ligtning Process Builder
Getting Ready for Ligtning Process Builder
 
sonal
sonalsonal
sonal
 
Sunny_Resume
Sunny_ResumeSunny_Resume
Sunny_Resume
 
HamsaBalajiresume
HamsaBalajiresumeHamsaBalajiresume
HamsaBalajiresume
 
Sunny_Resume
Sunny_ResumeSunny_Resume
Sunny_Resume
 
A Blueprint for a Successful DevOps Metamorphosis
A Blueprint for a Successful DevOps MetamorphosisA Blueprint for a Successful DevOps Metamorphosis
A Blueprint for a Successful DevOps Metamorphosis
 
Best practice adoption (and lack there of)
Best practice adoption (and lack there of)Best practice adoption (and lack there of)
Best practice adoption (and lack there of)
 
Resume Manoj Kumar M
Resume Manoj Kumar MResume Manoj Kumar M
Resume Manoj Kumar M
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12
 

Dernier

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 

Dernier (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 

Database change deployments: Performance matters

  • 1. Deploying Database Changes: Performance Matters Rapidly deploying database code in 24/7 environments Vlado Barun Ed Putkonen Hotsos Symposium 3/2010
  • 2. Disclaimer This presentation IS NOT about Oracle RDBMS internals Cool new features (i.e. edition based redefinition) This presentation IS about Response Time Change Management Process – ultra-light Live SQL*Plus demos In production Proven approach to reduce deployment issues in dev/qa/stage/production
  • 3. Who we are Vlado Barun, M.Sc. 14 years in the Database Arena (Oracle - 9 years) DBA, Database Developer, Database Architect, DBA Manager, Data Modeler, Consultant, … OCP, OCE SQL, MCP Ed Putkonen 20 Years of Relational DB Experience Developer, Designer, DBA
  • 4. Jewelry Television (jtv.com) facts Established 1993 1000+ Employees, HQ in Knoxville, TN Largest retailer of loose Gemstones Broadcast to 70+ million households #4 online Jewelry, #139 online Retail
  • 5. JTV environment Retail operations are 24x7x365 No regularly scheduled maintenance windows In-house developed applications Agile SDLC – Scrum
  • 6. Typical Deployment Scenario Add new and/or change existing objects (tables, triggers, packages, etc.) Driven by an effort to implement a new application feature, bug fix, tuning, etc. Deployment execution time is a small percentage of overall effort Analysis/Design/Dev/QA – days/weeks Deployment duration – seconds/minutes
  • 7. Common challenges - symptoms Time pressure Project is already behind schedule Rapid pace of production deployments Uncertainty Changes are made up to the last minute Which change to deploy, which version? Outage Risk 70% of outages due to human errors* Downtime costs are substantial * Source: “Database Administration: The Complete Guide to Practices and Procedures” by Craig Mullins, pg 238
  • 8. Time-to-Market vs Availability Frequent deployments result in Faster time-to-market => increased business value Higher probability of mistakes => lower system availability Common responses to availability issue Enforce bureaucratic process => reduced frequency of deployments Just complain about it, but make no real changes
  • 9.
  • 12. Prepare a deployment script, login, …
  • 13.
  • 14. Change Management – ultra light At a minimum CM has to unambiguously define: What which script(s) need to be deployed which version(s) How which sequence chain of communication When date/time approvals?
  • 15. JTV deployment process/toolset Bugzilla for issue tracking Remedy for approvals Tickets transformed into SQL*Plus scripts Tools for generating scripts include templates, Powerdesigner, TOAD, SQL Developer, OEM Scripts in version control using subversion Approved tickets deployed via SQL*Plus
  • 16. Demo 1 Execute a deployment
  • 17. Deployment Script elements Subversion Folder Templates Logging Rollback
  • 18. Closer look at templates Main Login Connect DDL Find Invalid Objects Recompile Invalid Objects
  • 19. Demo 2 Build a deployment from scratch
  • 20. How to get started Before each deployment, ensure* that you have answers to all the questions use existing collaboration tools, if available Minimize manual deployments script your deployments utilize script templates reuse scripts to deploy to dev, qa, prod Version control your scripts Log everything** and publish the logs
  • 21. Change Management – ultra light At a minimum CM has to unambiguously define: What which script(s) need to be deployed which version(s) How which sequence Chain of communication When Date/time Approvals?
  • 22. How to get started Before each deployment, ensure* that you have answers to all the questions use existing collaboration tools, if available Minimize manual deployments script your deployments utilize templates reuse scripts to deploy to dev, qa, prod Version control your scripts Log everything** and publish the logs
  • 23. Deployment Response Time Profile Event Duration ------------------------ ----------------------- Waiting for Information hours/days 95.77% Preparation minutes/hours 4.16% Execution seconds/minutes 0.07% Change Management Templates Standard Tuning Approach +dbms_pipe/dbms_alert
  • 24. Summary Lightweight Change Management Facilitate rapid & reliable deployments Three questions Works regardless of deployment complexity Independent of Development methodology Complete logging and transparency
  • 25. ? Vlado Barun – vbarun@computer.org Ed Putkonen – ed.putkonen@jtv.com