Database design and optimisation
A database structure that keeps data correct and queries fast, designed new or repaired in place.
GradaxEuropean companyOrder outright
Founded 2014·Built and operated in Europe·3 days to 4 weeks

About this service
We design new database schemas and fix existing ones that have grown slow or messy. That means tables that model your business properly, constraints that stop bad data getting in, and indexes based on the queries you actually run. For an existing database, we find the slow queries, explain why they are slow and fix them without downtime.
Most slow databases are missing the obvious index
When an application slows down as it grows, the cause is usually not the server or the database engine. It is a handful of queries scanning entire tables because no index matches how they search. A query that took 20 milliseconds with 1,000 rows can take seconds with a million, and nobody notices until customers do.
We start from evidence: the database's own statistics on which queries run most often and take longest. That usually points to a short list of fixes, such as an index on the columns a common filter uses, a query rewritten to avoid loading whole tables, or a missing link between tables that forces repeated lookups. We measure each query before and after, so the improvement is visible rather than claimed.
Constraints stop bad data at the door
Many databases rely on the application to keep data clean. The app checks that an email is unique, that an order belongs to a real customer, that a quantity is not negative. Then a second app, an import script or a hurried manual fix skips those checks, and duplicates and orphaned records creep in. Reports start disagreeing, and nobody is sure which number is right.
A well-designed schema enforces the important rules itself: unique constraints, foreign keys, check constraints and sensible defaults. Whatever writes to the database has to follow them. For an existing system, we find where data has already gone wrong, plan the clean-up and then add the constraints so it does not happen again.
- Unique constraints on things that must not repeat, such as emails or invoice numbers
- Foreign keys so records cannot point at something that does not exist
- Check constraints for values that must stay in range
- Indexes chosen from real query patterns, not added everywhere
What you get
Everything below is in the price. Nothing here is an upgrade.
- Schema design or review report
- Entity relationship diagram
- Migration scripts for changes
- Index and query optimisation with timings
- Data dictionary
What changes
- Tables and relationships that match how the business actually works
- Constraints that stop duplicate, orphaned or invalid records at the source
- Slow queries identified from real usage and made faster, with before-and-after timings
- A schema diagram and data dictionary your developers can rely on
How it runs
Understand
Data, users and the questions the business asks of it.
Measure
Slow queries and data problems found from real usage, not guesses.
Design
Schema, constraints and indexes planned and reviewed with you.
Apply
Changes shipped as tested migration scripts, timed for low traffic.
Compare the sizes
The standard price for each size. Extras are priced beside it, not hidden behind a call.
| Included | Review€2903 to 5 working days | Review and fixes€5001 to 2 weeks | New design or redesign€1,0502 to 4 weeks |
|---|---|---|---|
| Schema review | Included | Included | Included |
| Top ten slowest queries analysed | Included | Included | Included |
| Written recommendations | Included | Included | Included |
| Entity relationship diagram | Included | Included | Included |
| Indexes added or removed | Not included | Included | Included |
| Queries rewritten | Not included | Included | Included |
| Migration scripts tested on a copy | Not included | Included | Included |
| Before-and-after timings | Not included | Included | Included |
| Full schema design for up to 25 tables | Not included | Not included | Included |
| Data migration plan from the old structure | Not included | Not included | Included |
| Data dictionary | Not included | Not included | Included |
| Backup and maintenance routine | Not included | Not included | Included |
| Order | Select | Select | Select |
Add what you need
Choose the size
Add what you need
Your total€500
ContinueThe standard price, plus whatever you add. Confirmed in writing before anything starts; nothing is charged until you accept it.
Questions
Which databases do you work with?
PostgreSQL, MySQL, MariaDB, SQL Server and SQLite, plus MongoDB for document data. Most of our design work is on PostgreSQL.
Will the changes cause downtime?
We plan changes to avoid it, using techniques such as building indexes without locking tables. Where a short pause is unavoidable, we schedule it with you.
Do you need access to live data?
Read access or a recent copy is enough for the review. Personal data can be masked in the copy if you prefer.
Related searches
Related work
One-timeSQL and NoSQL queriesQueries written, fixed or sped up so you get the right numbers from your database, quickly.from €290one-time
ScopedData migrationMove the records into the new system without losing or duplicating them.from €690on scope
ScopedReporting dashboardThe numbers you keep asking for, in one place, updating themselves.from €890on scope
Order it
Standardised enough to order on its own. The price is confirmed in writing before anything starts.