Capacity Planning 8.6_Florida IUG[1]

download Capacity Planning 8.6_Florida IUG[1]

of 38

Transcript of Capacity Planning 8.6_Florida IUG[1]

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    1/38

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    2/38

    2

    2

    Data Integration Server Sizing:

    Frequently asked questions:

    Could I move my data faster with an expanded environment? Is my Informatica Server big enough?

    How much more data could I move with my existing system?

    How much faster could I execute my existing loads?

    If I had to add 1 more project do I have sufficient capacity?

    How about x more projects?

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    3/38

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    4/3844

    Agenda

    Key Architecture Points

    Environment Sizing vs. Capacity Planning

    Tools

    Read world example

    Pitfalls and common mistakes

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    5/3855

    Key Architecture Points

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    6/3866

    Data Integration Environment:Key Architecture Points

    Source FileServer and

    RDBMSCPU/RAM

    Target FileServer and

    RDBMSCPU/RAM

    Network Network

    PowerCenter

    ServerTargetsSources

    ServerCPU/RAM

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    7/3877

    Informatica Real Time Data Integration

    Web ApplicationServer

    IntegratedCustomer Portal

    Database

    TransactionalSystem

    Relational Source(Oracle, DB2, etc)

    Mainframe System

    Acquired Mid-RangeAS/400 System

    Acquired MainframeSystem

    ExceptionManagementDatabase

    PowerCenter Orchestration Engine

    Administration Portal

    Data Steward Portal

    Customer Portal

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    8/3888

    PowerCenter System Characteristics

    Block processing

    Parallelism Multiple threads, partitioning

    64-bit Option

    Database and File processing: Random vs. Sequential Reads

    String Manipulation and Unicode Pushdown Option

    Checkpoint Recovery

    Web Services

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    9/3899

    Environment Sizing vs

    Capacity Planning

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    10/38

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    11/381111

    Environment Sizing

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    12/381212

    Environment Sizing

    New Environment Estimation process because there is no existing environment

    Architectural considerations that affect sizing: GRID/HA Windows vs. UNIX/LINUX Shared PC Environment vs. Dedicated PC Environment Virtualization

    Hardware sizing considerations CPU as basis Memory I/O Capacity related to Disk Space Network Bandwidth Repository Database

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    13/381313

    Environment Sizing Inputs

    Data volumes

    Mapping complexity Number of mappings

    Concurrent work load

    Peak work load

    Expected growth

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    14/38

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    15/38

    1515

    Environment Sizing Methodology cont.

    Consider future growth

    Use benchmark testing to validate

    Cross check with other implementations

    Size appropriately in lifecycle

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    16/38

    1616

    Capacity Planning

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    17/38

    1717

    Capacity Planning

    Existing Environment Measure actual performance in YOUR environment

    Use real world performance information to understandcurrent unused capacity Use linear scalability to predict future needs Key review points:

    Current performance tuning Data growth projections Future integration needs

    Consider Impacts of any technology shift/change Web Services Grid/HA XML Processing etc

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    18/38

    1818

    Capacity Planning Methodology

    Gather performance information Volume (data/records) CPU Usage Memory Usage Network Usage File System Usage System Characteristics (CPU speed etc)

    Document future assumptions e.g. planned architecture, usage period,geographical distribution of data & users

    Review data growth projections

    Review future growth needs

    Plan for 75% CPU utilization or less

    Determine required capacity

    Update/expand environment as needed

    Use continuous benchmark testing

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    19/38

    1919

    Tools

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    20/38

    2020

    Tools - Unixvmstat - (virtual memory statistics)

    Reports information about processes, memory, paging, block IO, and cpu

    vmstat 5 10 run with 5 sec delay 10 times Processes in the run queue (procs r)

    procs r consistently greater than the number of CPUs is a bottleneck

    Idle time (cpu id) cpu id consistently 0 indicates CPU issue

    Scan rate (sr) sr rate continuously over 200 pages per second indicates a memory shortage

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    21/38

    2121

    Tools - Unix

    iostat (input/output statistics)

    Report on CPU, input/output statistics for devices and

    partitions iostat 5 10 run with 5 sec delay 10 times

    Reads/writes per second (r/s , w/s)

    Consistently high reads/writes indicates disk issues Percentage busy (%b)

    %b > 5 may point to I/O bottleneck

    Service time (svc_t) svc_t > 30 milliseconds requires faster disk/controller

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    22/38

    2222

    Tools - Unix

    sar (system activity reporter)

    Exists on many UNIX platforms

    Examine live statistics sar [options] t n

    t is number of seconds per sample n is number of samples

    Save sar data for later analysis sar o filename t n

    Recall CPU usage: sar u f filename

    Recall Disk usage: sar d f filename You can also specify time windows (-s, -e) and alternate intervalwith i

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    23/38

    2323

    Tools - Unix

    sar Disk Utilization sar d t n

    Average I/O size in bytes = (blks/s*512 bytes)/(r+w/s) % busy is a good indicator of disk bottleneck Shows disk devices -- can be tough to trace back to specific logical

    volume

    vega7077-root-># sar -d 60 1

    HP-UX vega7077 B.11.23 U ia64 10/25/07

    10:25:24 device %busy avque r+w/s blks/s avwait avserv

    10:26:24 c2t6d0 0.65 0.50 1 23 0.00 9.14c76t4d3 0.02 0.50 0 0 0.01 10.03c140t2d0 3.13 0.50 2 180 0.00 18.21c142t2d0 3.88 0.50 2 180 0.00 22.38c148t2d0 0.28 0.50 2 180 0.00 1.69c150t2d0 0.42 0.50 2 176 0.00 2.37c108t2d0 3.03 0.50 2 179 0.00 17.67

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    24/38

    2424

    Tools - Unix

    sar CPU utilization sar u t n

    %sys is system/kernel time

    %usr is user space time %wio is Percent of time waiting on I/O wio is the best indicator if I/O is a bottleneck Directly reflects how much performance is lost waiting on I/O

    operations

    vega7077-root-># sar -u 60 1

    HP-UX vega7077 B.11.23 U ia64 10/25/07

    10:49:31 %usr %sys %wio %idle10:50:31 1 5 6 87

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    25/38

    2525

    Tools - Unix

    top

    Provides a dynamic real-time view of a runningsystem

    Displays system summary information as well asa list of tasks currently being managed

    Useful for shared environments to identify each

    application process and their CPU/memoryconsumption

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    26/38

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    27/38

    2727

    Example

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    28/38

    2828

    Example Capacity Planning Exercise

    Peak Load Time 1am to 1:35 am

    Number of Sessions 45

    Most concurrent sessions 4

    Total Data Processed 10 GB

    Primarily DBMS to DBMS data moves

    Server is 4 CPU with 16gb of RAM

    Most sessions include lookups but with fairly reasonablecache size (ie. no 8gb customer master)

    Total Load Window requirement is 2 hrs (done by 3am)

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    29/38

    2929

    Example Capacity Planning Exercise

    Time CPU 1 CPU 2 CPU 3 CPU 4 Avg RAM I/O

    1:01 95% 90% 85% 25% 74% 90% Ok

    1:11 90% 90% 65% 3% 62% 35% Good1:21 90% 50% 10% 3% 38% 50% Good

    1:31 75% 25% 3% 3% 25% 25% Good

    Avg 87% 64% 41% 9% 50% 50% Good

    Data Seconds Data/Sec Data CPU/Sec Max Expected

    10GB 2100 4.8mb 1.2mb 2.4/mb/CPU

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    30/38

    3030

    Questions for the Example :

    Do you need more CPU?

    Do you need more RAM?

    How much more expected capacity do you have withoutextending the current load window?

    How much more capacity do you have until you no longermeet load window?

    What could you do to free up more capacity?

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    31/38

    3131

    Questions for the Example : How much more expected capacity do you have without extending the current loadwindow?

    How much more capacity do you have until you no longer meet load window?

    What could you do to free up more capacity?

    How much more capacity :

    1.2mb/CPU currently could comfortably go to 75% CPU so likely1.8mb/CPU or capacity of .6mb/CPU/Second = 5GB more

    How much more capacity till no longer meet 2 hrs? 15gb x 2 hrs =30gb total capacity current 10gb = 20gb more of data

    Tuning, spreading current load out across window, pushdownoptimization, Change Data Capture etc.

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    32/38

    3232

    Useful Rules of Thumb:

    Processor & RAM Virtual CPU is considered as 0.75 CPU. For example 4

    CPU with 4 cores each, could be considered as 12Virtual CPUs.

    20 to 30MB of memory for the Integration Service for

    session coordination w/o aggregations, lookups, orheterogeneous data joins.

    Note: 32-bit systems have an operating system limitationof 2GB per session.

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    33/38

    3333

    Useful Rules of Thumb:

    Caches for aggregation, lookups or joins use additionalmemory: Lookup tables are cached in full; the memory consumed depends

    on the size of the tables and selected data ports. Aggregate caches store the individual groups; more memory is

    used if there are more groups. Sorting input greatly reduces theneed for memory.

    Joins cache the master table in a join; memory consumeddepends on the size of the master.

    Full Pushdown Optimization requires fewer resources onPowerCenter server in comparison to partial(source/target) pushdown optimization.

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    34/38

    3434

    Pitfalls and Common Mistakes

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    35/38

    3535

    Pitfalls and Common Mistakes Apples to Apples

    I talked to at the user group and they are moving 1,000 rows a second whyarent I experiencing the same?

    I read an Informatica benchmark and they moved a terabyte in 38 min, which showed 4mb asecond per processor mine should be the same performance right?

    Growth Projections Every day we process 100,000 records that equal 5mb of data thus our warehouse is

    increasing by 5mb a day. Every year our warehouse grows by 25% so our daily capacity must be growing by 25%.

    Adding Horsepower If I add more CPU and RAM my loads will be faster. My hardware vendor promised their new CPUs are 2x faster so my load should finish in

    the time.

    Root Cause My performance is poor, it must be the Informatica Platform. Im seeing very low rows per second processed, I must have a slow server

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    36/38

    3636

    Additional Resources

    Velocity Best Practices

    Platform Sizing Environment & PowerCenter Sizing

    My.informatica.comhttps://my-prod.informatica.com/velocity/

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    37/38

    3737

    Questions?

  • 8/6/2019 Capacity Planning 8.6_Florida IUG[1]

    38/38

    3838