Skip site navigation (1) Skip section navigation (2)

Re: More then 1600 columns?

From: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
To: Dmitriy Igrishin <dmitigr(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: More then 1600 columns?
Date: 2010-11-12 08:30:14
Message-ID: AANLkTi=heiPNZKiKbTk1i+dMTinqpr5OmZEKD_n_Ey+8@mail.gmail.com (view raw or flat)
Thread:
Lists: pgsql-general
2010/11/12 Dmitriy Igrishin <dmitigr(at)gmail(dot)com>:
> Well, it's possible to create GIN indexes on arrays of built-in data types
> without extra efforts, because of "GIN" access method has defaul
> operator class. But it's not true for GiST:

now you have a true :)

you need to install intarray contrib module for GiST

Pavel

>
> SELECT am.amname AS index_method, opc.opcname AS opclass_name
> FROM pg_am am, pg_opclass opc
> WHERE opc.opcmethod = am.oid AND am.amname = 'gist'
> ORDER BY index_method, opclass_name;
>
>  gist         | box_ops
>  gist         | circle_ops
>  gist         | point_ops
>  gist         | poly_ops
>  gist         | tsquery_ops
>  gist         | tsvector_ops
>
> With hstore I don't need to care about it at all.
>
> But thank you very much to points me about indexes on arrays !
>
> 2010/11/12 Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
>>
>> 2010/11/12 Dmitriy Igrishin <dmitigr(at)gmail(dot)com>:
>> > Hey Peter,
>> >
>> > Unfortunately, there is no indexes on arrays (only on expressions).
>>
>> there are indexes on arrays - you can use a GiST, Gin indexes.
>>
>> regards
>>
>> Pavel
>>
>>
>> > With hstore we can easily create GiST index for effective access.
>> >
>> > 2010/11/12 Peter Bex <Peter(dot)Bex(at)xs4all(dot)nl>
>> >>
>> >> On Fri, Nov 12, 2010 at 10:17:50AM +0300, Dmitriy Igrishin wrote:
>> >> > Hey Mark,
>> >> >
>> >> > Yeah, I can't imagine an entity in a real project even with more than
>> >> > 100
>> >> > columns. Its rare case.
>> >> > But if you entities (rows/tuples) of some class (table) can contains
>> >> > variable
>> >> > set of columns (properties) you can look at hstore contrib module.
>> >>
>> >> What can also work extremely well is storing the data in an array.
>> >> If you need to access the array based on more meaningful keys you could
>> >> store key/index pairs in another table.
>> >>
>> >> This approach only works well if you have multiple arrays with the same
>> >> layout.  You probably also need to build up your query dynamically if
>> >> you need to access variable numbers of datapoints.
>> >>
>> >> Cheers,
>> >> Peter
>> >> --
>> >> http://sjamaan.ath.cx
>> >> --
>> >> "The process of preparing programs for a digital computer
>> >>  is especially attractive, not only because it can be economically
>> >>  and scientifically rewarding, but also because it can be an aesthetic
>> >>  experience much like composing poetry or music."
>> >>                                                        -- Donald Knuth
>> >>
>> >> --
>> >> 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
>> >
>> >
>> >
>> > --
>> > // Dmitriy.
>> >
>> >
>> >
>
>
>
> --
> // Dmitriy.
>
>
>

In response to

Responses

pgsql-general by date

Next:From: John R PierceDate: 2010-11-12 08:57:32
Subject: Re: More then 1600 columns?
Previous:From: Dmitriy IgrishinDate: 2010-11-12 08:20:35
Subject: Re: More then 1600 columns?

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group