John Ousterhout
- One of the problems with databases is schema management. Changes to a database schema are highly disruptive:
- Bring the system down.
- Make a collection of changes to the schema.
- Bring the system back up again.
- Discover you made a mistake, at which point your system is unusable until you can fix it.
- For RAMCloud the system must be able to evolve with no downtime.
- A fixed scheme that probably doesn't make sense.
- One alternative: make the individual data items self-identifying enough that the schema can evolve gracefully:
- Perhaps there is no schema: individual records are variable-length with variable columns and completely self-identifying.
- Store a version number in each record?
- What is the state-of-the-art for schema changes in relational databases today? Can they be done without bringing the system down at all?
{"serverDuration": 24, "requestCorrelationId": "1c56eef589ce4c169a34416baef74a13"}