Quote:Original post by Sirisian
During midterms people are printing a ton not to mention there are real-time applications that query the database constantly for data
Just a little nitpick. Real-time doesn't mean really really fast. It means that system guarantees a deadline by which a task will complete.
For example, consider sampling of notches on CD. The system needs to read data at exactly given rate (x GHz). If it's a bit late, or a bit early, the data will appear corrupt. Trivial system, one event, one period, yet it needs real-time guarantee. I remember problems just like that with old serial ports, where, if you couldn't process the signal on time, it was lost, and likely, incoming data became unreadable.
If these databases were soft real-time, then as soon as the system would become overloaded, it would start dropping queries immediately. This is a major challenge in such systems, and MMO design. What to do once you exceed the available resources. Trivial solution is simply to crash the server, but any practical solution will need to account for this overload, and either re-balance resources, decrease fidelity, or release part of load (disconnect clients or something) - all while not violating the real-time constraint.
The fact that scalable systems exists is just that - a fact. But few such systems have any kind of real-time demands. A 2.4 second delay while spooling a document isn't relevant or noticable.