When studying complex real-time systems we found that they often require distribution and sophisticated sharing of extensive amounts of data, with full or partial replication of the database. For example, in integrated vehicle systems control we have identified a need for autonomous nodes controlling individual subsystems and handling large amounts of data locally under hard timing constraints (e.g., fuel injection, ignition control), while at the same time requiring parameters from other subsystems on a much less critical time scale (e.g., from the transmission, environment sensors). Similar features have been identified in automated manufacturing and time-constrained distributed naming services.

When building distributed databases, sources of unpredictability are introduced due to network communication and distributed commit processing, as well as disk accesses. Hence, in order to guarantee the timeliness and predictability of the system, the sources of unpredictability must either be eliminated, or the software must become time-cognizant. By placing the database in main memory, unpredictable disk access delays are avoided. Further, in order to guarantee local data availability and eliminate network communication, the database will be (virtually) fully replicated. Finally, in the studied application scenarios, temporary inconsistencies of the distributed database can be allowed. Hence, updates are made locally and propagated to all nodes in a way that guarantees eventual consistency.

Uppdaterad: 2008-11-27
Sidansvarig: DRTS-gruppen