Authors:
Theppatorn Rhujittawiwat
1
;
John Ravan
1
;
Ahmed Saaudi
1
;
Shankar Banik
2
and
Csilla Farkas
1
Affiliations:
1
Computer Science & Engineering Dept., University of South Carolina, Columbia, SC, U.S.A.
;
2
Dept. of Mathematics and Computer Science, The Citadel, The Military College of South Carolina, Charleston, SC, U.S.A.
Keyword(s):
Database, Malicious Transaction, Security, Dependency Graph, Data Provenance.
Abstract:
In this paper, we propose a solution to recover a database from the effects of malicious transactions. The traditional approach for recovery is to execute all non-malicious transactions from a consistent rollback point. However, this approach is inefficient. First, the database will be unavailable until the restoration is finished. Second, all non-malicious transactions that committed after the rollback state need to be re-executed. The intuition for our approach is to re-execute partial transactions, i.e., only the operations that were affected by the malicious transactions. We develop algorithms to reduce the downtime of the database during recovery process. We show that our solution is 1.) Complete, i.e., all the effects of the malicious transactions are removed, 2.) Sound, i.e., all the effects of non-malicious transactions are preserved, and 3.) Minimal, i.e., only affected data items are modified. We also show that our algorithms preserve conflict serializability of the transac
tion execution history.
(More)