From: Alvaro Herrera <alvherre@commandprompt.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
To: pgsql-performance@postgresql.org
Subject: Re: Best way to index IP data?
Date: Fri, 11 Jan 2008 18:37:10 -0300
Message-ID: <20080111213710.GD8260@alvh.no-ip.org> (raw)
In-Reply-To: <20080111212703.GU5294@mathom.us>
References: <200801101614.54729.kevin@kevinkempterllc.com>
<DA6DE53A-2F69-46F3-8C96-B341ADCDDFAF@blighty.com>
<36e682920801101541o7626bbddj428617144240c554@mail.gmail.com>
<Pine.LNX.4.64.0801111025390.30762@localhost>
<13179.1200064791@sss.pgh.pa.us>
<20080111162747.GT5294@mathom.us>
<24044.1200082058@sss.pgh.pa.us>
<20080111212703.GU5294@mathom.us>
Michael Stone wrote:
> On Fri, Jan 11, 2008 at 03:07:38PM -0500, Tom Lane wrote:
>> Michael Stone <mstone+postgres@mathom.us> writes:
>>> Well, a native IPv6 type would also be nice; inet is ridiculously bloated
>>> for both IPv4 *and* IPv6.
>>
>> Nonsense. 3 bytes overhead on a 16-byte address is not "ridiculously
>> bloated", especially if you want a netmask with it.
>
> Big if, no? There's a very large set of users that *don't* want/need a
> netmask, which is why the topic keeps coming back. (Also, according to the
> docs, inet requires 24 bytes, which is 50% more than needed; is that not
> correct?)
So what this means is that our type oughta be optimized. How about
having a separate bit to indicate whether there is a netmask or not, and
chop the storage earlier. (I dunno if this already done)
Also, with packed varlenas the overhead is reduced AFAIK.
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: alvherre@commandprompt.com, tgl@sss.pgh.pa.us
Subject: Re: Best way to index IP data?
In-Reply-To: <20080111213710.GD8260@alvh.no-ip.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox