release control with power center 2341

Upload: gurmitsp

Post on 07-Apr-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Release Control With Power Center 2341

    1/29

    Release Control with PowerCenterRelease Control with PowerCenterat UBS / Switzerlandat UBS / Switzerland

    Friedrich LehnFriedrich LehnConfiguration & Release ManagerConfiguration & Release Manager

    October 2000October 2000

  • 8/6/2019 Release Control With Power Center 2341

    2/29

    AgendaAgenda

    Project Overview

    PowerCenter Configuration

    Configuration Management Deployment Process

    Release Process

    Summary

  • 8/6/2019 Release Control With Power Center 2341

    3/29

    Project OverviewProject Overview

    Global, integrated investment services firm offering- the full range of wealth management, asset management,

    investment banking and securities services- to the full spectrum of clients

    Worlds largest private bank

    Top ten financial services firm by market capitalization

    - $62 billion dollars Total client assets of US$1 trillion

    UBSUBS

  • 8/6/2019 Release Control With Power Center 2341

    4/29

    Project OverviewProject Overview

    System EnvironmentsSystem Environments

    Development ProductionTest

    IBM AIX SP2 cluster

    DB2 UDB EEE

    PowerCenter 1.6

  • 8/6/2019 Release Control With Power Center 2341

    5/29

    Project OverviewProject Overview

    Load ProcessLoad Process

    File

    Preprocessing

    Conditioning

    AutoLoader

    PowerCenter

    SQL Apply

    AutoLoader

    System of Records

    Common Data Warehouse

  • 8/6/2019 Release Control With Power Center 2341

    6/29

    Project OverviewProject Overview

    Main organizational element

    Three letter acronym as base for naming standards

    Each delivery stream gets the same infrastructure:UNIX directories, meta data area, PowerCenter folders

    Each delivery stream has business responsible, data modeler,database administrator, delivery stream manager

    Team size typically between 1 and 5

    Delivery streams release independently from each other

    Delivery StreamDelivery Stream

  • 8/6/2019 Release Control With Power Center 2341

    7/29

    Project OverviewProject Overview

    Application StructureApplication Structure

    Delivery streams:

    RCL release control tools

    MDR meta data repository

    DSF DWP sourcing framework

    FDS feed specific data processing

    subject data area

    data mart

    ......

    RCL MDR FDS

    System of Records

    DSFDSF

    DWP Sourcing Framework

    ...

    Common DataWarehouse

  • 8/6/2019 Release Control With Power Center 2341

    8/29

    Project OverviewProject Overview

    Two areas:

    /dwp_root UNIX based files, version controlled

    /dwp_data dynamic data, archival on demand

    Additional directory level for the environment in order to

    support more than one environment on one system

    /dwp_root is organized by delivery streams

    Directory StructureDirectory Structure

  • 8/6/2019 Release Control With Power Center 2341

    9/29

    Project OverviewProject Overview

    /dwp_data is organized by logical processing steps

    and by delivery streams

    Symbolic links from PowerCenter program area

    to /dwp_data

    Tool support for generation of directories

    (delta processing, integration with release procedures)

    Directory Structure (continued)Directory Structure (continued)

  • 8/6/2019 Release Control With Power Center 2341

    10/29

    PowerCenter ConfigurationPowerCenter Configuration

    Start with one single (local) repository

    Support different, clearly separated environments with

    different responsibilities All environments have identical structure (products,

    databases, PowerCenter server configurations)

    All program changes (UNIX, PowerCenter) are done on the

    development system

    All changes on test and production systems go through the

    release process and are clearly tracked

    Design PrinciplesDesign Principles

  • 8/6/2019 Release Control With Power Center 2341

    11/29

    PowerCenter ConfigurationPowerCenter Configuration

    Repository StructureRepository Structure

    D S V S A S P

    Server Server Server

    D development

    S stagingV versioning

    A integration / user acceptance test

    P production

  • 8/6/2019 Release Control With Power Center 2341

    12/29

    PowerCenter ConfigurationPowerCenter Configuration

    Folder StructureFolder Structure

    Release area is identical in all environments.

    user area

    (avoid shortcuts)

    team area

    release area

  • 8/6/2019 Release Control With Power Center 2341

    13/29

    PowerCenter ConfigurationPowerCenter Configuration

    developer development, unit and integration testing

    delivery stream manager manager, release planning

    release manager deployment, tracking, configuration controlPowerCenter administration

    session manager session management for testand production systems

    Roles and ResponsibilitiesRoles and Responsibilities

    Role Responsibility

  • 8/6/2019 Release Control With Power Center 2341

    14/29

    Configuration ManagementConfiguration Management

    External tool for software configuration management(Rational Corporation)

    Powerful version control, work space andbuild management

    Same directory structure as in developmentenvironment

    Fully automated access layer

    ClearCaseClearCase

  • 8/6/2019 Release Control With Power Center 2341

    15/29

    Configuration ManagementConfiguration Management

    Integrate all release specific data:sourcing framework, DDL, documentation, scripts & SQL

    Avoid problems with current PowerCenter versionmechanism (shortcuts, sessions)

    Enable automation of release process

    Different responsibilities for different environments Enforce change tracking

    Why external version control?Why external version control?

  • 8/6/2019 Release Control With Power Center 2341

    16/29

    Configuration ManagementConfiguration Management

    _..

    e. g. ACC_1.0.1

    major release number(high level wave planning)

    minor release number(delivery stream development plan)

    patch level (bug fixes, emergency releases)

    Release NamingRelease Naming

  • 8/6/2019 Release Control With Power Center 2341

    17/29

    Configuration ManagementConfiguration Management

    VersioningVersioningExampleExample

    Labeling Schema:

    ACC_x.y.z release label

    RLS_A current version in

    user acceptance testRLS_P current version in production

    /main/1/main/1

    /main/2/main/2

    /main/4/main/4

    /main/5/main/5

    ACC_1.0.0

    ACC_1.0.1

    ACC_1.0.2

    ACC_2.0.0

    RLS_P

    RLS_A

    reset_acc.sql

    /main/3/main/3

  • 8/6/2019 Release Control With Power Center 2341

    18/29

    Deployment ProcessDeployment Process

    Repository Copy:- via GUI / database backup & restore- trackable (result is a file)

    - problem: overwrites server configuration

    Folder Copy:- only via GUI- and therefore not trackable

    Mapping Copy:- only via GUI- used only within development repository

    PowerCenter Deployment FacilitiesPowerCenter Deployment Facilities

  • 8/6/2019 Release Control With Power Center 2341

    19/29

    Deployment ProcessDeployment Process

    Repository Copy is the only trackable method

    Delivery Streams require folder level deployment

    ApproachApproach

    Introduce staging repositories in all environments

    Staging repository is used to separate folder from repository,using the Folder Copy method

    Staging repository is then deployed using theRepository Copy method

    Use combination of both methods:

  • 8/6/2019 Release Control With Power Center 2341

    20/29

    Deployment ProcessDeployment Process

    Freeze, Deliver and Receive ProcessesFreeze, Deliver and Receive Processes

    D S V S A S P

    manual folder copydatabase unload / load

    automated process

    delivery package

    ClearCase

    Freeze

    Deliver

    Receive

  • 8/6/2019 Release Control With Power Center 2341

    21/29

    Deployment ProcessDeployment Process

    sub unload {

    system("db2 connect to $repository user $userusing $password");

    db2select(\@tables, SELECT tabname FROM syscat.tables

    WHERE tabschema = 'PCSTAGE'and (tabname LIKE 'OPB_%' or tabname LIKE 'REP_%') and type = 'T'

    ORDER BY tabname");

    foreach $table (@tables) {

    system("db2 export to $table of del modified by coldel0x02 chardel0x03

    select \\* from $user.$table);

    };

    system("tar cvf $tarfile *");

    }

    Repository UnloadRepository Unload

  • 8/6/2019 Release Control With Power Center 2341

    22/29

    Deployment ProcessDeployment Process

    sub load {

    system("db2 connect to $repository user $userusing $password");

    system("tar xvf $tarfile");

    foreach $file (("OPB_REPOSIT", "OPB_REPOSIT_INFO")) {system("sed -e 's/CDW_StagingD/$name/g' $file > tmp.out");

    system("sed -e 's/DDBPCR/$dbs/g' tmp.out > $file");

    }

    foreach $table () {

    system("db2 delete from $user.$table);

    system("db2 import from $table

    of del modified by coldel0x02 chardel0x03 delprioritycharinsert into $user.$table);

    };

    }

    Repository LoadRepository Load

  • 8/6/2019 Release Control With Power Center 2341

    23/29

    Release ProcessRelease Process

    Responsible for high level planning and impact analysis

    Defines release scope and release numbers on base

    of delivery streams

    Assigns responsibilities (delivery stream manager, datamodeler, database administrator, business responsible)

    Result is documented in wave plan document

    Wave plan is base for all subsequent design,implementation and quality assurance tasks

    Change Control BoardChange Control Board

  • 8/6/2019 Release Control With Power Center 2341

    24/29

    Release ProcessRelease Process

    1. Preparation of UNIX and PowerCenter release areas delivery stream manager

    2. Issue release request delivery stream manager

    3. Create new release (Freeze) release manager

    - Copy to staging repository, unload- Create / update ClearCase file versions- Create release label and attach to new release

    4. Create release package (Deliver) release manager - delta / full processing- lock release in ClearCase

    5. Install release (Receive) IT integration / IT operation

    - Load, copy from staging repository- Post install script

    6. Create / update database objects in target environment database administrator

    7. Restart PowerCenter server IT integration / IT operation

    Release ProcedureRelease Procedure Responsible

  • 8/6/2019 Release Control With Power Center 2341

    25/29

  • 8/6/2019 Release Control With Power Center 2341

    26/29

    Release ProcessRelease Process

    Provide easy-to-use information on all releases

    Today: ClearCase based

    In future: Integration with meta data repository

    Release DatabaseRelease Database

    DSF_1.1.4 A 27-Jul-00.17:32:27 new config files

    DSF_1.1.3 20-Jul-00.13:16:38 fix for single node load problem

    DSF_1.1.2 P 19-Jul-00.14:05:30 correct JDM, error handling

    DSF_1.1.1 18-Jul-00.17:51:19 removed environment dependencies

    DSF_1

    .1.0 17-Jul-00

    .17:11:47 see release notes

    DSF_1.0.2 11-Jun-00.14:07:01 changed Gen_Environment

    DSF_1.0.1 09-Jun-00.13:20:03 see release notes

    DSF_1.0.0 24-May-00.17:48:42 initial version

    Example:

  • 8/6/2019 Release Control With Power Center 2341

    27/29

    SummarySummary

    PowerCenter was successfully introduced at UBS and proved

    to work well within the sourcing framework

    Configuration control with ClearCase is efficient and straightforward

    Release process meets the requirements and is efficient

    (so far ~200 successful releases, effort usually below hour)

    Generally little administration overhead although someimprovements in PowerCenter would make administrators

    and release managers life easier

    ExperiencesExperiences

  • 8/6/2019 Release Control With Power Center 2341

    28/29

    SummarySummary

    Copy of sessions

    Export / import folders via (UNIX) command line

    for further automation of release process

    Avoid restart after deployment

    Logical backups / restores via command line with result on

    server side (more flexible than database backup, avoid ODBC

    overhead) User administration via command line

    Wish ListWish List

  • 8/6/2019 Release Control With Power Center 2341

    29/29

    Contact InformationContact Information

    Friedrich Lehn

    UBS AG, Switzerland

    phone: +49 171 360 60 84

    email: [email protected]