Performance of views using outer joins (5.01)
Posted in 1995
Hi, searching for reasons of a lack of performance in a client-server-environment we detected those views causing the trouble, which were using outer joins. Looking at those complex views as a tree of joined tables the optimizer decided to generate a temporary table of the whole view, every time when there were search conditions referring to columns of sub-trees joined by an outer join. The backend wrote about 20 Megabytes to /tmp, which took at least about 8 minutes ( when it happend to have enough diskspace ), though all the joins had been supported by indeces. The same query took less than a second, when the OUTER's were dropped for test! In my opinion the optimizer should drop the OUTER's himself recursively, when he detects a search condition rteferring to those tables. Is this asked too much? Is this realized in one of the latter versions (5.02, 5.03, 6.x or 7.x)? Or am i disregarding something? Views can be very helpfull especially in C/S-Environments and INFORMIX should pay them more attention to make there products more suitable for C/S. Another instance to do so, would be to allow UNION's in views. Or is this already realized in one of the above mentioned versions? Many questions - thanks in advance for any answer. - Martin Berns EMail: martin.berns@materna.de Dr. Materna GmbH Tel: ++49 231 5599 231 Vosskuhle 37 FAX: ++49 231 5599 100 44141 Dortmund