Signo Hames 2011

download Signo Hames 2011

of 36

Transcript of Signo Hames 2011

  • 8/10/2019 Signo Hames 2011

    1/36

    B R O U G H T T O Y O U B Y

    ONYX TRAININGW W W . O N Y X T R A I N I N G . C O M

    F E A T U R I N G

    BRENT HAMESS I G N O I N C .

    W W W . S I G N O I N C . N E T

    OBIEE Performance

  • 8/10/2019 Signo Hames 2011

    2/36

    Welcome

    Introduction

    Agenda Presentation

  • 8/10/2019 Signo Hames 2011

    3/36

    ONYX Training 14 years of Learning Services Public and onsite training

    Oracle and RDBMS Web Applications Development Data Warehouse & Business Intelligence Mainframe

    Training format (instructor-led) Class room Remote Web Mentoring

    Contact Ann Kalin at [email protected] more information or visitwww.onyxtraining

    ORACLE &

    RDBMS

    WEB

    APPLICATIONS

    DEVELOPMENT

    DATA

    WAREHOUSE &

    BUSINESS

    INTELLIGENCE

    MAINFRAME

  • 8/10/2019 Signo Hames 2011

    4/36

    Agenda

    Motivation

    Historical Performance Tuning Current Performance Tuning

    A Solution

    Examples

    Bottom Shelf

    Q/A

  • 8/10/2019 Signo Hames 2011

    5/36

    Motivation

    Concentrate on areas of improvement you can:

    Easily control / influence

    Quickly implement

    Obtain largest ROI

  • 8/10/2019 Signo Hames 2011

    6/36

    Historical Performance Tuning

    Low Level

    Raw Disk Physical Servers

    Dedicated Administrators

    Consistent SQL

    Ability to modify SQL

    Team effort

  • 8/10/2019 Signo Hames 2011

    7/36

    Current Performance Tuning

    Localized teams

    Harder to pinpoint VMs at all layers

    Dynamic user-driven SQL

    Federated data

  • 8/10/2019 Signo Hames 2011

    8/36

    SolutionRequirements

    Optimal end userperformance is criticalfor user adoption of BIreporting

    Easy to POC Simple to implement

    Benefit to all architecture tiers

    Low cost

    High Reward

    Predictable

    ...

    Reduce physical I/OAggregates!

  • 8/10/2019 Signo Hames 2011

    9/36

    Aggregate Example Month Level Day Level

  • 8/10/2019 Signo Hames 2011

    10/36

    AggregatesImplementation

    Process Flow

    Using MaterializedViews can substantiallyreduce developmenttime

    Determine Reports/Queries withpoorest performance

    OBI Usage Tracking

    Identify aggregate trends e.g. quarterly reports, regional analysis

    Create aggregate tables

    Facts and dimensions being aggregated Implement aggregates into OBI

    Enable OBI Aggregate Aware

    Time aggregations are mostcommon

  • 8/10/2019 Signo Hames 2011

    11/36

    AggregatesCosts / Considerations

    Nothing is free..butthe benefits ofaggregates typicallymake it an easydecision

    Disk Development time

    Ownership

    Synchronization

    Tuning

    Batch load time

  • 8/10/2019 Signo Hames 2011

    12/36

    Examples

    Assumptions

    Preliminary analysis complete Aggregates have been created

    and loaded

    Base understanding of OBI Metadata (hierarchies)

    Report Development

    Diagnostics

  • 8/10/2019 Signo Hames 2011

    13/36

    Example 1: Eliminate Time

    Based on business model, many metrics are

    presented and/or compared without filtering on time Same concept could be implemented for set time

    ranges by having Aggregate tables contain only data

    for those time ranges (e.g. last year)

  • 8/10/2019 Signo Hames 2011

    14/36

    Initial report view rolls data up toAll Centers and All Time

    Example 1:

    Eliminate Time

    There are other

    aggregate opportunitiesfor this report includingAll Centers and AllCenters/All Time

  • 8/10/2019 Signo Hames 2011

    15/36

    Example 1:Eliminate Time

    FACTS

    Before 4.8M Row Fact Table

    60,000 Physical Reads

    5 Sec Query Response

    After

    295K Row Fact Table 3681 Physical Reads

    1 Sec Query Response

  • 8/10/2019 Signo Hames 2011

    16/36

    Example 1:Eliminate Time

    OBIImplementation

    Physical Layer

    Leverage copy/duplicatefunctionality to savedevelopment time

  • 8/10/2019 Signo Hames 2011

    17/36

    Example 1:Eliminate Time

    OBIImplementationPhysical Layer

    Validate all relationshipsfor correctness. Anounce of prevention is

    worth a pound of cure.

  • 8/10/2019 Signo Hames 2011

    18/36

    Set appropriate logicallevels for table source.

    Example 1:Eliminate Time

    OBIImplementation

    Business Layer

    Drag physical table intobusiness layer logicalsource

    Map appropriate columns.Leave columns blank thatcannot be satisfied byaggregate.

    Dont forget to set levels of other data sourcesfor that logical table

  • 8/10/2019 Signo Hames 2011

    19/36

    Example 1:Eliminate Time

    OBIImplementation

    Results

    Use logging and managesessions to validateaggregates are being used

  • 8/10/2019 Signo Hames 2011

    20/36

    Example 2: Monthly Rollup

    A report combines metrics for 4 different time

    intervals: Current Month

    Year ago Month

    Rolling 12 Months

    All Time

    A monthly aggregate was the common denominatorfor all levels used in report.

  • 8/10/2019 Signo Hames 2011

    21/36

    Initial report view has data at 4different time intervals

    Example 2:

    Monthly Rollup

    A monthly aggregate

    seemed like a good firststart given that allintervals could benefit.

  • 8/10/2019 Signo Hames 2011

    22/36

    Example 2:Monthly Rollup

    FACTS

    Before 805 Physical Reads

    42Mb Transferred

    5 Sec Elapsed Time

    After

    105 Physical Reads 7.6Mb Transferred

    2 Sec Elapsed Time

  • 8/10/2019 Signo Hames 2011

    23/36

    OBIImplementationPhysical Layer

    Remove columns thatrepresent data at a finergrain than the aggregate(i.e. no daily or weeklycolumns in month timedim)

    Example 2:Monthly Rollup

    OBIImplementationPhysical Layer

    Each level of timeaggregation requires atime dimension at thesame level

  • 8/10/2019 Signo Hames 2011

    24/36

    Example 2:Monthly Rollup

    OBIImplementationPhysical Layer

    Each level of timeaggregation requires atime dimension at thesame level

  • 8/10/2019 Signo Hames 2011

    25/36

  • 8/10/2019 Signo Hames 2011

    26/36

    Set appropriate logicallevels for table source.

    Example 2:Monthly Rollup

    OBIImplementationBusiness Layer

    Drag physical table intobusiness layer logicalsource

    Map appropriate columns.Leave columns blank thatcannot be satisfied byaggregate.

  • 8/10/2019 Signo Hames 2011

    27/36

    Set appropriate logicallevels for table source.

    Example 2:Monthly Rollup

    OBIImplementationBusiness Layer

    Drag physical table intobusiness layer logicalsource

    Map appropriate columns.Leave columns blank thatcannot be satisfied byaggregate.

  • 8/10/2019 Signo Hames 2011

    28/36

    Example 2:Monthly Rollup

    OBIImplementationResults

    Use logging and managesessions to validateaggregates are being used

  • 8/10/2019 Signo Hames 2011

    29/36

    Example 3: Subset

    A report compares individual centers against a

    subset of base centers No aggregation but the setup in OBI is the same

    Would use OBI filter function or logical table

    content filter to accomplish same results

  • 8/10/2019 Signo Hames 2011

    30/36

    Report allows user to selectbetween All Center or HQ Centercomparisons (blue)

    Example 3:

    Subset

    Using filter (i.e. where

    clause) on HQ centersdid not performsufficiently.

  • 8/10/2019 Signo Hames 2011

    31/36

    Example 3:Subset

    FACTS

    Before 1M Row Fact Table

    4116 Physical Reads

    6 Sec Query Response

    After 368K Row Fact Table

    2561 Physical Reads

    3 Sec Query Response

  • 8/10/2019 Signo Hames 2011

    32/36

    OBIImplementation

    Physical Layer

    This is a true copy. Onlythe table name needs to

    be changed.

    Example 3:Subset

  • 8/10/2019 Signo Hames 2011

    33/36

    Example 3:Subset

    OBIImplementation

    Physical Layer

    Exact same mappingsacross fact tables.

  • 8/10/2019 Signo Hames 2011

    34/36

    Map appropriate columns.Leave columns blank thatcannot be satisfied byaggregate.

    Drag physical table intobusiness layer logicalsource

    Set appropriate logicallevels for table source.

    Example 3:Subset

    OBIImplementationBusiness Layer

    The levels will be the same as the base table

  • 8/10/2019 Signo Hames 2011

    35/36

    Example 3:Subset

    OBIImplementationResults

    Use logging and managesessions to validateaggregates are being used

  • 8/10/2019 Signo Hames 2011

    36/36

    Bottom Shelf

    Query Rewrite off (db)

    Star Transformation on (db) Local Disk for work and temp space (obi)

    Disable logical table sources (obi)

    Delete Unnecessary rows from all tables (db) Support Derived Tables off (obi)