Subject | Re: [firebird-support] Re: Large volumes of data |
---|---|
Author | Dalton Calford |
Post date | 2005-02-21T19:35:52Z |
Hi Jannie,
On February 21, 2005 05:22 am, Jannie Nel wrote:
>
> As I am doing only preliminary research, I don't have all the details,
> but here's a shot:
>
> Person table will have Surname, Name, IDno, DOB, etc.
>
> Address could be
> a) in same table (AddressLine1, AddrssLine2, etc)
> b)in a seperate table where each row is an address line and there's a
> foreign key to the Person table
> c) be a seperate table with a foreign keys to the Street table, the
> Street table a foreign key to Suburb, etc.
>
> My gut feeling is that Address will probably be done as per (a)
>
> Jannie.
>
You have different things to consider when performing a table design study.
First Question - Will any end users ever need to directly touch the database
or will they only access the data via your tool (ie, they don't go in and
create thier own views on the fly..)
Second Question - How many concurrent users will be accessing the table?
Third Question - Is their a need for row level security?
Forth Question - Is their a need for after the fact transaction rollback
(undoing someone elses commit)
Fifth Question - Is their a need for replication and offline/online work?
Sixth Question - How many inserts on average for off/on peak hours
Seventh Question - Reporting tools, how flexible are they for different data
structures.
Final Question - Single row select return time - what is the maximum time the
application can wait for the first row to return from the select statement
(real time applications)
You need to answer these questions before you even begin to ask about
splitting the address into multiple tables.
best regards
Dalton