Focal Point Banner
Community Center Education Summit Technical Support User Groups
Let's Get Social!

Facebook Twitter LinkedIn YouTube
Go
New
Search
Notify
Tools
Reply
  
efficiency
 Login/Join
 
Gold member
posted
The two of us in our firm who do the most FOCUS programming have a question of database design.

Does a join slow down processing time and does the size of the tables when doing a join slow the process at all...For example,

If I do a join between two tables that each have 10 million records, will this be slower than if I have one larger table with the 10 million records in it. My assumption has always been that the join would slow the processing, but another in the department disagrees and I'm not proud and am willing to admit I'm wrong if someone knows for sure.
 
Posts: 90 | Registered: April 15, 2004Reply With QuoteReport This Post
Virtuoso
posted Hide Post
It's been my experience that if the join is on key fields and the selection criteria is efficient then no slow down. In other instances it's been better to get the data from one table, hold it, get the data from the other table, hold it and then join the hold files on some common key. We use WebFOCUS (currently 4.3.6 production) against a DB2 V7.x database.


Leah C
 
Posts: 1317 | Location: Council Bluffs, IA | Registered: May 24, 2004Reply With QuoteReport This Post
Guru
posted Hide Post
What kind of database?

Thanks!
 
Posts: 428 | Location: Springfield, MA | Registered: May 07, 2003Reply With QuoteReport This Post
Platinum Member
posted Hide Post
If the database is a Focus file, then the join will not slow it down too much, because in a Focus file the first time a value is joined, the location of the joined to data is recorded, and thereafter its just a direct access.
Another 'but' is the size of the joined-to file.
If there are only a few values, then these probably stay in memory and there is no degradation.
When all values are put into one record, that record gets bigger and more i/o has to occur to access the record. But, sequential i/o is fast.
So, each situation has to be decided on its own merits.
 
Posts: 226 | Registered: June 08, 2003Reply With QuoteReport This Post
Gold member
posted Hide Post
The question was more of theory than actual situation as we are designing a few oracle tables and attempting to make it as efficient as possible so that the user will not be waiting. In general it would be a one to one join on Oracle 9i tables with about 10 million rows each, but we were more or less trying to decide amongst ourselves whether we would be better served to bring the two tables together 'datamart' style or to leave them separate. It is a debate we have had frequently of late because our DBAs have been heading in a direction that has us doing multiple joins more frequently.

Our assumption is that the join would take advantage of key fields.

Thanks to all for the input as it just helps us to discuss our theory all the better.
 
Posts: 90 | Registered: April 15, 2004Reply With QuoteReport This Post
  Powered by Social Strata  
 


Copyright © 1996-2018 Information Builders, leaders in enterprise business intelligence.