Informatica Night Update (Delta) Process - More than one Delta Source

We are setup to run a nightly process to update our DW with changes that took place that day in our Siebel OLTP environment. We refer to this as our "Delta Process" since it only updates rows that were chagned in the OLTP or adds new rows that were added to the OLTP. Here is our design:
* In our Siebel OLTP we have a View (V table) created that contains a view of only the records that have been changed since the last "Delta Process". This way we can identify only those rows that need to be updated. So in these examles when you see a table that is prefixed as "S_" it references the entire table and a table prefixed as "V_" references on only the changes to the underlying "S_" table.
Ex 1: Order Item table (S_ORDER_ITEM) joins to Account table (S_ORG_EXT). In the Informtica mapping SQ_JOINER we have a query to SELECT statements that with the results concatentated with a UNION statement. The first SELECT statement selects all rows from the V_ORDER_ITEM joined to the S_ORG_EXT so that all delta rows on the order item view are updated with the corresponding data from the account table (S_ORG_EXT). The second SELECT statement selects all rows from the S_ORG_ITEM joined to the V_ORG_EXT so that all of the order item records that contained account information that changed (per the view) are updated. The result is an updated Order Item DW table that contains all updates made to the Order Item and all any associated Accounts information that is stored on the Order Item.
SELECT A.*, B.* FROM V_ORDER_ITEM A, S_ORG_EXT B WHERE A.ORG_ID = B.ROW_ID
UNION
SELECT A.*, B.* FROM S_ORDER_ITEM A, V_ORG_EXT B WHERE A.ORG_ID = B.ROW_ID
The issues:_
This works fine when you have two tables joined together that contain deltas and you need only on UNION statement. However, the issue is when I have 14 tables joined to S_ORDER_ITEM that contain deltas. This cannot be accomlised (that I can see) with one UNION statement but you would need a UNION statement for each delta table.
Ex 2: This example contains just 3 tables. Order Item table (S_ORDER_ITEM) joins to Account table (S_ORG_EXT) and joins to Product table (S_PROD_INT). In this example you will need to have one UNION for each delta table. If you combine delta tables in the same union you will ultimately end up missing data in the final result. This is because the delta tables will only contain the rows that have changed and if one delta table contains a change and needs to pull data from another delta table that did not contain a corresponding change it will not pull the information.
SELECT A.*, B.*, C.* FROM V_ORDER_ITEM A, S_ORG_EXT B, S_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
UNION
SELECT A.*, B.*, C.* FROM S_ORDER_ITEM A, V_ORG_EXT B, S_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
UNION
SELECT A.*, B.*, C.* FROM S_ORDER_ITEM A, S_ORG_EXT B, V_PROD_INT C WHERE A.ORG_ID = B.ROW_ID AND A.PROD_ID = C.ROW_ID
The question:_
1. Is my understanding of how the delta process works correct?
2. Is my understanding that I will need a UNION for each delta table correct?
3. Is there another way to perform the delta process?
My issues are based upon the fact that I join roughly 15 delta tables and select about 100 columns to denormalize the data in the DW. If this is the only option that I have then this will generate an very large and complex query which would be very difficult to manage and udpate.
Thanks...

Hi,
Going thru your post, I find that you have the delta view (V_) and the main table (S_) as drivers, i.e you have two driver tables and hence you make outer joins (w.r.t each other) and make a union to get the complete set of data.
Can you please tell me why both are considered as drivers? Is there a possiability that the V_ view may not have some data but the corresponding S_table might have an update?
Regards,
Bharadwaj Hari

