Abstract
Maintaining and querying hierarchical data in a relational database system is an important task in many business applications. This task is especially challenging when considering dynamic use cases with a high rate of complex, possibly skewed structural updates. Labeling schemes are widely considered the indexing technique of choice for hierarchical data, and many different schemes have been proposed. However, they cannot handle dynamic use cases well due to various problems, which we investigate in this paper. We therefore propose Order Indexes—a dynamic representation of the nested intervals encoding—which offer competitive query performance, unprecedented update efficiency, and robustness for highly dynamic workloads.





























Similar content being viewed by others
References
Al-Khalifa, S., Agadish, H., Koudas, N., Patel, J.M., Srivastava, D., Wu, Y.: Structural joins: a primitive for efficient XML query pattern matching. In: ICDE, pp. 141–152 (2002)
Amagasa, T., Yoshikawa, M., Uemura, S.: QRS: a robust numbering scheme for XML documents. In: ICDE, pp. 705–707 (2003)
Berglund, A., Boag, S., Chamberlin, D., Fernández, M.F., Kay, M., Robie, J., Siméon, J.: XML Path Language (XPath) version 2.0. W3C Recommendation (2010)
Boncz, P., Manegold, S., Rittinger J.: Updating the pre/post plane in MonetDB/XQuery. In: XIME-P (2005)
Brunel, R., Finis, J., Franz, G., May, N., Kemper, A., Neumann, T., Faerber, F.: Supporting hierarchical data in SAP HANA. In: ICDE (2015)
Bruno, N., Koudas, N., Srivastava, D.: Holistic twig joins: optimal XML pattern matching. In: SIGMOD, pp. 310–321 (2002)
Cai, J., Poon, C.K.: OrdPathX: supporting two dimensions of node insertion in XML data. In: DEXA, pp. 903–908 (2009)
Chawathe, S., Garcia-Molina, H.: Meaningful change detection in structured data. In: SIGMOD, pp. 26–37 (1997)
Cohen, E., Kaplan, H., Milo, T.: Labeling dynamic XML trees. SIAM J. Comput. 39(5), 2048–2074 (2010)
Finis, J., Brunel, R., Kemper, A., Neumann, T., Faerber, F., May, N.: DeltaNI: an efficient labeling scheme for versioned hierarchical data. In: SIGMOD, pp. 905–916 (2013)
Finis, J., Brunel, R., Kemper, A., Neumann, T., May, N., Faerber, F.: Indexing highly dynamic hierarchical data. In: VLDB, pp. 986–997 (2015)
Grust, T., van Keulen, M., Teubner, J.: Staircase join: teach a relational DBMS to watch its (axis) steps. In: VLDB, pp. 524–535 (2003)
Halverson, A., Burger, J., Galanis, L., Kini, A., Krishnamurthy, R., Rao, A.N., Tian, F., Viglas, S., Wang, Y., Naughton, J., DeWitt, D.: Mixed mode XML query processing. In: VLDB, pp. 225–236 (2003)
Haustein, M., Härder, T., Mathis, C., Wagner, M.: DeweyIDs—the key to fine-grained management of XML documents. In: SBBD, pp. 85–99 (2005)
Jagadish, H., Al-Khalifa, S., Chapman, A., Lakshmanan, L., Nierman, A., Paparizos, S., Patel, J., Srivastava, D., Wiwatwattana, N., Wu, Y., Yu, C.: Timber: a native XML database. VLDB J. 11(4), 274–291 (2002)
Li, C., Ling, T.W.: QED: a novel quaternary encoding to completely avoid re-labeling in XML updates. In: CIKM, pp. 501–508 (2005)
Li, C., Ling, T.W., Hu, M.: Efficient processing of updates in dynamic XML data. In: ICDE (2006)
Li, C., Ling, T.W., Hu, M.: Efficient updates in dynamic XML data: from binary string to quaternary string. VLDB J. 17(3), 573–601 (2008)
Li, Q., Moon, B.: Indexing and querying XML data for regular path expressions. In: VLDB, pp. 361–370 (2001)
Mehta, D.P., Sahni, S.: Handbook of Data structures and Applications. CRC Press, Boca Raton (2004)
Min, J.-K., Lee, J., Chung, C.-W.: An efficient XML encoding and labeling method for query processing and updating on dynamic XML data. JSS 82(3), 503–515 (2009)
Neumann, T.: Efficiently compiling efficient query plans for modern hardware. In: VLDB, pp. 539–550 (2011)
O’Neil, P., O’Neil, E., Pal, S., Cseri, I., Schaller, G., Westbury, N.: ORDPATHs: insert-friendly XML node labels. In: SIGMOD, pp. 903–908 (2004)
SAP SE: Solutions—data management—SAP HANA Vora, Dec 2015. http://go.sap.com/germany/product/data-mgmt/hana-vora-hadoop.html
Sasaki, S., Araki, T.: Modularizing B\(^+\)-trees: three-level B\(^+\)-trees work fine. In: ADMS, pp. 46–57 (2013)
Silberstein, A., He, H., Yi, K., Yang, J.: BOXes: efficient maintenance of order-based labeling for dynamic XML data. In: ICDE, pp. 285–296 (2005)
Tatarinov, I., Viglas, S., Beyer, K., Shanmugasundaram, J., Shekita, E., Zhang, C.: Storing and querying ordered XML using a relational database system. In: SIGMOD, pp. 204–215 (2002)
Xu, L., Ling, T.W., Wu, H., Bao, Z.: DDE: From Dewey to a fully dynamic XML labeling scheme. In: SIGMOD, pp. 719–730 (2009)
Yun, J.-H., Chung, C.-W.: Dynamic interval-based labeling scheme for efficient XML query and update processing. JSS 81(1), 56–70 (2008)
Zezula, P., Mandreoli, F., Martoglia, R.: Tree signatures and unordered XML pattern matching. In: SOFSEM, pp. 122–139 (2004)
Zhang, C., Naughton, J., DeWitt, D., Luo, Q., Lohman, G.: On supporting containment queries in relational database management systems. In: SIGMOD, pp. 425–436 (2001)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Finis, J., Brunel, R., Kemper, A. et al. Order Indexes: supporting highly dynamic hierarchical data in relational main-memory database systems. The VLDB Journal 26, 55–80 (2017). https://doi.org/10.1007/s00778-016-0436-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00778-016-0436-3