Re: GUID in postgres

Поиск
Список
Период
Сортировка
Искать
От
Тема
Re: GUID in postgres
Дата
Msg-id
004501c15e50$ffd4df20$0c00a8c0@mouse
Ответ на
Re: GUID in postgres (Josh Berkus)
Список
Дерево обсуждения
GUID in postgres "Dinesh Parikh" <dineshp@newgen.co.in>
Re: GUID in postgres "Dmitry G. Mastrukov" Дмитрий Геннадьевич Мастрюков <dmitry@taurussoft.org>
Re: GUID in postgres <postgresql_sql@kaiserdigital.com>
Re: GUID in postgres "Dmitry G. Mastrukov" Дмитрий Геннадьевич Мастрюков <dmitry@taurussoft.org>
Re: GUID in postgres "Josh Berkus" <josh@agliodbs.com>
Re: GUID in postgres <postgresql_sql@kaiserdigital.com>
Re: GUID in postgres "Josh Berkus" <josh@agliodbs.com>
Re: GUID in postgres "Josh Berkus" <josh@agliodbs.com>
Cross-posting (was Re: GUID in postgres) Tom Lane <tgl@sss.pgh.pa.us>
Re: GUID in postgres John Hasler <john@dhh.gt.org>
Re: GUID in postgres Horst Herb <hherb@malleenet.net.au>
Re: GUID in postgres John Hasler <john@dhh.gt.org>
Re: GUID in postgres "Josh Berkus" <josh@agliodbs.com>
Hi

The overhead in generating GUIDs is minimal.

I've never heard of a GUID implementation that uses random numbers. In
most cases it is a functions of the date, a sequence, and/or the MAC.

Why would you want to use two columns when you use could one? Two
columns in each table would clutter your scheme as well as your
procedures.

It doesn't matter if you change the network card. The GUIDs will still
be unique. The MAC does not make the GUID unique on any given server.
The rest of the GUID generation function accomplishes this task. All
that is accomplished by incorporating the MAC into the GUID is
uniqueness between machines.



-----Original Message-----
From: Josh Berkus [mailto:josh@agliodbs.com] 
Sent: Friday, October 26, 2001 11:31 AM
To: postgresql_sql@kaiserdigital.com; pgsql-sql@postgresql.org
Subject: Re: [SQL] GUID in postgres


Folks,

> I think most of you are missing the point here.
> 
> GUIDs are unique and they are required for Enterprise development.

I don't know.  I have yet to hear a persuasive argument as to why none
of the schemes previously mentioned would not work.   While a "GUID"
automated by the RDBMS platform is convenient, it is by no means
necessary.  Any number of approaches can be substituted.

For example, I have a system that requires middleware-level interaction
between 3 database servers.  The main data tables in these databases all
have 2-column primary keys; one column for the (locally unique)
sequence, one column for the (globally unique) server ID.  This scheme
fulfills all of the functionality that you describe, without the
overhead of complex random seed mechanisms or other proprietary
overhead.  Also, any requests that are strictly local in nature need
only query the local id without worrying about the second column.

> Do a search for "multi master replication" and you should pick up some
> info on how to properly implement a GUID. The simplest approach is to
> use some combination of a sequence and the MAC address.

SO what happens if you swap out the network card?

-Josh

______AGLIO DATABASE SOLUTIONS___________________________                                      Josh Berkus Complete information technology      josh@agliodbs.com  and data management solutions       (415) 565-7293 for law firms, small businesses        fax 621-2533   and non-profit organizations.      San Francisco


В списке pgsql-sql по дате отправления
От: Josh Berkus
Дата:
Сообщение: Re: GUID in postgres
От: Josh Berkus
Дата:
Сообщение: Re: GUID in postgres
FAQ