Database design course
Modern graphical tools make it easy for a novice who knows nothing
of the principles of database design to create a simple database.
These tools are invaluable but the danger is that they concentrate
on the appearance of the database forms and reports on screen,
rather than on the way that the data should be stored and
structured in an efficient relational database.
This visual approach allows a user to produce a good-looking
database very quickly. The database will accept and display
its first few dozen entries and might work well for many months.
As the volume of data grows though, drawbacks in the underlying
structure may begin to appear and users can face three problems.
Performance
All databases will slow down as they grow larger but some suffer
worse than others.
-
An average design will slow down in step with the growth in
the volume of data being stored. It will halve in speed when
the size doubles and will fall to a tenth of its original
speed with ten times as much data.
-
A good design will slow less drastically.
-
A bad design might slow with the square of the size - falling to a
hundredth of the speed with ten times the data. It is very common
to meet a database like this which worked well under test conditions
with a few dozen records but which has slowed to a crawl in
production use with thousands of records.
Different types of database need different designs. Some must be
optimised for speed of manual data entry, others import their data
electronically from on-line sources but must be organised so that
regular reports can be produced easily.
Integrity
The data being held must be accurate if it is to be of any use to the
business. Poor design allows inconsistent values to exist or relies on
users copying entries from one place to another.
Inconsistent data is the worst failing that a databsae can suffer from. If
an item of data is completely and consistently wrong then a user can
apologise to the customer or manager for the mistake, put the data right
and be confident that they have fixed the problem. When a database holds
inconsistent data then users begin to mistrust it. They find that a name
has been spelt wrongly and put it right but then they find that the name
is still coming out wrong because the database holds duplicate and
inconsistent values. Users (and managers) quickly lose confidence in a
database when this happens.
Expansion
As well as growing larger in size, databases also grow as users request
more features. A well-designed relational database will allow for this
growth.
This short course addresses these three issues and will help you to create
databases that will be robust and reliable and able to grow.
|