mapping specifications with descriptions

Upload: amitag007

Post on 05-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/2/2019 Mapping Specifications With Descriptions

    1/6

    ETL Mapping Specification

    Mapping NameName of the ETL PowerMart mapping (m_ hrispos)

    BusinessRequirementInformation

    Name of the Business Requirements Specification that is met by this Mapping Specification

    Source System Name of the Source Database(HRPROD)

    Target System Name of the Target Database (HRODS)

    Initial Rows Estimated number of rows pulled from thesource table

    Rows/Load Estimated number of rows to be loaded to thetarget table

    ShortDescription

    Description that describes the purpose of this mapping what will this session accomplish?

    RefreshFrequency

    How often will this session run? Is this a table rebuild or refresh? Is this a daily, weekly, monthly, yearly, or hourlyrefresh?

    Preprocessing Preprocessing can occur within a mapping or outside of the mapping before a session runs. What sessions mustrun before this session? Indexes to be dropped before session runs? Files to be ftpd or moved to a specificplace before session can run?

    Post Processing Post processing can occur within a mapping or outside of the mapping before a session runs. What

    sessions/mappings must follow this session/mapping? Indexes that need to be put in place after thissession/mapping runs? Emails to be sent on success/failure?

    Error Strategy Error trapping Document error functions used in input/output port default values, input values for input/outputports. The Informatica Server skips the row when it encounters the ERROR function. It aborts the session when itencounters the ABORT function. Examples:

    Replace the null value with a constant value or constant expression.

    Skip the null value with an ERROR function.

    Abort the session with the ABORT function.

    You may also document what kinds of session errors cause the session to fail, as well as session errors that do notcause a session to fail. You need to know for rework or reloads.

    D t h t t bl t t bl d l ti f l i

  • 8/2/2019 Mapping Specifications With Descriptions

    2/6

    D t h t t bl t t bl d l ti f l i

    ETL Mapping Specification

    Sources

    Tables

    Table Name Schema/Owner Selection/Filter

    Name of the source table Who owns the table? (ADMIN) Do you use the sql query section in the source qualifierto limit what you pull from the source table? Documentwhat limits are needed here

    Files

    File Name File Owner Unique Key

    Name of the source file Machine file resides on, path, and owner of file (Holiday, /usr/local., SISOPER)

    Key (column or field) that makes a row in this file unique

    Targets

    Tables Schema Owner Who owns the target table (ADMIN)

    Table Name Insert Update asUpdate Update asInsert Updateelse insert Delete TruncateTable UniqueKey

    Name of thetarget table

    Key (columnor field) thatmakes a row

  • 8/2/2019 Mapping Specifications With Descriptions

    3/6

    ETL Mapping Specification

    Lookups

    Lookup Name Name given to the lookup transformation object (LKP_tablename)

    Table Name of the lookup table Location Database name (SISQA)

    Match Condition(s) Similar to where clause in sql statement (person.uniqueid = student.customer_uniqueid). How would you findthe row that you need?

    Filter/SQLOverride

    Can use a sql override for multiple match conditions. ( last_effective_date is null, role_type = prospect)

    Document sql override statements here.

    Lookup Name

    Table Location

    Match Condition(s)

    Filter/SQLOverride

    Lookup Name

    Table Location

    Match Condition(s)

    Filter/SQLOverride

  • 8/2/2019 Mapping Specifications With Descriptions

    4/6

    ETL Mapping Specification

    Process OverviewTo be used as a visual representation of the mapping

    Processing Description (Detail)

    Describe processing logic contained in mapping, including a description of the logic for each transformation

    object.

    Example:This mapping will update the target person table with the most recently attended, official high school experienceinformation.

    The source qualifier only pulls the rows where the session id = the current session id (WhereETL_HIGH_SCHOOL_EXPERIENCE.SESSION_ID = (Select max(Session_ID)From ETL_SESSION) order by last_modified_time, last_db_action).

    For each row pulled back from the source qualifier, the ed institution uniqueid is passed to a lookup onthe high school table to get the high school code (ceeb code). In addition to the ceeb code, theuniqueid of the high school is also passed back.

    The first expression object sets the Hs core 40 completion flag, Hs Official Flag, Hs transcript received flag, HsDiploma earned flag, and the Hs invalidated flag in the person table after evaluating these flags in the

    etl_high_school_experience table. If the flag in the etl_high_school_experience table = T, the flag in the person table is set toYES. If the flag in the etl_high_school_experience table = F, the flag in the person table is set to NO

    The first expression object also evaluates the last db action along with other criteria, to determine if the row in thetarget table should be updated or nullled. If the last db action is = I or U and the high school experience is officialand most recent, the high school fields in the target table are updated. If the last db action is = X , the high schoolexperience fields in the target table are nulled.

  • 8/2/2019 Mapping Specifications With Descriptions

    5/6

    ETL Mapping SpecificationHS_LONG_NAME =decode(:TU.last_db_action,'U',:TU.HS_LONG_NAME,'I',:TU.HS_LONG_NAME,'X',null),HS_CEEB_CODE =decode(:TU.last_db_action,'U',:TU.HS_CEEB_CODE ,'I',:TU.HS_CEEB_CODE ,'X',null),HS_SOURCE =decode(:TU.last_db_action,'U',:TU.HS_SOURCE ,'I',:TU.HS_SOURCE ,'X',null),HS_ED_LEVEL =decode(:TU.last_db_action,'U',:TU.HS_ED_LEVEL,'I',:TU.HS_ED_LEVEL ,'X',null),HS_AS_OF_DATE =decode(:TU.last_db_action,'U',:TU.HS_AS_OF_DATE,'I',:TU.HS_AS_OF_DATE ,'X',null),

    HS_END_DATE =decode(:TU.last_db_action,'U',:TU.HS_END_DATE,'I',:TU.HS_END_DATE ,'X',null),HS_GRADUATION_DATE =decode(:TU.last_db_action,'U',:TU.HS_GRADUATION_DATE,'I',:TU.HS_GRADUATION_DATE ,'X',null),HS_CUMULATIVE_GPA =decode(:TU.last_db_action,'U',:TU.HS_CUMULATIVE_GPA,'I',:TU.HS_CUMULATIVE_GPA ,'X',null),HS_CLASS_RANK =decode(:TU.last_db_action,'U',:TU.HS_CLASS_RANK,'I',:TU.HS_CLASS_RANK ,'X',null),HS_CLASS_SIZE =

    decode(:TU.last_db_action,'U',:TU.HS_CLASS_SIZE,'I',:TU.HS_CLASS_SIZE ,'X',null),HS_PERCENTILE_LOW =decode(:TU.last_db_action,'U',:TU.HS_PERCENTILE_LOW,'I',:TU.HS_PERCENTILE_LOW ,'X',null),HS_PERCENTILE_HIGH =decode(:TU.last_db_action,'U',:TU.HS_PERCENTILE_HIGH,'I',:TU.HS_PERCENTILE_HIGH ,'X',null),HS_DIPLOMA_TYPE =decode(:TU.last_db_action,'U',:TU.HS_DIPLOMA_TYPE,'I',:TU.HS_DIPLOMA_TYPE,'X',null),HS_CORE_40_COMPLETION_FLAG =decode(:TU.last_db_action,'U',:TU.HS_CORE_40_COMPLETION_FLAG,'I',:TU.HS_CORE_40_COMPLETION_F

    LAG,'X',null),HS_OFFICIAL_FLAG =decode(:TU.last_db_action,'U',:TU.HS_OFFICIAL_FLAG,'I',:TU.HS_OFFICIAL_FLAG,'X',null),HS_TRANSCRIPT_RECEIVED_FLAG =decode(:TU last db action 'U' :TU HS TRANSCRIPT RECEIVED FLAG 'I' :TU HS TRANSCRIPT RECEIVED F

  • 8/2/2019 Mapping Specifications With Descriptions

    6/6

    ETL Mapping SpecificationSource To Target Field Matrix

    TargetTable

    TargetColumn Data-type

    SourceTable Source Column Data-type Expression

    Default

    Value ifNull

    Data

    Issues/Quality/Comments

    Name of targettable

    Column intarget table

    Datatype forthis targetcolumn

    Name oftheSourcetable

    Column in sourcetable where youwould get this datafrom

    Datatype for thissource column

    Decodes, aggregates, conversions,if statements, lookup functions

    Value touse intarget fieldwhensource fieldis null

    Used to document Not null, valueif looked up, upper case, pk, fk,etccomments, issues

    /var/www/apps/conversion/current/tmp/scratch13067/92082912.doc Page 4/11/12 6