pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Mattias Kregert <mattias@kregert.se>
To: pgsql-general@postgresql.org
Subject: Request for advice: Table design
Date: Tue, 17 Jun 2003 10:35:19 +0200
Message-ID: <021301c334ab$633b79c0$09000a0a@kregert.se> (raw)

Good morning, list!
I am in the middle of a project and i am just about to decide how to lay out the table(s) for work orders. I had been planning to use one table, but now i'm not so sure that it would be optimal.

The order history will grow with something like 150K-200K rows/year and will have to be saved for ten years.
The total number of active (new+validated+planned+ready_for_invoicing) orders would be something like 5K rows.

I am thinking about two solutions:

1. One table, "orders" with a column named "status". New orders, validated orders, planned orders, ready for invoicing, and old orders, all in one big table. The status column would be updated a number of times for each order.

2. A number of tables, "new_orders", "validated_orders", "order_history" etc... No status column. Order rows would be moved from one table to another. Perhaps i should have only two tables: "orders" and "order_history"?


More tables would mean more indexes (but smaller in size), harder to use/maintain a lot of tables and indexes and triggers and stuff... One table would mean that a lot of inactive orders would slow down access to active rows in the table...

Any suggestions? Real world examples?

/M




view thread (8+ messages)  latest in thread

Message-ID: <021301c334ab$633b79c0$09000a0a@kregert.se>
Permalink:  ../021301c334ab$633b79c0$09000a0a@kregert.se/
Also on:    postgresql.org/message-id/021301c334ab$633b79c0$09000a0a@kregert.se

 · 

reply

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-sql@postgresql.org
  Cc: mattias@kregert.se, pgsql-general@postgresql.org
  Subject: Re: Request for advice: Table design
  In-Reply-To: <021301c334ab$633b79c0$09000a0a@kregert.se>

* 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