Slow Query problem

From: "Premsun Choltanwanich" <Premsun(at)nsasia(dot)co(dot)th>
To: <pgsql-hackers(at)postgresql(dot)org>
Subject: Slow Query problem
Date: 2008-01-28 07:18:30
Message-ID: 479DE41D.C5F7.004C.0@nsasia.co.th
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dear All,

I am currently using PostgreSQL database version 8.0.13. My problem relates to a slow result when a query using a defined view joins to another table for a result.

Background: I have 7 tables of invoice transactions. The tables are slightly different in that they record different data (some different columns in each table). There are about 250,000 records when a union view is created. A simply query on this union performs satisfactorily.

The invoice table union view is then joined with a table of receipts (which have a total of about 150,000 records).

It takes around 3.5 seconds for "select * from view_transaction where member_id = 999 and receipt_no is null" (which returns unpaid invoices).

By hard coding I created a single table from the 7 invoice tables (instead of creating a union) and then used it with receipt table. This time for the same query improved to 1.8 seconds.

To further improve things I tried to code the selection rather than to use a view, and so "select * from temp_transaction where member_id = 999 and receipt_no is null" provided the result in .5 second. (2 records returned containing the details of receipt_no, transaction_no, transaction_type, transaction_amount, member_id).

I would prefer to be able to have completed the above by using unions and views. Is it possible to do this, or am I better creating a permanent table of invoices and writing the query as I did above?

Any comments on this and suggestions would be appreciated. If there is documentation where I can read up please let me have a link.

Thank You,

Premsun

NETsolutions Asia Limited
+66 (2) 237 7247
http://www.nsasia.co.th

Browse pgsql-hackers by date

  From Date Subject
Next Message Magnus Hagander 2008-01-28 08:28:45 Re: GSSAPI doesn't play nice with non-canonical host names
Previous Message Guillaume Smet 2008-01-28 06:55:16 Re: Proposed patch: synchronized_scanning GUC variable