Commit interval in oracle enterprise stage

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Commit interval in oracle enterprise stage

Post by nagarjuna »

Hi ,

I am having a oracle enterprise stage as target.This job is restartable ( checkpointed the sequence from which this is called ) .I am using upsert mode .

So , if my job aborts and again i restarted the sequence ( without resetting ) then will my job load the records from the point it has failed ? or will it be dependent on environment variables
APT_ORAUPSERT_COMMIT_ROW_INTERVAL
APT_ORAUPSERT_COMMIT_TIME_INTERVAL

Thank you all
Nag
Nag
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

Note that i have not set the variable APT_ORAUPSERT_COMMIT_ROW_INTERVAL to 0
Nag
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Sequence restartability is completely different from the restartability you mean at the job level. It will simply start the job over again and without anything specific to handle previously committed rows will just attempt to load everything again. You may be OK with the upsert mode, however, as inserts would become updates.
-craig

"You can never have too many knives" -- Logan Nine Fingers
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

Craig thanks for the response .

Let me put my understanding in this way ...

If there are 4 jobs in a sequence .The sequence is restartable . My sequence got aborted during 3rd job .This 3rd job loads data in to oracle table .Suppose there are 10000 records has to be loaded and job got aborted after loading 6000 .Then if restart the sequence then again it will start from job3 but it starts loading from record 1 .

Please correct me if i am wrong .

Thanks
Nag
Nag
miwinter
Participant
Posts: 396
Joined: Thu Jun 22, 2006 7:00 am
Location: England, UK

Post by miwinter »

Correct Nag
Mark Winter
<i>Nothing appeases a troubled mind more than <b>good</b> music</i>
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

Thanks for the quick confirmation ...

But how to handle these type of scenarios.Because i am loading the same data again into the table .Could you please suggest any idea to handle this ??
Thank you all
Nag
Nag
miwinter
Participant
Posts: 396
Joined: Thu Jun 22, 2006 7:00 am
Location: England, UK

Post by miwinter »

You'll need to either include some handling to make a call to a job/script to backout the partial data loaded, or to make it restart (at job level) from where it left off, there is nothing built in to cater for it, so it's a design you need to come up with.

You could also, of course, have no commit level, which would mean it's all or nothing for load, but this carries implications on the database side.
Mark Winter
<i>Nothing appeases a troubled mind more than <b>good</b> music</i>
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

Can i make APT_ORAUPSERT_COMMIT_ROW_INTERVAL =0 to handle this ? Please let me know your thoughts on this
Nag
miwinter
Participant
Posts: 396
Joined: Thu Jun 22, 2006 7:00 am
Location: England, UK

Post by miwinter »

Yes, that covers the second point I made above.
Mark Winter
<i>Nothing appeases a troubled mind more than <b>good</b> music</i>
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

You have mentioned it will have some effect on DB side .Could you please tell what effect it can have ??
Nag
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

The main effect is that your database rollback space will need to be large enough to contain the whole transaction. If it isn't the job will abort.
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

I have very little knowledge on DB rollback space ...Can i find any stats saying that to handle this much data i need this much rollback space ....Sorry if i am asking very basic question ...
Nag
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

No, too many variables. And that's really a chat you need to have with your DBA anyway.
-craig

"You can never have too many knives" -- Logan Nine Fingers
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

ok thanks everyone .....My doubts got resolved ...
Nag
nagarjuna
Premium Member
Premium Member
Posts: 533
Joined: Fri Jun 27, 2008 9:11 pm
Location: Chicago

Post by nagarjuna »

nagarjuna wrote:Can i make APT_ORAUPSERT_COMMIT_ROW_INTERVAL =0 to handle this ? Please let me know your thoughts on this
Hi Everyone ,

Just one more quick question ....what about if the load is ising sqlldr or direct load ? This env has no meaning in that case ....So what is the process or design you suggest to handle this ??
Nag
Post Reply