Primary key vs unique index

From: "Voils, Steven M" <steve(at)sensorswitch(dot)com>
To: "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org>
Subject: Primary key vs unique index
Date: 2011-03-17 12:19:09
Message-ID: 856778F98E4F4B4F896F2B70C8164A3437FA990F2D@EXCHANGE-MBX2.AcuityLightingGroup.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Is there a fundamental difference between a primary key and a unique index? Currently we have primary keys on tables that have significant amounts of updates performed on them, as a result the primary key indexes are becoming significantly bloated. There are other indexes on the tables that also become bloated as a result of this, but these are automatically rebuild periodically by the application (using the concurrently flag) when read usage is expected to be very low.

We don't want to remove the unique constraint of that the primary key is providing, but the space on disk will continue to grow unbounded so we must do something. Can we replace the primary key with a unique index that could be rebuilt concurrently, or would this be considered bad design? The reasoning behind this would be that the unique index could be rebuilt concurrently without taking the application down or exclusively locking the table for an extending period of time. Are there other advantages to a primary key outside of a uniqueness constraint and an index?

Responses

Browse pgsql-general by date

  From Date Subject
Next Message bkwiencien 2011-03-17 12:24:47 pgwatch by Cybertec
Previous Message MauMau 2011-03-17 11:06:44 Is PostgreSQL supported on RHEL6?