Re: [PERFORM] Simple machine-killing query!

2004-10-21 Thread Josh Berkus
Victor, > [explain] select * from BIGMA where string not in (select * from DIRTY); >                                QUERY PLAN > >  Seq Scan on bigma  (cost=0.00..24582291.25 rows=500 width=145) >    Filter: (NOT (subplan)) >

Re: [PERFORM] Simple machine-killing query!

2004-10-21 Thread Victor Ciurus
Well guys, Your replies have been more than helpful to me, showing me both the learning stuff I still have to get in my mind about real SQL and the wonder called PostgreSQL and a very good solution from Tom Lane (thanks a lot sir!)! Indeed, changing mem_sort and other server parmeters along with

Re: [PERFORM] Simple machine-killing query!

2004-10-21 Thread Tom Lane
Victor Ciurus <[EMAIL PROTECTED]> writes: > What I am requested to do is to keep all records from 'BIGMA' that do > not apear in 'DIRTY' > So far I have tried solving this by going for: > [explain] select * from BIGMA where string not in (select * from DIRTY); >QUER

Re: [PERFORM] Simple machine-killing query!

2004-10-21 Thread Aaron Werman
Sounds like you need some way to match a subset of the data first, rather than try indices that are bigger than the data. Can you add operation indices, perhaps on the first 10 bytes of the keys in both tables or on a integer hash of all of the strings? If so you could join on the exact set differe

Re: [PERFORM] Simple machine-killing query!

2004-10-21 Thread Stephan Szabo
On Thu, 21 Oct 2004, Victor Ciurus wrote: > Hi all, > > I'm writing this because I've reached the limit of my imagination and > patience! So here is it... > > 2 tables: > 1 containing 27 million variable lenght, alpha-numeric records > (strings) in 1 (one) field. (10 - 145 char lenght per record)