Via va Viaindex

Hamilton, Allison Allison.Hamilton@Cognos.COM
Wed, 11 Aug 1999 10:43:51 -0400


Mark,  

Most database optimizers will not quarantee that if you give them an Index
to use, they will use it. They may decide that the index is not the optimal
method of retrieval. (depending on the amount of data and the kind of data
in the table). I believe that some database don't even allow you to specify
an index on retrieval.  Because of that PowerHouse doesn't pass the VIAINDEX
information to the database at all.  We pass the list of segments and the
ordering information instead. This allows the database to decide for itself
which path is the optimal one for it to use in each case.  The ordering
request quarantees that the information is retrieved in a consistent order
regardless of how the database retrieved it.  In this way we are using the
database as efficiently as we can, letting it use its, hopefully
intelligent, information base to determine how best to get you the data you
requested.

Syntacticly, use of VIAINDEX, for relational databases is a kind of
shorthand for VIA a,b,c ORDERED, which is the information that will be sent
to the database.  With VIAINDEX, you can override the defaults by specifying
the VIA segments, but if they are not a sequential subset of the index
segments (a,b is valid, a,c is not, nor is b,c), PowerHouse will ignore the
VIAINDEX specification in the more recent versions (PH 8.1...). (I'm not
sure how accurate the comparison is for earlier versions.) You can also
override the ordering by specifying it.  In this case PowerHouse will use
the VIAINDEX segments but apply your specified ordering.

Hope this helps

Allison Hamilton
My words and ideas are not necessarily my employers.
> ----------
> From: 	stewm@canada.com[SMTP:stewm@canada.com]
> Sent: 	Tuesday, August 10, 1999 11:05 PM
> To: 	powerh-l@lists.swau.edu
> Subject: 	Via va Viaindex
> 
> G'day,
> 
> I would never think to use Viaindex with relational tables simply because
> Cognos doesn't recommend it.  However I just seen a case where a fellow
> worker used Viaindex with RDB.  I attended the code review meeting for his
> enhancements and mentioned the fact that even the 'Qdesign' manual states
> that you shouldn't use Viaindex with relational linkages.  
> 
> What are the reasons why Via is the better choice with relational
> databases.  The manual only states that it is better because indexes may
> change and thus code changes are not needed or something like that.  This
> can't be the only reason because Cognos has recommended to some companies
> to remove all Viaindex occurrances through out their apps when relational
> tables are involved.  I've also heard that data retrieval results can be
> unpredictable with the database optimizer in conjuction with Viaindex.
> Can someone tell me what ALL the drawbacks associated with using Viaindex
> with relational tables are?
> 
> Thanks in advance,
> 
> Mark Stewart
> Consultants Club Corp.
> Windsor, Ontario
> Canada
> 
> Current Site:
> 7.10.G2 OpenVms
> RDB
> Bannockburn, Il
> 
> ----------------------------------------------------------
> Get your FREE personalized e-mail at http://www.canada.com
> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
> =
> Subscribe: "subscribe powerh-l" in message body to
> majordomo@lists.swau.edu
> Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
> powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
> This list is closed, thus to post to the list, you must be a subscriber.
> 
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.