Focal Point
Data Migrator -- Can You Specify XFOCUS Temp Files Instead of FOCUS Temp Files?

This topic can be found at:
https://forums.informationbuilders.com/eve/forums/a/tpc/f/1381057331/m/6177068916

May 07, 2012, 10:16 AM
John_Edwards
Data Migrator -- Can You Specify XFOCUS Temp Files Instead of FOCUS Temp Files?
I have some pretty big jobs (i.e. number of rows) and Data Migrator uses FOCUS files for temporary tables to build its joins. I'm running out of .FOC's 2Gig limit. Is there a setting for I-Way/Data Migrator to use XFOCUS for temporary files instead?

J.



May 08, 2012, 12:01 PM
jgelona
Have you tried HOLD FORMAT XFOCUS?

I don't have data migrator but that syntax works in a TABLE command.

I built 2 files with identical data hold.foc and hold1.foc. hold.foc is the XFOCUS file and it has 34 pages. I can see this by using the ? FILE HOLD command. hold1.foc is a FOCUS file and it has 122 pages.


In FOCUS since 1985. Prod WF 8.0.08 (z90/Suse Linux) DB (Oracle 11g), Self Serv, Report Caster, WebServer Intel/Linux.
May 08, 2012, 12:06 PM
Clif
I have two thoughts on how you might be able to avoid this issue, if they don't help could you open a hottrack case please.

(1) If both (or all) the sources are in a relational database or you can copy them there, then ensure the query can use automatic pass through, then the database does the join and no temporary files are needed.

(2) If not you can explicitly create a staging table and specify a target type of XFOC and then join to that.


N/A
May 08, 2012, 02:12 PM
John_Edwards
It doesn't work that way in Data Migrator. DM uses temporary files under the covers to manage its joins and it uses .foc format without asking.

It would likely be a option on the server console or in one of its xml configuration files. If it exists.

J.



May 08, 2012, 02:18 PM
John_Edwards
quote:
(1) If both (or all) the sources are in a relational database or you can copy them there, then ensure the query can use automatic pass through, then the database does the join and no temporary files are needed.


These are all SQL*Server tables in the same database. There's no reason whatsoever for it to create temporary files -- left-outer joins that de-star a star-schema and remove the lookup tables from the datamart.

I can run the entire thing in WebFOCUS instead and stop paying for I-Way entirely, but Data Migrator provides a more straightforward, more maintainable package and that's important long-term. However I can only use it if it has the capacity to do what I need to do.

J.



May 09, 2012, 10:10 AM
Clif
quote:
These are all SQL*Server tables in the same database. There's no reason whatsoever for it to create temporary files


In that case I think the best approach is to figure out why the query isn't using APT and passed through to MS SQL Server.

Create a stored procedure with the following lines and add it on the process flow tab before the embedded (purple) data flow.

SET TRACEON=ALL
SET TRACEUSER=ON
SET TRACEON=NTFEXP/4/CLIENT


This little used trace setting would show the SQL sent to the RDBMS if the query can use APT, but if it can not, there is message as to why. It can be somewhat cryptic but if you provide a repro (data flow, source/target synonyms) to hotline they should be able to figure it out.


N/A
May 09, 2012, 10:44 AM
John_Edwards
Thank you, I'll have a look.

I've opened a case on this, but they're pursuing the same concept -- look to solve my particular example instead of the greater issue involved. That's not going to aid me in the long-term.

J.



May 09, 2012, 11:55 AM
John_Edwards
Alright well now I'm confused. I just examined one of my other routines and it's running a .foc beyond the 2G limit. So I don't know what's going on with this thing.

Thanks for tuning in.

J.