On Sep 14, 2011, at 6:00, Antonio Vieiro <anto...@antonioshome.net> wrote:

> Hi all,
> 
> One of my entities 'E' may be 'tagged' with an arbitrary set of 256 tags 'T'.
> 
> A first approach could be to add a M:N relationship between 'E' and 'T'.
> 
> A second way to do this could be to add a BIT(256) datatype to 'E',
> setting bits to '1' if the entity is tagged with each one of the 256
> tags (i.e. using a 'bitmask' on the set of tags).
> 
> Since querying entities 'E' with a certain set of tags 'T' must be
> very fast I was wondering if the second approach would be faster. What
> do you think?
> 
> Thanks for any hints,
> Antonio
> 
> -- 
> Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general

Dealing with 256 arbitrary ones and zeros instead of meaningful named tags 
seems to be asking for mega-confusion.

If performance is really that important do both and run some performance tests.

If the tag set ever changes a schema change will be needed for the bit version 
but not the two-table version.

David J.

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to