Database Analysis and Design
Trading as Context Solutions, we offer years of direct experience in the realm of database
design, normalisation, optimisation and warehousing. We have formal training and
accreditation from both Microsoft and Oracle in thier respective enterprise
database offerings. Direct experiance includes:
The design of a significant database system involves far more than correctly
identifying and creating the entities (tables and fields) and relationships involved.
One needs to size the database correctly so that sensible platform
choices are made. Then one needs to structure the hardware to maximise performance
- appart from the obvious memory allocation concerns, this may involve spreading
the database entities and rollback
segments (or transaction logs) onto physically separate disk drives and controller
cards. One would also need to pay careful attention to index design and location
to minimise contention (locking) in the database. Finally, one would need to analyse the
types of queries which will be run agains the database to ensure that they
are sensible and efficient.
- Microsoft SQL Server
- PC databases
- Microsoft Access
Often, the design of a large database involves trade-offs as not all of
the "ideal world" considerations are possible in a specific setting. In these
cases, experience rules the day.
- Online datawarehouse: This project involved the development of a PHP / Apache solution
for the display of summarised datawarehouse data to citrus fruit growers. Data is contained
in Informix and Microsoft SQLServer databases, and is made available to 120 clients of the
- Medicines Information Centre, Department of Pharmacology, University of Cape Town:
This project involved moveing a database of 100 000 records with a little over 1.2 million
searchabe key words from a legacy UNIX system into a Paradox database running
on a Netware file server.
- Medicine management database for Drug Utilisation Review: This SQL Server
database manages the monthly chronic medicine requirements of 400 000 people
with about 30 000 script changes per month. Almost 100 data capture clerks work on the database
daily, processing 550 000 database transactions per day. The database contains 120
separate tables, ranging in size from 8 records in the smallest table up to
4.5 million records in the largest.
- Internet based Wellness program: This product is a Wellness program for
a large Medical Aid Administrator.
The technology utilised comprises a web site, interfacing with Oracle and SQL Server databases.
Patients are validated against an Oracle database and then clinical data is gathered,
via a web interface, and stored in the SQL Server database. Once 300 different bits of
clinically significant information have been gathered, the database performs an extensive
health risk analysis on this patient. This analysis ultimately results in a
customised "Health and Lifestyle Report" for the specific patient.
Visit their general website
or see a sample
lifestyle report for more information.
- Distributed Database / Replication system: This project involved designing a system
which could syncronise data between a local SQL Server database and a remote Oracle database.
The data involved comprises two tables, of 500 000 and 3.5 million records respectively.
- Traffic Management Software: This system is to assist town councils and metropols to track distributed
assets. This project comprises a traffic sign register, available via the
Internet, for use by local authorities. The technology involved is a web server interfacing
with a SQL Server database on a Windows2000 system.
Cellular Phone SMS Messaging systems: The client, mailPrompt.co.za, required a product
that would cross the divide between eMail and Cellular telephony. The solution involves
a subscriber database (in Interbase / Linux) coupled to a web server. Extensive use is made of
java as the programming language for data access and batch processing. Visit
their website for more information about