Real-time database

Real-time database has two meanings. The most common use of the term refers to a database system which uses streaming technologies to handle workloads whose state is constantly changing.[1] This differs from traditional databases containing persistent data, mostly unaffected by time. When referring to streaming technologies, real-time processing means that a transaction is processed fast enough for the result to come back and be acted on right away.[2] Such real-time databases are useful for assisting social media platforms in the removal of fake news, in-store surveillance cameras identifying potential shoplifters by their behavior/movements, etc.

The second meaning of the term “real-time database” adheres to a stricter definition of real-time consistent with Real-time computing. Hard real-time database systems work with a real-time operating system to ensure the temporal validity of data through the enforcement of database transaction deadlines and include a mechanism (such as transaction scheduling policies) to maximize the number of successfully committed transactions and minimize the number of rolled-back transactions. While the performance metric for most database systems is throughput or transactions-per-second, the performance metric of a hard real-time database system is the ratio of committed-to-aborted transactions. This ratio indicates how effective the transaction scheduling policy is, with the ultimate goal of meeting deadlines 100% of the time. Hard real-time databases, through enforcement of deadlines, may not allow transactions to be late (overrun the deadline).[3]

  1. ^ Buchmann, A. "Real Time Database Systems." Encyclopedia of Database Technologies and Applications. Ed. Laura C. Rivero, Jorge H. Doorn, and Viviana E. Ferraggine. Idea Group, 2005.
  2. ^ Carpron, H.L., J. A. Johnson. Computers: Tools for the Information Age. Prentice Hall, 1998. 5th ed.
  3. ^ "What is and what isn't a hard real-time database system?". db-engines.com. Retrieved 2023-03-17.