The results show that when audit queries run over infrequently modified data, RID provides substantial benefit, despite false negatives. Measurements of RID in RQL validate the model. We developed an analytical model explaining how application workload parameters impact false negatives. It does not detect duplicate computations when data of interest remains unchanged between snapshots but unrelated data, on the same page, changes, reporting a false negative. The low-level detection is fast but conservative. It eliminates redundancies at the language level by reusing results and exploiting computation semantics. Where other techniques detect and eliminate redundancies at the language level, RID detects redundancies in the snapshot system at low-cost, taking advantage of the snapshot metadata. ![]() It has a novel, very efficient software structure. Complementary to SQL optimizer, RID reduces the cost of audit programs substantially. We have designed and implemented RID, the first run-time optimization framework that detects and eliminates duplicate computations in SQL programs running over page-level copy-on-write snapshots. SQL optimizer does not eliminate such redundancies, common in many workloads. We present the first study defining a performance envelope for cross-snapshot computations over page-level incremental snapshots.Īuditing queries can include wasteful redundancies when they repeat the same computations on data of interest that do not change between snapshots. Cross-snapshot computations running over page-level incremental snapshots bring up interesting performance issues that have not been studied before. ![]() Retro creates and provides access to copy-on-write snapshots. The RQL implementation utilizes the SQLite UDF framework in the Berkeley DB datastore and the Retro page-level incremental snapshot system. We explain how they translate into SQL computations in a snapshot system and show how to express several common analysis patterns with illustrative examples. To achieve this, we propose a small number of simple mechanisms defined in terms of relational constructs familiar to programmers. This dissertation presents the design, implementation, and evaluation of the Retrospective Query Language (RQL), a simple declarative extension to SQL that allows the users to specify and run cross-snapshot computations conveniently in a snapshot system. ![]() Current snapshot systems, however, offer no adequate support for computations that analyze multiple snapshots. Retrospective snapshot systems that support computations over datastore snapshots allow applications to provide past state analysis conveniently, using simple datastores like Berkeley DB or SQLite. Auditors require easy access to data at times of interest related to after-the-fact, real-world discoveries. The ability to analyze the past state of data is increasingly important for applications to provide auditing and other forms of fact-checking.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |