From: | David Johnston <polobo(at)yahoo(dot)com> |
---|---|
To: | Antonio Vieiro <antonio(at)antonioshome(dot)net> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Bit datatype performance? |
Date: | 2011-09-14 13:23:12 |
Message-ID: | E7D3F37E-B2B2-439D-AEA3-6CE4533327D3@yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sep 14, 2011, at 6:00, Antonio Vieiro <antonio(at)antonioshome(dot)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(at)postgresql(dot)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.
From | Date | Subject | |
---|---|---|---|
Next Message | Radosław Smogura | 2011-09-14 13:58:32 | Re: Bit datatype performance? |
Previous Message | Marcos Hercules Santos | 2011-09-14 12:34:37 | using trigger to change status in one table from the modification in other table |