Re: best practise/pattern for large OR / LIKE searches

From: tv(at)fuzzy(dot)cz
To: "Pavel Stehule" <pavel(dot)stehule(at)gmail(dot)com>
Cc: "Ries van Twisk" <pg(at)rvt(dot)dds(dot)nl>, "pgsql-general(at)postgresql(dot)org mailing list" <pgsql-general(at)postgresql(dot)org>
Subject: Re: best practise/pattern for large OR / LIKE searches
Date: 2009-08-26 11:54:53
Message-ID: 10787.193.179.187.70.1251287693.squirrel@sq.gransy.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Pavel,

can you provide some link or other directions to the proposal? I guess it
was posted to this list or somewhere else?

Tomas

> Hello
>
> one year ago there was proposal for index support for LIKE %some%. The
> problem was extreme size of index size.
>
> I thing so you can write own C function, that can check string faster
> than repeated LIKE
>
> some like
>
> SELECT * FROM tbl WHERE contains(datanumber, '12345','54321',....)
>
> regards
> Pavel Stehule
>
> 2009/8/26 Ries van Twisk <pg(at)rvt(dot)dds(dot)nl>:
>> Hey All,
>> I am wondering if there is a common pattern for these sort of queries :
>> SELECT * FROM tbl WHERE datanumber LIKE '%12345%' OR LIKE '%54321%' OR
>> LIKE
>> '%8766%' OR LIKE '%009%', ..
>> The number of OR/LIKES are in the order of 50-100 items...
>> the table tbl is a couple of million rows.
>> The datanumber is a string that are maximum 10 characters long, no
>> spaces
>> and can contain numbers and letters.
>> Apart from creating a couple of index table to make the LIKE left
>> anchored
>> something like this :
>> tbl <----> tbl_4letters
>> tbl <----> tbl_5letters
>> tbl <----> tbl_3letters
>> or creating a functional index 'of some sort' are there any other
>> brilliant
>> ideas out there to solve such a problem (GIN/GIS???) ?
>> Searches are currently taking to long and we would like to optimize
>> them,
>> but before we dive into our own solution we
>> where wondering if there already common solutions for this...
>> Kind Regards,
>> Ries van Twisk
>>
>>
>>
>>
>>
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alban Hertroys 2009-08-26 12:14:45 Tagged types module and varlena changes
Previous Message Sébastien Lardière 2009-08-26 10:27:54 Re: [Skytools-users] WAL Shipping + checkpoint