HandsOn DB: Managing Data Dependencies involving Human Actions

Mohamed Eltabakh
Walid Aref, Purdue University
Mourad Ouzzani, Purdue University
Ahmed Elmagarmid, Purdue University

IEEE Transactions on Knowledge and Data Engineering


In this paper, we address the problem of managing complex dependencies among the database items that involve human actions, e.g., conducting a wet-lab experiment or taking manual measurements. If y = F(x) where F is a human action that cannot be coded inside the DBMS, then whenever x changes, y remains invalid until F is externally performed and its output result is reflected into the database. Many application domains, e.g., scientific applications in biology, chemistry, and physics, contain multiple such derivations and dependencies that involve human actions. In this paper, we propose HandsOn DB, a prototype database engine for managing dependencies that involve human actions while maintaining the consistency of the derived data. HandsOn DB includes the following features: (1) semantics and syntax for interfaces through which users can register human activities and express the dependencies among the data items on these activities, (2) mechanisms for invalidating and revalidating the derived data, and (3) new operator semantics that alert users when the returned query results contain potentially invalid data, and enable evaluating queries on either valid data only, or both valid and potentially invalid data. Performance results demonstrate the feasibility and practicality in realizing HandsOn DB.