Similar Messages

  • Can one datasource supply delta to more than one data targets?

    Can one datasource supply delta to more than one data targets?

    Hi Alok,
    You can assign only one infosource to one datasource but you can feed any number of data targets based on the requirement from that Infosource. It can be either Delta or Full load. But to do Delta, initially you need to do INIT and then go for Delta. If you have already done full load into a data target, you can go for INIT w/o data transfer there after continue with Delta.
    Hope this helps u...
    Regards,
    KK.

  • Why won't data merge allow more than one data source at a time?

    I need to number tickets, 8 up on a tabloid page, in InDesign (CS5)
    I have found out how to use data merge, but it won't allow me to select more than one data source at a time, therefore, making me use 800 sheets of paper instead of 100. That's not acceptable!! Is there a way to merge the pdfs if I make 8 different ones in the places they need to be? Each file that I export will have 100 pages, so is there a way to merge the files to put all eight tickets on each sheet, sequentially? This is driving me nuts!!!!!!!

    Past users have solved this frustrating problem. You can find their solutions with a Google search like "InDesign data merge multiple sequential items on one page" without quotes.
    HTH
    Regards,
    Peter
    Peter Gold
    KnowHow ProServices
    Frankie at Quad wrote:
    I need to number tickets, 8 up on a tabloid page, in InDesign (CS5)
    I have found out how to use data merge, but it won't allow me to select more than one data source at a time, therefore, making me use 800 sheets of paper instead of 100. That's not acceptable!! Is there a way to merge the pdfs if I make 8 different ones in the places they need to be? Each file that I export will have 100 pages, so is there a way to merge the files to put all eight tickets on each sheet, sequentially? This is driving me nuts!!!!!!!

  • Select  More than one Data Source in UM Configuration

    hi,
    We configure our portal EP 6.0 with the CRM Dev system, such that the users created in CRM Dev system reflect in portal as well.
    now the problem is in CRM Test system. when we create users, users are going to create in CRM test system.but our portal is configured with CRM Dev system.
    is there any way to configure portal with both CRM Dev system users and CRM test system users.
    thanks

    See Select More than one Data Source in UM Configuration

  • Binding a component to more than one data source in Design Studio 1.3

    Hi All,
    Is it possible to bind more than one data source to a component in Design Studio 1.3?
    I have 2 Bex queries- one having the current year data(say 06.2013-05.2014) and the other having the previous year data(say 06.2012-05.2013).
    I want to create a column chart with x axis labels as 06,07,08.............01,02,03,04,05.
    The 05 will show 2 columns for 05.2014 and 05.2013
    The 04 will show 2 columns for 04.2014 and 04.2013
    and so on
    The 06 will show 2 columns for 06.2013 and 05.2012.
    Can this be achieved in Design Studio if only one data source is possible for a column chart?
    Thanks in advance for your responses,
    Sarah

    I don't see where this is possible out of the box as the properties for the chart show only one data source
    Is the data coming from one InfoProvider?  If so could you create one query that shows current year and with a BEx variable/offset show prior year?

  • Create a logical column with more than one data source

    I'm having a problem to create a logical column with more than one data source in Siebel 7.8.
    What I want to do is the union of 2 physical tables in one logical table.
    For example, I have a "local_clients" table and a "abroad_clients" table. What I want is to have a logical table "clients" with the client data from the 2 tables.
    What I've tried is dragging the datasources I need onto the logical column.
    However this isn't working because it only retrieves the data from the first data source.

    Hi!
    I think it is not possible to do this just by dragging the columns to the logical table. A logical table can have more than one source, but I think each column must have just one direct source column.
    I'm not sure, but maybe you should do the UNION SQL to get the data of the two tables. In the physical layer, when you create a new physical table, it's possible to set the "table type" as a "SELECT". I didn't try that, but it seems that it's possible to have the union table in the physical layer.
    Bye.
    Message was edited by:
    user578388

  • How to use left outer join on more than one table (source)

    Hi all,
    In our project we are converting the Unix shell & SQL scripts into OWB mappings. We are facing problem converting left outer join in OWB. here is one of the example. i have just pasted the FROM and where condition.
    FROM ym_scr t1, branch_finmonth t3
    LEFT OUTER JOIN item_image t2
    ON (t1.branch_no = t2.branch_no
    AND t1.item_no = t2.item_no
    AND t3.to_date between t2.tran_dt and t2.to_dt
    AND t2.to_dt >= '$start_images' ) <<<========= '$start_images' THIS COMES FROM THE UNIX VARAIBLE ,
    We converts the same when we are putting it in OWB join Operator
    INGRP1.branch_no = INGRP2.branch_no(+)
    AND INGRP1.item_no = INGRP2.item_no(+)
    AND INGRP3.to_date between t2.tran_dt and t2.to_dt
    AND INGRP2.to_dt >= INGRP2.start_images
    But as you see in the OWB opreator we can put left join with INGRP1 with INGRP2.
    We can not make same join with INGRP3 & INGRP4 , becoz it failed saying "you cannot left outer join on more than one table/source".
    so overall this OWB code makes incomplete left outer join as per the above ANSI SQL join in Oracle.
    Bcoz of the problem we are getting less number of rows...........
    SO please please help me on this
    Regards
    Ashok

    Hi.
    I know this topic is here for a while now, but I had the same problem today, searched for help and didn´t find anything.
    Later I figured out how to do this.
    You just have to put the (+) one time, and the OWB converts in an LEFT OUTER JOIN statement.
    For this case, all you have to do is:
    ( INGRP1.branch_no = INGRP2.branch_no(+) AND INGRP1.item_no = INGRP2.item_no AND INGRP2.to_dt >= INGRP2.start_images )
    Regards,
    Godoy

  • Possibility of having more than one authoritative source in IDM

    Friends,
    You can have more than one authoritative source in Oracle Identity Manager 11g (11.1.1.5)
    Thanks.

    Please find other details here:
    http://docs.oracle.com/cd/E14899_01/doc.9102/e14762/resmgt.htm#BCEBGEDG

  • Validation: more than one Other Source Dimension Member

    Hi BPC Experts,
    Is it possible to identify more than one Other Source Dimension Member in Validation Business Rules settings? For example, we need to use all DataSources that belong to IFRS roll up. If yes, what is the format?
    Thanks.
    Mila

    Resolved. The format is DIMENSION=MEMBER OR DIMENSION=MEMBER.
    For example,
    C_DATASRC=MJ_MANJE OR C_DATASRC=GAAP_03 OR LOB_IFRS=TEST OR LOB_IFRS=IFRS_INSD.

  • Can a master data will have loading from more than one data source

    Dear gurus,
          I have a master data object which has every day loading from one particular data source. Now I got a requirement to load data from another data source. If we load data from more than one data source , will there be any problem with data? Will it accept loading from more than one data source.?
    Regards
    Rs

    Hi Ram,
    We can load the data to target morethan one datasource.Thats advantage in BI compare to BW. It will accept loading from more than one datasource.but you have to take care about characteristic and attributes are the same in both datasources like that.
    Regards,
    SVS

  • More than one delta initializations

    Hi,
    Is it possible to run more than one initializations for a single datasource..? If so what will be the selection condition of the delta..
    i heard if we run more than one init the delta will have the combination of all the successful init but same time someone is saying
    we cannot have more than one init in one datasoruce we need want to run a 2nd init the first one should be deleted.I am bit confused could anyone clarify my doubts.
    bwuser

    let's say you have a DS AA wich is delta enabled and selection criteria is 'plant'.
    now you can do a first delta init for plant 1000. the next day your delta package will pick up new records with plant = 1000.
    then you can do a second delta init for plant 2000. the next day your delta package will pick up new records with plant = 1000 & plant = 2000
    then you can do a third delta init for plant 3000. the next day your delta package will pick up new records with plant = 1000 & plant = 2000 & plant = 3000
    and so on...
    you can do this as often as you want, but your selection criteria need to be exclusive, meaning if you already did an init for plant = 1000, you can't do an init for plant 1000 & 2000. the system wont let you.
    M.

  • Can BO universe design tool read from more than one data source

    Hi Experts
    can I add personal data (from excel or Text) on a designer that is connected to relational Database
    can we combine more than one universe from different data sources to do so
    Please advise
    thanks all

    Thanks for reply
    I tried the linked universe concept but it is not working when I read in this topic in the universe design tool guide it indicated that
    both universes should have the same database I cote from this book
    ("The core universe and derived universe use the same data account, or database, and the same
    RDBMS.")
    I also checked in the designer help it says the same condition
    If you have idea how to do so please send me the steps
    thanks

  • Binding with more than one data sources

    So i have this table bound to a data source (call it A) and in it i have BID(Books ID) and UID (User ID). I don't want the table to show these numbers, i want it to show the name of the book coresponding to BID (and this name is in another table) and the name of the user coresponding to UID (this is also in another table). So, for this i have modified the SQL statement and added WHERE clauses and it all worked fine. Up to a point at least. After that, whenever i tried to make changes to A and the tables where the book names and user names are, i got a "Number of conflicts while synchronizing:" error. So i was thinking perhaps there is another way to bind the BID and UID to those specific names without the help of an SQL statement. Can anyone help?

    Any possibilty of posting your SQL code? And which database are you using?

  • [Solved] No more than one audio source at a time.

    I used alsa, now I'm using pulseaudio. The exact problem and all errors persist regardless of that.
    If any program uses audio, even if it isn't at the moment doing that, I can't use other audio sources. For example, speaker-test says "Playback open error: -16,Device or resource busy" when another program that uses audio is running.
    When vbox is running, without immediately playing any sound, I also have this problem. But I avoided it lately by setting "Null audio driver" in vbox settings so that I can listen to music while working in windows. Even when speaker-test is running, mpd, youtube, skype, vbox, can't play any sound.
    Something maybe worth noting is that I recently had this problem resolved: https://bbs.archlinux.org/viewtopic.php?id=184314 . I don't know if I did some changes back then which are important for this problem.
    Thanks.
    Last edited by Ploppz (2014-08-23 17:48:07)

    Did you install pulseaudio-alsa package? You would need to disable ~/.asoundrc or any other configuration overwriting the redirection of alsa to pulseaudio. Does virtual box work with pulseaudio?
    Did you switch to pulseaudio, because of skype?

  • Updating JournalEntries object with more than one currency fails

    I'm using SBO 6.50 (exactly CEE version 7.60.014 SP:01 EF:08).
       I'm trying to update memo field of existing journal entries. Most of them works OK, but if I try to update entry with more than one currency, update fails with an error code -5002 and message:
       Transaction includes more than one currency [OCRN].
    Code (in C++) is quite simple:
    SAPbobsCOM::ICompanyPtr m_company = SAPbobsCOM::ICompanyPtr("SAPbobsCOM.Company");
    SAPbobsCOM::IJournalEntriesPtr pEntry = m_company->GetBusinessObject(SAPbobsCOM::oJournalEntries);
    long m_nId = 1;     // TransId field, any valid value
    try
         if (pEntry->GetByKey(m_nId) != -1)
              return;
         pEntry->Memo = _bstr_t("Memo");;
         if (pEntry->Update() < S_OK)
              throw(0);
    catch(...)
         long lError; BSTR bstrError;
         m_company->GetLastError(&lError, &bstrError);
    What's wrong? Using multiple currencies in journal entry is correct, it is possible to add them manually so it should be possible to update such an "safe" field as Memo is.

    Hi,
    I have the same problem, but if you go to Administration->System Initialization ->Document Settings, select "Per Document", and in Document, choose "Journal Entry", by default, the options are clicked, or "Blocked", this is why in DI yoy get this message.
    Try to unchecked and it will work.
    HTH,
    Ribeiro Santos

Maybe you are looking for