Incremental Discovery of Order Dependencies on Tuple Insertions

Order dependencies (ODs) are recently proposed to describe a relationship of ordering between lists of attributes. It is typically too costly to design ODs manually, since the number of possible ODs is of a factorial complexity in the number of attributes. To this end, automatic discovery techniques for ODs are developed. In practice, data is frequently updated, especially with tuple insertions. Existing techniques do not lend themselves well to these situations, since it is prohibitively expensive to recompute all ODs from scratch after every update. In this paper, we make a first effort to investigate incremental OD discovery techniques in response to tuple insertions. Given a relation D, a set \(\varSigma \) of valid and minimal ODs on D, and a set \(\triangle D\) of tuple insertions to D, it is to find, changes \(\triangle \varSigma \) to \(\varSigma \) that makes \(\varSigma \oplus \triangle \varSigma \) a set of valid and minimal ODs on \(D + \triangle D\). Note that \(\triangle \varSigma \) contains both new ODs to be added to \(\varSigma \) and outdated ODs to be removed from \(\varSigma \). Specifically, (1) We formalize the incremental OD discovery problem. Although the incremental discovery problem has a same complexity as its batch (non-incremental) counterpart in terms of traditional complexity, we show that it has good data locality. It is linear in the size of \(\triangle D\) to validate on \(D+\triangle D\) any OD \(\varphi \) that is valid on D. (2) We present effective incremental OD discovery techniques, leveraging an intelligent traversal strategy for finding \(\triangle \varSigma \) and chosen indexes to minimize access to D. Our approach computes \(\triangle \varSigma \) based on ODs in \(\varSigma \), and is independent of the size of D. (3) Using real-life data, we experimentally verify that our approach substantially outperforms its batch counterpart by orders of magnitude.

[1]  Felix Naumann,et al.  Efficient order dependency detection , 2015, The VLDB Journal.

[2]  Guoliang Li,et al.  A Novel Cost-Based Model for Data Repairing , 2017, IEEE Transactions on Knowledge and Data Engineering.

[3]  Calisto Zuzarte,et al.  Expressiveness and Complexity of Order Dependencies , 2013, Proc. VLDB Endow..

[4]  Vijay V. Vazirani,et al.  Approximation Algorithms , 2001, Springer Berlin Heidelberg.

[5]  Divesh Srivastava,et al.  Effective and Complete Discovery of Order Dependencies via Set-based Axiomatization , 2016, Proc. VLDB Endow..

[6]  Felix Naumann,et al.  Detecting unique column combinations on dynamic data , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[7]  Felix Naumann,et al.  Efficient Denial Constraint Discovery with Hydra , 2017, Proc. VLDB Endow..

[8]  Paolo Papotti,et al.  BigDansing: A System for Big Data Cleansing , 2015, SIGMOD Conference.

[9]  Lei Chen,et al.  Differential dependencies: Reasoning and discovery , 2011, TODS.

[10]  Shuai Ma,et al.  Improving Data Quality: Consistency and Accuracy , 2007, VLDB.

[11]  Jianzhong Li,et al.  Incremental Detection of Inconsistencies in Distributed Data , 2014, IEEE Trans. Knowl. Data Eng..

[12]  Felix Naumann,et al.  A Hybrid Approach to Functional Dependency Discovery , 2016, SIGMOD Conference.

[13]  Divesh Srivastava,et al.  Effective and complete discovery of bidirectional order dependencies via set-based axioms , 2018, The VLDB Journal.

[14]  Jarek Gryz,et al.  Fundamentals of Order Dependencies , 2012, Proc. VLDB Endow..

[15]  Paolo Papotti,et al.  Holistic data cleaning: Putting violations into context , 2013, 2013 IEEE 29th International Conference on Data Engineering (ICDE).

[16]  Bei Yu,et al.  On generating near-optimal tableaux for conditional functional dependencies , 2008, Proc. VLDB Endow..

[17]  Hannu Toivonen,et al.  TANE: An Efficient Algorithm for Discovering Functional and Approximate Dependencies , 1999, Comput. J..

[18]  Paolo Papotti,et al.  Discovering Denial Constraints , 2013, Proc. VLDB Endow..